Revert "kernel: work around CONFIG_CPU_SW_DOMAIN_PAN breakage on ARM11 MPCore"
This reverts commit r48335 The workaround is incomplete and cannot cover all possible cases. The only real solution to this problem is to disable this feature on ARM11MPcore entirely. Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 48460
This commit is contained in:
parent
eb39f41ffd
commit
84a7bc3d57
@ -1,44 +0,0 @@
|
||||
From: Felix Fietkau <nbd@openwrt.org>
|
||||
Date: Tue, 19 Jan 2016 00:18:09 +0100
|
||||
Subject: [PATCH] ARM: work around CONFIG_CPU_SW_DOMAIN_PAN breakage on ARM11
|
||||
MPCore
|
||||
|
||||
Patch taken from http://www.spinics.net/lists/arm-kernel/msg450888.html
|
||||
|
||||
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
|
||||
---
|
||||
|
||||
--- a/arch/arm/kernel/smp_tlb.c
|
||||
+++ b/arch/arm/kernel/smp_tlb.c
|
||||
@@ -9,6 +9,7 @@
|
||||
*/
|
||||
#include <linux/preempt.h>
|
||||
#include <linux/smp.h>
|
||||
+#include <linux/uaccess.h>
|
||||
|
||||
#include <asm/smp_plat.h>
|
||||
#include <asm/tlbflush.h>
|
||||
@@ -40,8 +41,11 @@ static inline void ipi_flush_tlb_mm(void
|
||||
static inline void ipi_flush_tlb_page(void *arg)
|
||||
{
|
||||
struct tlb_args *ta = (struct tlb_args *)arg;
|
||||
+ unsigned int __ua_flags = uaccess_save_and_enable();
|
||||
|
||||
local_flush_tlb_page(ta->ta_vma, ta->ta_start);
|
||||
+
|
||||
+ uaccess_restore(__ua_flags);
|
||||
}
|
||||
|
||||
static inline void ipi_flush_tlb_kernel_page(void *arg)
|
||||
@@ -54,8 +58,11 @@ static inline void ipi_flush_tlb_kernel_
|
||||
static inline void ipi_flush_tlb_range(void *arg)
|
||||
{
|
||||
struct tlb_args *ta = (struct tlb_args *)arg;
|
||||
+ unsigned int __ua_flags = uaccess_save_and_enable();
|
||||
|
||||
local_flush_tlb_range(ta->ta_vma, ta->ta_start, ta->ta_end);
|
||||
+
|
||||
+ uaccess_restore(__ua_flags);
|
||||
}
|
||||
|
||||
static inline void ipi_flush_tlb_kernel_range(void *arg)
|
Loading…
Reference in New Issue
Block a user