um: Fix PTRACE_POKEUSER on x86_64
authorRichard Weinberger <richard@nod.at>
Fri, 31 Mar 2017 22:41:57 +0000 (00:41 +0200)
committerBen Hutchings <ben@decadent.org.uk>
Sat, 26 Aug 2017 01:14:05 +0000 (02:14 +0100)
commitc58b2c46505568ac70aadffc338a7a90272c6d4b
tree1e7e5c4e11e248b6f2b1b9437fefef80e2c6a0ab
parentc5de619ea4ec388a580426d9bbd5e29fed5cd0b3
um: Fix PTRACE_POKEUSER on x86_64

commit 9abc74a22d85ab29cef9896a2582a530da7e79bf upstream.

This is broken since ever but sadly nobody noticed.
Recent versions of GDB set DR_CONTROL unconditionally and
UML dies due to a heap corruption. It turns out that
the PTRACE_POKEUSER was copy&pasted from i386 and assumes
that addresses are 4 bytes long.

Fix that by using 8 as address size in the calculation.

Reported-by: jie cao <cj3054@gmail.com>
Signed-off-by: Richard Weinberger <richard@nod.at>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
arch/x86/um/ptrace_64.c