]> granicus.if.org Git - strace/blobdiff - kexec.c
io: change size types from unsigned long to kernel_ureg_t
[strace] / kexec.c
diff --git a/kexec.c b/kexec.c
index d7054993122e1374ac3f1ef3df78555b96ff6e25..a1f0ccbbad9335b75bf7e23c46b27280fa8b5164 100644 (file)
--- a/kexec.c
+++ b/kexec.c
@@ -63,7 +63,7 @@ print_seg(struct tcb *tcp, void *elem_buf, size_t elem_size, void *data)
 }
 
 static void
-print_kexec_segments(struct tcb *tcp, const unsigned long addr,
+print_kexec_segments(struct tcb *const tcp, const kernel_ureg_t addr,
                     const unsigned long len)
 {
        if (len > KEXEC_SEGMENT_MAX) {
@@ -81,16 +81,15 @@ print_kexec_segments(struct tcb *tcp, const unsigned long addr,
 SYS_FUNC(kexec_load)
 {
        /* entry, nr_segments */
-       printaddr(widen_to_ulong(tcp->u_arg[0]));
-       tprintf(", %lu, ", widen_to_ulong(tcp->u_arg[1]));
+       printaddr(tcp->u_arg[0]);
+       tprintf(", %lu, ", tcp->u_arg[1]);
 
        /* segments */
-       print_kexec_segments(tcp, widen_to_ulong(tcp->u_arg[2]),
-                            widen_to_ulong(tcp->u_arg[1]));
+       print_kexec_segments(tcp, tcp->u_arg[2], tcp->u_arg[1]);
        tprints(", ");
 
        /* flags */
-       unsigned long n = widen_to_ulong(tcp->u_arg[3]);
+       unsigned long n = tcp->u_arg[3];
        printxval_long(kexec_arch_values, n & KEXEC_ARCH_MASK, "KEXEC_ARCH_???");
        n &= ~(unsigned long) KEXEC_ARCH_MASK;
        if (n) {
@@ -114,7 +113,7 @@ SYS_FUNC(kexec_file_load)
        /* cmdline_len */
        tprintf("%" PRI_klu ", ", getarg_klu(tcp, 2));
        /* cmdline */
-       printstr(tcp, tcp->u_arg[3], tcp->u_arg[2]);
+       printstrn(tcp, tcp->u_arg[3], tcp->u_arg[2]);
        tprints(", ");
        /* flags */
        printflags64(kexec_file_load_flags, getarg_klu(tcp, 4), "KEXEC_FILE_???");