seg = elem_buf;
}
- tprints("{");
+ tprints("{buf=");
printaddr(seg[0]);
- tprintf(", %lu, ", seg[1]);
+ tprintf(", bufsz=%lu, mem=", seg[1]);
printaddr(seg[2]);
- tprintf(", %lu}", seg[3]);
+ tprintf(", memsz=%lu}", seg[3]);
return true;
}
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) {
/* flags */
unsigned long n = tcp->u_arg[3];
printxval_long(kexec_arch_values, n & KEXEC_ARCH_MASK, "KEXEC_ARCH_???");
- n &= ~KEXEC_ARCH_MASK;
+ n &= ~(unsigned long) KEXEC_ARCH_MASK;
if (n) {
tprints("|");
printflags_long(kexec_load_flags, n, "KEXEC_???");
printfd(tcp, tcp->u_arg[1]);
tprints(", ");
/* cmdline_len */
- tprintf("%lu, ", tcp->u_arg[2]);
+ 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 */
- printflags_long(kexec_file_load_flags, tcp->u_arg[4], "KEXEC_FILE_???");
+ printflags64(kexec_file_load_flags, getarg_klu(tcp, 4), "KEXEC_FILE_???");
return RVAL_DECODED;
}