Hi Gui, (2014/07/30 15:03), Satoru Takeuchi wrote: > Hi Gui, > > (2014/07/17 11:40), Gui Hecheng wrote: >> o Return 0 to indicate success, >> when detected errors were corrected during scrubbing. >> P.s. This is also to facilitate scripting when return value >> is to be checked. >> o Warn the users if there are uncorrectable errors detected. >> >> Signed-off-by: Gui Hecheng <guihc.f...@cn.fujitsu.com> >> --- >> cmds-scrub.c | 13 ++++++++----- >> 1 file changed, 8 insertions(+), 5 deletions(-) >> >> diff --git a/cmds-scrub.c b/cmds-scrub.c >> index 5265a2b..f9e2b40 100644 >> --- a/cmds-scrub.c >> +++ b/cmds-scrub.c >> @@ -1514,14 +1514,17 @@ out: >> } >> close_file_or_dir(fdmnt, dirstream); >> >> - if (nothing_to_resume) >> - return 2; >> if (err) >> return 1; >> - if (e_correctable) >> + if (nothing_to_resume) >> + return 2; >> + if (e_uncorrectable) { >> + ERR(!do_quiet, "ERROR: There are uncorrectable errors.\n"); >> return 3; >> - if (e_uncorrectable) >> - return 4; >> + } >> + if (e_correctable) >> + ERR(!do_quiet, "WARNING: errors detected during scrubbing, >> corrected.\n"); >> + > > 1. ERR() messages are not necessary since start command > reports its status in the middle of scrub_start(). > It includes both the number of correctable/uncorrectable errors. > > 2. It prints messages even if this program runs as foreground mode. > Checking do_print is necessary. > > 3. Whether correctable/uncorrectable error exists in a file system > is not related to the exist status of scrub. The role of this > program is > > a) reading all data from all devices and verify checksums, and > b) correct checksum errors "if possible". > > So, I consider scrub only returns error if this program itself > failed to finish.
Sorry, I understood what you said. It's no problem to exit with error codes to detect whether correctable/uncorrectable errors happen or not. Sorry for noise. Thanks, Satoru > > Thanks, > Satoru > >> return 0; >> } >> >> > > -- > To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in > the body of a message to majord...@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html > -- To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html