Message ID | 20240417161646.963612-3-aalbersh@redhat.com (mailing list archive) |
---|---|
State | Superseded, archived |
Headers | show |
Series | xfsprogs random fixes found by Coverity scan | expand |
Looks good:
Reviewed-by: Christoph Hellwig <hch@lst.de>
> extern int ag_stride; > diff --git a/repair/progress.c b/repair/progress.c > index f6c4d988444e..71042fbbfa4c 100644 > --- a/repair/progress.c > +++ b/repair/progress.c > @@ -268,12 +268,13 @@ progress_rpt_thread (void *p) > _("\t- %02d:%02d:%02d: Phase %d: elapsed time %s - processed %d %s per minute\n"), > tmp->tm_hour, tmp->tm_min, tmp->tm_sec, > current_phase, duration(elapsed, msgbuf), > - (int) (60*sum/(elapsed)), *msgp->format->type); > + 60 * sum / elapsed, *msgp->format->type); ^ Type differs from print format. Carlos > do_log( > _("\t- %02d:%02d:%02d: Phase %d: %" PRIu64 "%% done - estimated remaining time %s\n"), > tmp->tm_hour, tmp->tm_min, tmp->tm_sec, > current_phase, percent, > - duration((int) ((*msgp->total - sum) * (elapsed)/sum), msgbuf)); > + duration((*msgp->total - sum) * elapsed / sum, > + msgbuf)); > } > > if (pthread_mutex_unlock(&msgp->mutex) != 0) { > @@ -420,7 +421,7 @@ timestamp(int end, int phase, char *buf) > } > > char * > -duration(int length, char *buf) > +duration(time_t length, char *buf) > { > int sum; > int weeks; > diff --git a/repair/progress.h b/repair/progress.h > index 2c1690db1b17..9575df164aa0 100644 > --- a/repair/progress.h > +++ b/repair/progress.h > @@ -38,7 +38,7 @@ extern void summary_report(void); > extern int set_progress_msg(int report, uint64_t total); > extern uint64_t print_final_rpt(void); > extern char *timestamp(int end, int phase, char *buf); > -extern char *duration(int val, char *buf); > +extern char *duration(time_t val, char *buf); > extern int do_parallel; > > #define PROG_RPT_INC(a,b) if (ag_stride && prog_rpt_done) (a) += (b) > diff --git a/repair/xfs_repair.c b/repair/xfs_repair.c > index ba9d28330d82..2ceea87dc57d 100644 > --- a/repair/xfs_repair.c > +++ b/repair/xfs_repair.c > @@ -377,7 +377,7 @@ process_args(int argc, char **argv) > do_prefetch = 0; > break; > case 't': > - report_interval = (int)strtol(optarg, NULL, 0); > + report_interval = strtol(optarg, NULL, 0); > break; > case 'e': > report_corrected = true; > -- > 2.42.0 > >
diff --git a/repair/globals.c b/repair/globals.c index c40849853b8f..7c819d70a0ab 100644 --- a/repair/globals.c +++ b/repair/globals.c @@ -116,7 +116,7 @@ uint32_t sb_width; struct aglock *ag_locks; struct aglock rt_lock; -int report_interval; +time_t report_interval; uint64_t *prog_rpt_done; int ag_stride; diff --git a/repair/globals.h b/repair/globals.h index 89f1b0e078f3..2d05c8b2c00f 100644 --- a/repair/globals.h +++ b/repair/globals.h @@ -160,7 +160,7 @@ struct aglock { extern struct aglock *ag_locks; extern struct aglock rt_lock; -extern int report_interval; +extern time_t report_interval; extern uint64_t *prog_rpt_done; extern int ag_stride; diff --git a/repair/progress.c b/repair/progress.c index f6c4d988444e..71042fbbfa4c 100644 --- a/repair/progress.c +++ b/repair/progress.c @@ -268,12 +268,13 @@ progress_rpt_thread (void *p) _("\t- %02d:%02d:%02d: Phase %d: elapsed time %s - processed %d %s per minute\n"), tmp->tm_hour, tmp->tm_min, tmp->tm_sec, current_phase, duration(elapsed, msgbuf), - (int) (60*sum/(elapsed)), *msgp->format->type); + 60 * sum / elapsed, *msgp->format->type); do_log( _("\t- %02d:%02d:%02d: Phase %d: %" PRIu64 "%% done - estimated remaining time %s\n"), tmp->tm_hour, tmp->tm_min, tmp->tm_sec, current_phase, percent, - duration((int) ((*msgp->total - sum) * (elapsed)/sum), msgbuf)); + duration((*msgp->total - sum) * elapsed / sum, + msgbuf)); } if (pthread_mutex_unlock(&msgp->mutex) != 0) { @@ -420,7 +421,7 @@ timestamp(int end, int phase, char *buf) } char * -duration(int length, char *buf) +duration(time_t length, char *buf) { int sum; int weeks; diff --git a/repair/progress.h b/repair/progress.h index 2c1690db1b17..9575df164aa0 100644 --- a/repair/progress.h +++ b/repair/progress.h @@ -38,7 +38,7 @@ extern void summary_report(void); extern int set_progress_msg(int report, uint64_t total); extern uint64_t print_final_rpt(void); extern char *timestamp(int end, int phase, char *buf); -extern char *duration(int val, char *buf); +extern char *duration(time_t val, char *buf); extern int do_parallel; #define PROG_RPT_INC(a,b) if (ag_stride && prog_rpt_done) (a) += (b) diff --git a/repair/xfs_repair.c b/repair/xfs_repair.c index ba9d28330d82..2ceea87dc57d 100644 --- a/repair/xfs_repair.c +++ b/repair/xfs_repair.c @@ -377,7 +377,7 @@ process_args(int argc, char **argv) do_prefetch = 0; break; case 't': - report_interval = (int)strtol(optarg, NULL, 0); + report_interval = strtol(optarg, NULL, 0); break; case 'e': report_corrected = true;