Explorar el Código

qemu-img: Document check exit codes

The exit code 63 (check not supported by image format) was not even
documented in the comment above the check command in the source code;
add it, as it does indeed seem useful.

Also, document all of check's exit codes in the manpage.

Signed-off-by: Max Reitz <mreitz@redhat.com>
Reported-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Reviewed-by: Benoit Canet <benoit@irqsave.net>
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Max Reitz hace 11 años
padre
commit
d6635c4dbb
Se han modificado 2 ficheros con 28 adiciones y 4 borrados
  1. 5 4
      qemu-img.c
  2. 23 0
      qemu-img.texi

+ 5 - 4
qemu-img.c

@@ -580,10 +580,11 @@ static int collect_image_check(BlockDriverState *bs,
 /*
 /*
  * Checks an image for consistency. Exit codes:
  * Checks an image for consistency. Exit codes:
  *
  *
- * 0 - Check completed, image is good
- * 1 - Check not completed because of internal errors
- * 2 - Check completed, image is corrupted
- * 3 - Check completed, image has leaked clusters, but is good otherwise
+ *  0 - Check completed, image is good
+ *  1 - Check not completed because of internal errors
+ *  2 - Check completed, image is corrupted
+ *  3 - Check completed, image has leaked clusters, but is good otherwise
+ * 63 - Checks are not supported by the image format
  */
  */
 static int img_check(int argc, char **argv)
 static int img_check(int argc, char **argv)
 {
 {

+ 23 - 0
qemu-img.texi

@@ -126,6 +126,29 @@ wrong fix or hiding corruption that has already occurred.
 Only the formats @code{qcow2}, @code{qed} and @code{vdi} support
 Only the formats @code{qcow2}, @code{qed} and @code{vdi} support
 consistency checks.
 consistency checks.
 
 
+In case the image does not have any inconsistencies, check exits with @code{0}.
+Other exit codes indicate the kind of inconsistency found or if another error
+occurred. The following table summarizes all exit codes of the check subcommand:
+
+@table @option
+
+@item 0
+Check completed, the image is (now) consistent
+@item 1
+Check not completed because of internal errors
+@item 2
+Check completed, image is corrupted
+@item 3
+Check completed, image has leaked clusters, but is not corrupted
+@item 63
+Checks are not supported by the image format
+
+@end table
+
+If @code{-r} is specified, exit codes representing the image state refer to the
+state after (the attempt at) repairing it. That is, a successful @code{-r all}
+will yield the exit code 0, independently of the image state before.
+
 @item create [-f @var{fmt}] [-o @var{options}] @var{filename} [@var{size}]
 @item create [-f @var{fmt}] [-o @var{options}] @var{filename} [@var{size}]
 
 
 Create the new disk image @var{filename} of size @var{size} and format
 Create the new disk image @var{filename} of size @var{size} and format