diff options
author | Mohan Kumar M <mohan@in.ibm.com> | 2007-03-21 11:21:32 +0530 |
---|---|---|
committer | Paul Mackerras <paulus@samba.org> | 2007-03-22 15:01:43 +1100 |
commit | b4aea36b7956eeebfc56314ce0944db1441255ce (patch) | |
tree | a0c84f25e1f5a2ef0af624871e8f892654fd79a4 /arch/powerpc/platforms/pseries/lpar.c | |
parent | f144e7c7272bf527c380bffaa5e789dc28a09d8d (diff) | |
download | lwn-b4aea36b7956eeebfc56314ce0944db1441255ce.tar.gz lwn-b4aea36b7956eeebfc56314ce0944db1441255ce.zip |
[POWERPC] Avoid hypervisor statistics calculation in real mode
kexec invokes plpar_hcall hypervisor call in real mode. plpar_hcall
refers to per cpu variables for accounting hypervisor statistics.
These variables may not be in the RMO region, so accesses to them
in real mode may result in a data storage exception.
This fixes this problem by using a new plpar_hcall_raw function which
does not update the hypervisor call statistics. Thanks to Anton for
suggesting this idea.
Signed-off-by: Mohan Kumar M <mohan@in.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Diffstat (limited to 'arch/powerpc/platforms/pseries/lpar.c')
-rw-r--r-- | arch/powerpc/platforms/pseries/lpar.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/powerpc/platforms/pseries/lpar.c b/arch/powerpc/platforms/pseries/lpar.c index 7496005566ef..843ee9643211 100644 --- a/arch/powerpc/platforms/pseries/lpar.c +++ b/arch/powerpc/platforms/pseries/lpar.c @@ -378,7 +378,7 @@ static void pSeries_lpar_hptab_clear(void) /* TODO: Use bulk call */ for (i = 0; i < hpte_count; i++) - plpar_pte_remove(0, i, 0, &dummy1, &dummy2); + plpar_pte_remove_raw(0, i, 0, &dummy1, &dummy2); } /* |