diff options
author | Jo-Philipp Wich <jo@mein.io> | 2017-02-07 09:30:41 +0100 |
---|---|---|
committer | Jo-Philipp Wich <jo@mein.io> | 2017-02-07 09:32:02 +0100 |
commit | 62bf0d495810429bdda8cd2ebf94ef395f8111fd (patch) | |
tree | 077de81271e5d6af480b1f781ab7297d582e470d | |
parent | 985c90d1026285f5acc214f4cc56e9fb0f411867 (diff) | |
download | upstream-62bf0d495810429bdda8cd2ebf94ef395f8111fd.tar.gz upstream-62bf0d495810429bdda8cd2ebf94ef395f8111fd.tar.bz2 upstream-62bf0d495810429bdda8cd2ebf94ef395f8111fd.zip |
arc770: fix broken upstream change
Add a patch to revert upstream commit 9aed02feae57bf7a40cb04ea0e3017cb7a998db4
which introduces syntax errors.
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
-rw-r--r-- | target/linux/arc770/patches-4.4/900-revert-unaligned-access-delay-corner-case.patch | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/target/linux/arc770/patches-4.4/900-revert-unaligned-access-delay-corner-case.patch b/target/linux/arc770/patches-4.4/900-revert-unaligned-access-delay-corner-case.patch new file mode 100644 index 0000000000..37dc56e184 --- /dev/null +++ b/target/linux/arc770/patches-4.4/900-revert-unaligned-access-delay-corner-case.patch @@ -0,0 +1,31 @@ +From: Jo-Philipp Wich <jo@mein.io> +Date: Tue, 7 Feb 2017 09:26:00 +0100 +Subject: [PATCH] arc: revert broken upstream change + +The upstream commit +"9aed02f ARC: [arcompact] handle unaligned access delay slot corner case" +introduced a syntax error in arch/arc/kernel/unaligned.c, leading to the +following build failure: + + arch/arc/kernel/unaligned.c: In function 'misaligned_fixup': + arch/arc/kernel/unaligned.c:246:25: error: expected ';' before '~' token + regs->ret = regs->bta ~1U; + ^ + make[6]: *** [arch/arc/kernel/unaligned.o] Error 1 + +This patch reverts the offending change until an upstream fix is available. + +Signed-off-by: Jo-Philipp Wich <jo@mein.io> +--- a/arch/arc/kernel/unaligned.c ++++ b/arch/arc/kernel/unaligned.c +@@ -241,9 +241,8 @@ int misaligned_fixup(unsigned long addre + if (state.fault) + goto fault; + +- /* clear any remanants of delay slot */ + if (delay_mode(regs)) { +- regs->ret = regs->bta ~1U; ++ regs->ret = regs->bta; + regs->status32 &= ~STATUS_DE_MASK; + } else { + regs->ret += state.instr_len; |