[PATCH] xtensa: always retrieve all syscall arguments
Dmitry V. Levin
ldv at altlinux.org
Mon May 6 23:15:01 UTC 2013
On Mon, May 06, 2013 at 03:17:55PM -0700, Chris Zankel wrote:
> The number of arguments specified in syscallent.h does not include
> registers that are skipped to align 64-bit arguments to even/odd
> register pairs. So, always retrieve all registers used for arguments.
The number of arguments specified in syscallent.h is used for two purposes:
- it is the number of syscall arguments to fetch from registers
(and maybe memory on some architectures);
- it is also the number of syscall arguments to print by printargs
(and in rare cases by other parsers).
Fetching all registers is not the best approach to fix the issue
for two reasons:
- printargs would still print wrong number of arguments;
- on xtensa, every extra argument fetch means extra upeek call.
I'd prefer to have syscallent.h fixed instead.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Size: 198 bytes
Desc: not available
More information about the Strace-devel