diff options
author | Michael Ellerman <michael@ellerman.id.au> | 2005-12-04 02:39:15 -0500 |
---|---|---|
committer | Paul Mackerras <paulus@samba.org> | 2006-01-08 22:51:50 -0500 |
commit | 51fae6de24da57bc6cdaa1b253595c3513ecbf2d (patch) | |
tree | 27df7f07270fb79eae44783331faeb3af3d313ab /arch/powerpc/mm/stab.c | |
parent | cd0ca2ce4b2f4a5132e7e230be8a510755c20870 (diff) |
[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>
Diffstat (limited to 'arch/powerpc/mm/stab.c')
-rw-r--r-- | arch/powerpc/mm/stab.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/arch/powerpc/mm/stab.c b/arch/powerpc/mm/stab.c index 51e7951414e5..a18dab0d6b12 100644 --- a/arch/powerpc/mm/stab.c +++ b/arch/powerpc/mm/stab.c | |||
@@ -122,7 +122,7 @@ static int __ste_allocate(unsigned long ea, struct mm_struct *mm) | |||
122 | unsigned long offset; | 122 | unsigned long offset; |
123 | 123 | ||
124 | /* Kernel or user address? */ | 124 | /* Kernel or user address? */ |
125 | if (ea >= KERNELBASE) { | 125 | if (is_kernel_addr(ea)) { |
126 | vsid = get_kernel_vsid(ea); | 126 | vsid = get_kernel_vsid(ea); |
127 | } else { | 127 | } else { |
128 | if ((ea >= TASK_SIZE_USER64) || (! mm)) | 128 | if ((ea >= TASK_SIZE_USER64) || (! mm)) |
@@ -133,7 +133,7 @@ static int __ste_allocate(unsigned long ea, struct mm_struct *mm) | |||
133 | 133 | ||
134 | stab_entry = make_ste(get_paca()->stab_addr, GET_ESID(ea), vsid); | 134 | stab_entry = make_ste(get_paca()->stab_addr, GET_ESID(ea), vsid); |
135 | 135 | ||
136 | if (ea < KERNELBASE) { | 136 | if (!is_kernel_addr(ea)) { |
137 | offset = __get_cpu_var(stab_cache_ptr); | 137 | offset = __get_cpu_var(stab_cache_ptr); |
138 | if (offset < NR_STAB_CACHE_ENTRIES) | 138 | if (offset < NR_STAB_CACHE_ENTRIES) |
139 | __get_cpu_var(stab_cache[offset++]) = stab_entry; | 139 | __get_cpu_var(stab_cache[offset++]) = stab_entry; |
@@ -190,7 +190,7 @@ void switch_stab(struct task_struct *tsk, struct mm_struct *mm) | |||
190 | entry++, ste++) { | 190 | entry++, ste++) { |
191 | unsigned long ea; | 191 | unsigned long ea; |
192 | ea = ste->esid_data & ESID_MASK; | 192 | ea = ste->esid_data & ESID_MASK; |
193 | if (ea < KERNELBASE) { | 193 | if (!is_kernel_addr(ea)) { |
194 | ste->esid_data = 0; | 194 | ste->esid_data = 0; |
195 | } | 195 | } |
196 | } | 196 | } |