diff options
author | Kirill Tkhai <tkhai@yandex.ru> | 2013-08-02 11:23:18 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2013-08-02 20:29:06 -0400 |
commit | 1c2696cdaad84580545a2e9c0879ff597880b1a9 (patch) | |
tree | c55e54277509649f3e45460a7d96dc5930ef8025 /arch/sparc/kernel/ktlb.S | |
parent | 21af8107f27878813d0364733c0b08813c2c192a (diff) |
sparc64: Fix ITLB handler of null page
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>
Diffstat (limited to 'arch/sparc/kernel/ktlb.S')
-rw-r--r-- | arch/sparc/kernel/ktlb.S | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/arch/sparc/kernel/ktlb.S b/arch/sparc/kernel/ktlb.S index 0746e5e32b37..fde5a419cf27 100644 --- a/arch/sparc/kernel/ktlb.S +++ b/arch/sparc/kernel/ktlb.S | |||
@@ -25,11 +25,10 @@ kvmap_itlb: | |||
25 | */ | 25 | */ |
26 | kvmap_itlb_4v: | 26 | kvmap_itlb_4v: |
27 | 27 | ||
28 | kvmap_itlb_nonlinear: | ||
29 | /* Catch kernel NULL pointer calls. */ | 28 | /* Catch kernel NULL pointer calls. */ |
30 | sethi %hi(PAGE_SIZE), %g5 | 29 | sethi %hi(PAGE_SIZE), %g5 |
31 | cmp %g4, %g5 | 30 | cmp %g4, %g5 |
32 | bleu,pn %xcc, kvmap_dtlb_longpath | 31 | blu,pn %xcc, kvmap_itlb_longpath |
33 | nop | 32 | nop |
34 | 33 | ||
35 | KERN_TSB_LOOKUP_TL1(%g4, %g6, %g5, %g1, %g2, %g3, kvmap_itlb_load) | 34 | KERN_TSB_LOOKUP_TL1(%g4, %g6, %g5, %g1, %g2, %g3, kvmap_itlb_load) |