45 lines
1.6 KiB
Diff
45 lines
1.6 KiB
Diff
From 56151e753468e34aeb322af4b0309ab727c97d2e Mon Sep 17 00:00:00 2001
|
|
From: Wufei <fei.wu@windriver.com>
|
|
Date: Wed, 28 Apr 2010 17:42:32 -0400
|
|
Subject: [PATCH] kgdb: don't needlessly skip PAGE_USER test for Fsl booke
|
|
|
|
The bypassing of this test is a leftover from 2.4 vintage
|
|
kernels, and is no longer appropriate, or even used by KGDB.
|
|
Currently KGDB uses probe_kernel_write() for all access to
|
|
memory via the KGDB core, so it can simply be deleted.
|
|
|
|
This fixes CVE-2010-1446.
|
|
|
|
CC: Benjamin Herrenschmidt <benh@kernel.crashing.org>
|
|
CC: Paul Mackerras <paulus@samba.org>
|
|
CC: Kumar Gala <galak@kernel.crashing.org>
|
|
Signed-off-by: Wufei <fei.wu@windriver.com>
|
|
Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
|
|
---
|
|
arch/powerpc/mm/fsl_booke_mmu.c | 5 -----
|
|
1 files changed, 0 insertions(+), 5 deletions(-)
|
|
|
|
diff --git a/arch/powerpc/mm/fsl_booke_mmu.c b/arch/powerpc/mm/fsl_booke_mmu.c
|
|
index c539472..1ce9dd5 100644
|
|
--- a/arch/powerpc/mm/fsl_booke_mmu.c
|
|
+++ b/arch/powerpc/mm/fsl_booke_mmu.c
|
|
@@ -155,15 +155,10 @@ static void settlbcam(int index, unsigned long virt, phys_addr_t phys,
|
|
if (cur_cpu_spec->cpu_features & MMU_FTR_BIG_PHYS)
|
|
TLBCAM[index].MAS7 = (u64)phys >> 32;
|
|
|
|
-#ifndef CONFIG_KGDB /* want user access for breakpoints */
|
|
if (flags & _PAGE_USER) {
|
|
TLBCAM[index].MAS3 |= MAS3_UX | MAS3_UR;
|
|
TLBCAM[index].MAS3 |= ((flags & _PAGE_RW) ? MAS3_UW : 0);
|
|
}
|
|
-#else
|
|
- TLBCAM[index].MAS3 |= MAS3_UX | MAS3_UR;
|
|
- TLBCAM[index].MAS3 |= ((flags & _PAGE_RW) ? MAS3_UW : 0);
|
|
-#endif
|
|
|
|
tlbcam_addrs[index].start = virt;
|
|
tlbcam_addrs[index].limit = virt + size - 1;
|
|
--
|
|
1.7.0.3
|
|
|