powerpc: Rework set_dabr so it can take a DABRX value as well
authorMichael Neuling <mikey@neuling.org>
Thu, 6 Sep 2012 21:24:56 +0000 (21:24 +0000)
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>
Sun, 9 Sep 2012 23:59:10 +0000 (09:59 +1000)
commit4474ef055c5d8cb8eaf002d69e49af71e3aa3a88
treee57b99bfa78d7c3faf4125ab4a08f17fed2c41d8
parent3ab96a02e829131c19db8ed99239289acdb4e3dc
powerpc: Rework set_dabr so it can take a DABRX value as well

Rework set_dabr to take a DABRX value as well.

Both the pseries and PS3 hypervisors do some checks on the DABRX
values that are passed in the hcall.  This patch stops bogus values
from being passed to hypervisor.  Also, in the case where we are
clearing the breakpoint, where DABR and DABRX are zero, we modify the
DABRX value to make it valid so that the hcall won't fail.

Signed-off-by: Michael Neuling <mikey@neuling.org>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
14 files changed:
arch/powerpc/include/asm/debug.h
arch/powerpc/include/asm/hw_breakpoint.h
arch/powerpc/include/asm/machdep.h
arch/powerpc/include/asm/processor.h
arch/powerpc/include/asm/reg.h
arch/powerpc/kernel/hw_breakpoint.c
arch/powerpc/kernel/process.c
arch/powerpc/kernel/ptrace.c
arch/powerpc/kernel/signal.c
arch/powerpc/platforms/cell/beat.c
arch/powerpc/platforms/cell/beat.h
arch/powerpc/platforms/ps3/setup.c
arch/powerpc/platforms/pseries/setup.c
arch/powerpc/xmon/xmon.c