[PATCH] powerpc: Add a is_kernel_addr() macro
There's a bunch of code that compares an address with KERNELBASE to see if it's a "kernel address", ie. >= KERNELBASE. The proper test is actually to compare with PAGE_OFFSET, since we're going to change KERNELBASE soon. So replace all of them with an is_kernel_addr() macro that does that. Signed-off-by: Michael Ellerman <michael@ellerman.id.au> Signed-off-by: Paul Mackerras <paulus@samba.org>
This commit is contained in:
committed by
Paul Mackerras
parent
cd0ca2ce4b
commit
51fae6de24
@ -252,7 +252,7 @@ static unsigned long get_pc(struct pt_regs *regs)
|
||||
return (unsigned long)__va(pc);
|
||||
|
||||
/* Not sure where we were */
|
||||
if (pc < KERNELBASE)
|
||||
if (!is_kernel_addr(pc))
|
||||
/* function descriptor madness */
|
||||
return *((unsigned long *)kernel_unknown_bucket);
|
||||
|
||||
@ -264,7 +264,7 @@ static int get_kernel(unsigned long pc)
|
||||
int is_kernel;
|
||||
|
||||
if (!mmcra_has_sihv) {
|
||||
is_kernel = (pc >= KERNELBASE);
|
||||
is_kernel = is_kernel_addr(pc);
|
||||
} else {
|
||||
unsigned long mmcra = mfspr(SPRN_MMCRA);
|
||||
is_kernel = ((mmcra & MMCRA_SIPR) == 0);
|
||||
|
Reference in New Issue
Block a user