diff options
author | Roland McGrath <roland@redhat.com> | 2010-09-14 21:22:58 +0200 |
---|---|---|
committer | H. Peter Anvin <hpa@linux.intel.com> | 2010-09-15 01:08:47 +0200 |
commit | eefdca043e8391dcd719711716492063030b55ac (patch) | |
tree | 38d41d04567876204017fe9618908d7550a579e4 /Documentation/sgi-ioc4.txt | |
parent | x86-64, compat: Test %rax for the syscall number, not %eax (diff) | |
download | linux-eefdca043e8391dcd719711716492063030b55ac.tar.xz linux-eefdca043e8391dcd719711716492063030b55ac.zip |
x86-64, compat: Retruncate rax after ia32 syscall entry tracing
In commit d4d6715, we reopened an old hole for a 64-bit ptracer touching a
32-bit tracee in system call entry. A %rax value set via ptrace at the
entry tracing stop gets used whole as a 32-bit syscall number, while we
only check the low 32 bits for validity.
Fix it by truncating %rax back to 32 bits after syscall_trace_enter,
in addition to testing the full 64 bits as has already been added.
Reported-by: Ben Hawkes <hawkes@sota.gen.nz>
Signed-off-by: Roland McGrath <roland@redhat.com>
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
Diffstat (limited to 'Documentation/sgi-ioc4.txt')
0 files changed, 0 insertions, 0 deletions