]> granicus.if.org Git - strace/commitdiff
block: use PRINT_FIELD_* macros
authorDmitry V. Levin <ldv@altlinux.org>
Thu, 13 Jul 2017 12:38:51 +0000 (12:38 +0000)
committerDmitry V. Levin <ldv@altlinux.org>
Thu, 13 Jul 2017 12:38:51 +0000 (12:38 +0000)
This also fixes output correctness for struct blkpg_ioctl_arg.

* block.c (print_blkpg_req): Use PRINT_FIELD_D and PRINT_FIELD_XVAL.
(block_ioctl): Use PRINT_FIELD_U.
* tests/ioctl_block.c (main): Update expected output.

block.c
tests/ioctl_block.c

diff --git a/block.c b/block.c
index afd7098010c458930be41e661c79fbb61b621798..99b76dac73f59d0abb4402c2ccf96a7f255a14bd 100644 (file)
--- a/block.c
+++ b/block.c
@@ -125,16 +125,15 @@ print_blkpg_req(struct tcb *tcp, const struct_blkpg_ioctl_arg *blkpg)
 {
        struct_blkpg_partition p;
 
-       tprints("{");
-       printxval(blkpg_ops, blkpg->op, "BLKPG_???");
-
-       tprintf(", flags=%d, datalen=%d, data=",
-               blkpg->flags, blkpg->datalen);
+       PRINT_FIELD_XVAL("{", *blkpg, op, blkpg_ops, "BLKPG_???");
+       PRINT_FIELD_D(", ", *blkpg, flags);
+       PRINT_FIELD_D(", ", *blkpg, datalen);
 
+       tprints(", data=");
        if (!umove_or_printaddr(tcp, ptr_to_kulong(blkpg->data), &p)) {
-               tprintf("{start=%" PRId64 ", length=%" PRId64
-                       ", pno=%d",
-                       p.start, p.length, p.pno);
+               PRINT_FIELD_D("{", p, start);
+               PRINT_FIELD_D(", ", p, length);
+               PRINT_FIELD_D(", ", p, pno);
                PRINT_FIELD_CSTRING(", ", p, devname);
                PRINT_FIELD_CSTRING(", ", p, volname);
                tprints("}");
@@ -239,12 +238,12 @@ MPERS_PRINTER_DECL(int, block_ioctl, struct tcb *const tcp,
                        tprints(", ");
                        if (umove_or_printaddr(tcp, arg, &buts))
                                break;
-                       tprintf("{act_mask=%u, buf_size=%u, "
-                               "buf_nr=%u, start_lba=%" PRIu64 ", "
-                               "end_lba=%" PRIu64 ", pid=%u",
-                               (unsigned)buts.act_mask, buts.buf_size,
-                               buts.buf_nr, buts.start_lba,
-                               buts.end_lba, buts.pid);
+                       PRINT_FIELD_U("{", buts, act_mask);
+                       PRINT_FIELD_U(", ", buts, buf_size);
+                       PRINT_FIELD_U(", ", buts, buf_nr);
+                       PRINT_FIELD_U(", ", buts, start_lba);
+                       PRINT_FIELD_U(", ", buts, end_lba);
+                       PRINT_FIELD_U(", ", buts, pid);
                        return 1;
                } else {
                        struct_blk_user_trace_setup buts;
index e44c4c41ed2f7365b9852a83cd766cb0b33e4ded..0d518643aa92901d697b7297163fc45dff883378 100644 (file)
@@ -154,7 +154,7 @@ main(void)
        blkpg->data = (void *) (unsigned long) 0xcafef00dfffffeedULL;
 
        ioctl(-1, BLKPG, blkpg);
-       printf("ioctl(-1, BLKPG, {%s, flags=%d, datalen=%d"
+       printf("ioctl(-1, BLKPG, {op=%s, flags=%d, datalen=%d"
               ", data=%#lx}) = -1 EBADF (%m)\n",
               "BLKPG_RESIZE_PARTITION", blkpg->flags, blkpg->datalen,
               (unsigned long) blkpg->data);
@@ -169,7 +169,7 @@ main(void)
        blkpg->data = bp;
 
        ioctl(-1, BLKPG, blkpg);
-       printf("ioctl(-1, BLKPG, {%s, flags=%d, datalen=%d"
+       printf("ioctl(-1, BLKPG, {op=%s, flags=%d, datalen=%d"
               ", data={start=%lld, length=%lld, pno=%d"
               ", devname=\"%.*s\", volname=\"%.*s\"}})"
               " = -1 EBADF (%m)\n",