On 4/16/24 11:21 AM, Darrick J. Wong wrote: > On Tue, Apr 16, 2024 at 02:34:27PM +0200, Andrey Albershteyn wrote: >> Convert howlong argument to a time_t as it's truncated to int, but in >> practice this is not an issue as duration will never be this big. >> >> Signed-off-by: Andrey Albershteyn <aalbersh@xxxxxxxxxx> >> --- >> fsr/xfs_fsr.c | 4 ++-- >> 1 file changed, 2 insertions(+), 2 deletions(-) >> >> diff --git a/fsr/xfs_fsr.c b/fsr/xfs_fsr.c >> index 3077d8f4ef46..07f3c8e23deb 100644 >> --- a/fsr/xfs_fsr.c >> +++ b/fsr/xfs_fsr.c >> @@ -72,7 +72,7 @@ static int packfile(char *fname, char *tname, int fd, >> static void fsrdir(char *dirname); >> static int fsrfs(char *mntdir, xfs_ino_t ino, int targetrange); >> static void initallfs(char *mtab); >> -static void fsrallfs(char *mtab, int howlong, char *leftofffile); >> +static void fsrallfs(char *mtab, time_t howlong, char *leftofffile); >> static void fsrall_cleanup(int timeout); >> static int getnextents(int); >> int xfsrtextsize(int fd); >> @@ -387,7 +387,7 @@ initallfs(char *mtab) >> } >> >> static void >> -fsrallfs(char *mtab, int howlong, char *leftofffile) >> +fsrallfs(char *mtab, time_t howlong, char *leftofffile) > > Do you have to convert the printf format specifier too? Hm, yeah. Another approach might be to just change "howlong" to an int and reject run requests of more than 24855 days. ;) *shrug* either way. > Also what happens if there's a parsing error and atoi() fails? Right > now it looks like -t garbage gets you a zero run-time instead of a cli > parsing complaint? That seems like a buglet, but unrelated to the issue at hand, right? So another patch, perhaps (using strtoul instead of atoi which can't actually fail and just returns 0, if I remember correctly.) (sorry about the navel-gazing over coverity here, s3kuret3h folks have prioritized some "findings" and sometimes it's easier to tidy up small issues like this than to argue. Thanks for the reviews!) Thanks, -Eric > --D > >> { >> int fd; >> int error; >> -- >> 2.42.0 >> >> >