There is no compat (and no 32-bit version, ever) for x32 ABI, so
kernel's long type should be used for arguments' values.
The only remaining thing is a pointer to cmdline string, but it is
currently broken on x32 anyway.
* kexec.c (SYS_FUNC(kexec_file_load)): Print the cmdline_len argument
as kernel long, retrieve it via getarg_klu; use printflags64 for
printing the flags argument, retrieve it via getarg_klu.
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]);
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;
}