]> git.proxmox.com Git - mirror_zfs-debian.git/commitdiff
Fix zdb printf format string for ZIL data blocks
authorCyril Plisko <cyril.plisko@mountall.com>
Wed, 12 Sep 2012 09:15:40 +0000 (12:15 +0300)
committerBrian Behlendorf <behlendorf1@llnl.gov>
Thu, 13 Sep 2012 16:02:12 +0000 (09:02 -0700)
Without this fix the zdb printouts of ZIL data blocks look full of FF
due to printf() handling its arguments as int by default.

Here is the output before the fix

                TX_WRITE            len   4136, txg 1093817, seq 149231
                        foid 4242, offset 0, length f68
                        G FFFFFF8EFFFFFF87FFFFFF91FFFFFFCC 1c
FFFFFFAFFFFFFFC9FFFFFFBAZ FFFFFFC3

And the same after the fix

                TX_WRITE            len   4136, txg 1093817, seq 149231
                        foid 4242, offset 0, length f68
                        G 8E8791CC 1cAFC9BAZ C3

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Closes #962

cmd/zdb/zdb_il.c

index 257aa6f4b9b0635c021a4a60eeecc06ec5b78dbc..bc167cee6ad89fabd2e7862538ddbf1bbedadbe2 100644 (file)
@@ -20,6 +20,7 @@
  */
 /*
  * Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
+ * Copyright (c) 2012 Cyril Plisko. All rights reserved.
  * Use is subject to license terms.
  */
 
@@ -172,7 +173,7 @@ zil_prt_rec_write(zilog_t *zilog, int txtype, lr_write_t *lr)
                if (isprint(*data))
                        (void) printf("%c ", *data);
                else
-                       (void) printf("%2X", *data);
+                       (void) printf("%2hhX", *data);
                data++;
        }
        (void) printf("\n");