| From 938aedff5eabbebcb084ff05f91f1576cfb204da Mon Sep 17 00:00:00 2001 |
| From: Kirill Tkhai <tkhai@yandex.ru> |
| Date: Fri, 2 Aug 2013 19:23:18 +0400 |
| Subject: sparc64: Fix ITLB handler of null page |
| |
| From: Kirill Tkhai <tkhai@yandex.ru> |
| |
| [ Upstream commit 1c2696cdaad84580545a2e9c0879ff597880b1a9 ] |
| |
| 1)Use kvmap_itlb_longpath instead of kvmap_dtlb_longpath. |
| |
| 2)Handle page #0 only, don't handle page #1: bleu -> blu |
| |
| (KERNBASE is 0x400000, so #1 does not exist too. But everything |
| is possible in the future. Fix to not to have problems later.) |
| |
| 3)Remove unused kvmap_itlb_nonlinear. |
| |
| Signed-off-by: Kirill Tkhai <tkhai@yandex.ru> |
| CC: David Miller <davem@davemloft.net> |
| Signed-off-by: David S. Miller <davem@davemloft.net> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| --- |
| arch/sparc/kernel/ktlb.S | 3 +-- |
| 1 file changed, 1 insertion(+), 2 deletions(-) |
| |
| --- a/arch/sparc/kernel/ktlb.S |
| +++ b/arch/sparc/kernel/ktlb.S |
| @@ -25,11 +25,10 @@ kvmap_itlb: |
| */ |
| kvmap_itlb_4v: |
| |
| -kvmap_itlb_nonlinear: |
| /* Catch kernel NULL pointer calls. */ |
| sethi %hi(PAGE_SIZE), %g5 |
| cmp %g4, %g5 |
| - bleu,pn %xcc, kvmap_dtlb_longpath |
| + blu,pn %xcc, kvmap_itlb_longpath |
| nop |
| |
| KERN_TSB_LOOKUP_TL1(%g4, %g6, %g5, %g1, %g2, %g3, kvmap_itlb_load) |