diff mbox

qemu-img: add special exit code if bdrv_check is not supported

Message ID 1382430415-24844-1-git-send-email-pl@kamp.de
State New
Headers show

Commit Message

Peter Lieven Oct. 22, 2013, 8:26 a.m. UTC
currently it is not possible to distinguish by exitcode if there
has been an error or if bdrv_check is not supported by the image
format. Change the exitcode from 1 to 255 for the latter case.

Signed-off-by: Peter Lieven <pl@kamp.de>
---
 qemu-img.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Eric Blake Oct. 22, 2013, 8:34 a.m. UTC | #1
On 10/22/2013 09:26 AM, Peter Lieven wrote:
> currently it is not possible to distinguish by exitcode if there
> has been an error or if bdrv_check is not supported by the image
> format. Change the exitcode from 1 to 255 for the latter case.

Why 255?  Sure, 'xargs' handles $?=255 differently than most other
status, but in general, $? > 128 starts to be ambiguous with death by
signal (on the other hand, most systems stop at 64 signals rather than
128).  Most applications that use differentiated exit status just use 1
and 2, rather than 1 and 255.

> 
> Signed-off-by: Peter Lieven <pl@kamp.de>
> ---
>  qemu-img.c |    2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)

But I don't care strongly enough to reject this, so if no one else
complains about the choice:
Reviewed-by: Eric Blake <eblake@redhat.com>

> 
> diff --git a/qemu-img.c b/qemu-img.c
> index 9fb3016..163aa3f 100644
> --- a/qemu-img.c
> +++ b/qemu-img.c
> @@ -609,7 +609,7 @@ static int img_check(int argc, char **argv)
>          if (output_format == OFORMAT_HUMAN) {
>              error_report("This image format does not support checks");
>          }
> -        ret = 1;
> +        ret = 255;
>          goto fail;
>      }
>  
>
Peter Lieven Oct. 22, 2013, 8:36 a.m. UTC | #2
On 22.10.2013 10:34, Eric Blake wrote:
> On 10/22/2013 09:26 AM, Peter Lieven wrote:
>> currently it is not possible to distinguish by exitcode if there
>> has been an error or if bdrv_check is not supported by the image
>> format. Change the exitcode from 1 to 255 for the latter case.
> Why 255?  Sure, 'xargs' handles $?=255 differently than most other
> status, but in general, $? > 128 starts to be ambiguous with death by
> signal (on the other hand, most systems stop at 64 signals rather than
> 128).  Most applications that use differentiated exit status just use 1
> and 2, rather than 1 and 255.
I would also be fine with 63. Someone started to make some
choices for check->leaks, check->corruptions using 2,3, ...
I wanted to avoid conflicts if someone adds a 4,5,6 ...

Peter
diff mbox

Patch

diff --git a/qemu-img.c b/qemu-img.c
index 9fb3016..163aa3f 100644
--- a/qemu-img.c
+++ b/qemu-img.c
@@ -609,7 +609,7 @@  static int img_check(int argc, char **argv)
         if (output_format == OFORMAT_HUMAN) {
             error_report("This image format does not support checks");
         }
-        ret = 1;
+        ret = 255;
         goto fail;
     }