diff options
author | Felix Fietkau <nbd@openwrt.org> | 2016-01-23 18:02:55 +0000 |
---|---|---|
committer | Felix Fietkau <nbd@openwrt.org> | 2016-01-23 18:02:55 +0000 |
commit | 84a7bc3d57756d62d5121bf7cc7df0c91f3b5a86 (patch) | |
tree | 7121f1ccea742441a12b32ce6b0be129993801d1 /target/linux/generic/patches-4.4 | |
parent | eb39f41ffd6dfacf9ac0e2d742d970ee296a4b63 (diff) | |
download | upstream-84a7bc3d57756d62d5121bf7cc7df0c91f3b5a86.tar.gz upstream-84a7bc3d57756d62d5121bf7cc7df0c91f3b5a86.tar.bz2 upstream-84a7bc3d57756d62d5121bf7cc7df0c91f3b5a86.zip |
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
Diffstat (limited to 'target/linux/generic/patches-4.4')
-rw-r--r-- | target/linux/generic/patches-4.4/100-ARM-work-around-CONFIG_CPU_SW_DOMAIN_PAN-breakage-on.patch | 44 |
1 files changed, 0 insertions, 44 deletions
diff --git a/target/linux/generic/patches-4.4/100-ARM-work-around-CONFIG_CPU_SW_DOMAIN_PAN-breakage-on.patch b/target/linux/generic/patches-4.4/100-ARM-work-around-CONFIG_CPU_SW_DOMAIN_PAN-breakage-on.patch deleted file mode 100644 index 3156a54fee..0000000000 --- a/target/linux/generic/patches-4.4/100-ARM-work-around-CONFIG_CPU_SW_DOMAIN_PAN-breakage-on.patch +++ /dev/null @@ -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) |