| To: | linux-mips@linux-mips.org, ralf@linux-mips.org |
|---|---|
| Subject: | mips64 LOAD_KPTE2 fix |
| From: | Atsushi Nemoto <anemo@mba.ocn.ne.jp> |
| Date: | Mon, 02 Jun 2003 20:14:53 +0900 (JST) |
| Organization: | TOSHIBA Personal Computer System Corporation |
| Original-recipient: | rfc822;linux-mips@linux-mips.org |
| Sender: | linux-mips-bounce@linux-mips.org |
If a TLB exception occured on very high address (such as
0xffffffffffffffff), invalid_vmalloc_address should be called but
currently not.
I think it is because LOAD_KPTE2 in arch/mips64/mm/tlbex-r4k.S does
not check overflow of (kptbl + offset). Here is a patch (both 2.4 and
2.5).
diff -u linux-mips-cvs/arch/mips64/mm/tlbex-r4k.S
linux.new/arch/mips64/mm/tlbex-r4k.S
--- linux-mips-cvs/arch/mips64/mm/tlbex-r4k.S Mon Apr 28 09:44:54 2003
+++ linux.new/arch/mips64/mm/tlbex-r4k.S Mon Jun 2 19:44:57 2003
@@ -72,6 +72,8 @@
/*
* Determine that fault address is within vmalloc range.
*/
+ bgez \ptr, \not_vmalloc # check overflow
+ nop
dla \tmp, ekptbl
sltu \tmp, \ptr, \tmp
beqz \tmp, \not_vmalloc # not vmalloc
---
Atsushi Nemoto
|
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| ||
| Previous by Date: | Re: MIPSPro + GCC, Geert Uytterhoeven |
|---|---|
| Next by Date: | Re: mips64 LOAD_KPTE2 fix, Atsushi Nemoto |
| Previous by Thread: | MIPSPro + GCC, Bjorn Hanch Sollie |
| Next by Thread: | Re: mips64 LOAD_KPTE2 fix, Atsushi Nemoto |
| Indexes: | [Date] [Thread] [Top] [All Lists] |