From f7c06ee2060b1420823b0fe92a79adb95bb1eb20 Mon Sep 17 00:00:00 2001 From: nbd Date: Sat, 23 Jan 2016 18:02:55 +0000 Subject: [PATCH] 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 git-svn-id: svn://svn.openwrt.org/openwrt/trunk@48460 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- ...ound-CONFIG_CPU_SW_DOMAIN_PAN-breakage-on.patch | 44 ---------------------- 1 file changed, 44 deletions(-) delete mode 100644 target/linux/generic/patches-4.4/100-ARM-work-around-CONFIG_CPU_SW_DOMAIN_PAN-breakage-on.patch 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 -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 ---- - ---- a/arch/arm/kernel/smp_tlb.c -+++ b/arch/arm/kernel/smp_tlb.c -@@ -9,6 +9,7 @@ - */ - #include - #include -+#include - - #include - #include -@@ -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) -- 2.11.0