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.fnst@xxxxxxxxxxxxxx>
>> ---
>> 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 majordomo@xxxxxxxxxxxxxxx
> 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 majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html