]> granicus.if.org Git - strace/blobdiff - process_vm.c
mem: decode hugetlb page size in mmap flags
[strace] / process_vm.c
index bc9f3aee8480378e949bb8fc98860d5ef900078a..e6c2784b31f540b37830e7287e8d274df5eea1e4 100644 (file)
@@ -1,6 +1,7 @@
 /*
  * Copyright (c) 2012 Denys Vlasenko <vda.linux@googlemail.com>
  * Copyright (c) 2012-2015 Dmitry V. Levin <ldv@altlinux.org>
+ * Copyright (c) 2014-2017 The strace developers.
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -34,43 +35,43 @@ SYS_FUNC(process_vm_readv)
                /* arg 1: pid */
                tprintf("%d, ", (int) tcp->u_arg[0]);
        } else {
-               unsigned long local_iovcnt = tcp->u_arg[2];
-               unsigned long remote_iovcnt = tcp->u_arg[4];
-               unsigned long flags = tcp->u_arg[5];
+               kernel_ulong_t local_iovcnt = tcp->u_arg[2];
+               kernel_ulong_t remote_iovcnt = tcp->u_arg[4];
+               kernel_ulong_t flags = tcp->u_arg[5];
 
                /* arg 2: local iov */
                tprint_iov_upto(tcp, local_iovcnt, tcp->u_arg[1],
                           syserror(tcp) ? IOV_DECODE_ADDR : IOV_DECODE_STR,
                           tcp->u_rval);
                /* arg 3: local iovcnt */
-               tprintf(", %lu, ", local_iovcnt);
+               tprintf(", %" PRI_klu ", ", local_iovcnt);
                /* arg 4: remote iov */
                tprint_iov(tcp, remote_iovcnt, tcp->u_arg[3],
                           IOV_DECODE_ADDR);
                /* arg 5: remote iovcnt */
                /* arg 6: flags */
-               tprintf(", %lu, %lu", remote_iovcnt, flags);
+               tprintf(", %" PRI_klu ", %" PRI_klu, remote_iovcnt, flags);
        }
        return 0;
 }
 
 SYS_FUNC(process_vm_writev)
 {
-       unsigned long local_iovcnt = tcp->u_arg[2];
-       unsigned long remote_iovcnt = tcp->u_arg[4];
-       unsigned long flags = tcp->u_arg[5];
+       kernel_ulong_t local_iovcnt = tcp->u_arg[2];
+       kernel_ulong_t remote_iovcnt = tcp->u_arg[4];
+       kernel_ulong_t flags = tcp->u_arg[5];
 
        /* arg 1: pid */
        tprintf("%d, ", (int) tcp->u_arg[0]);
        /* arg 2: local iov */
        tprint_iov(tcp, local_iovcnt, tcp->u_arg[1], IOV_DECODE_STR);
        /* arg 3: local iovcnt */
-       tprintf(", %lu, ", local_iovcnt);
+       tprintf(", %" PRI_klu ", ", local_iovcnt);
        /* arg 4: remote iov */
        tprint_iov(tcp, remote_iovcnt, tcp->u_arg[3], IOV_DECODE_ADDR);
        /* arg 5: remote iovcnt */
        /* arg 6: flags */
-       tprintf(", %lu, %lu", remote_iovcnt, flags);
+       tprintf(", %" PRI_klu ", %" PRI_klu, remote_iovcnt, flags);
 
        return RVAL_DECODED;
 }