aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/generic/patches-4.4/333-arc-enable-unaligned-access-in-kernel-mode.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/generic/patches-4.4/333-arc-enable-unaligned-access-in-kernel-mode.patch')
-rw-r--r--target/linux/generic/patches-4.4/333-arc-enable-unaligned-access-in-kernel-mode.patch31
1 files changed, 31 insertions, 0 deletions
diff --git a/target/linux/generic/patches-4.4/333-arc-enable-unaligned-access-in-kernel-mode.patch b/target/linux/generic/patches-4.4/333-arc-enable-unaligned-access-in-kernel-mode.patch
new file mode 100644
index 0000000000..76a9ce8968
--- /dev/null
+++ b/target/linux/generic/patches-4.4/333-arc-enable-unaligned-access-in-kernel-mode.patch
@@ -0,0 +1,31 @@
+From af737b55fc7c61f17da9ae89fba536e0a9338e98 Mon Sep 17 00:00:00 2001
+From: Alexey Brodkin <abrodkin@synopsys.com>
+Date: Mon, 14 Mar 2016 17:26:34 +0300
+Subject: [PATCH] arc: enable unaligned access in kernel mode
+
+This enables misaligned access handling even in kernel mode.
+Some wireless drivers (ath9k-htc and mt7601u) use misaligned accesses
+here and there and to cope with that without fixing stuff in the drivers
+we're just gracefully handling it on ARC.
+
+Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
+---
+ arch/arc/kernel/unaligned.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/arch/arc/kernel/unaligned.c b/arch/arc/kernel/unaligned.c
+index abd961f..0b0cc97 100644
+--- a/arch/arc/kernel/unaligned.c
++++ b/arch/arc/kernel/unaligned.c
+@@ -206,7 +206,7 @@ int misaligned_fixup(unsigned long address, struct pt_regs *regs,
+ char buf[TASK_COMM_LEN];
+
+ /* handle user mode only and only if enabled by sysadmin */
+- if (!user_mode(regs) || !unaligned_enabled)
++ if (!unaligned_enabled)
+ return 1;
+
+ if (no_unaligned_warning) {
+--
+2.5.0
+