kernel: bump 4.14 to 4.14.20
Refresh patches. Remove upstreamed patches: - backport/080-v4.15-0001-arch-define-weak-abort.patch - backport/081-v4.15-0002-kernel-exit.c-export-abort-to-modules.patch Update patch that no longer applies: pending/493-ubi-set-ROOT_DEV-to-ubiblock-rootfs-if-unset.patch Fixes CVE-2017-8824. Compile-tested: octeon, x86/64. Runtime-tested: octeon, x86/64. Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>v19.07.3_mercusys_ac12_duma
parent
6c2e1ff80f
commit
88ba41453d
@ -1,46 +0,0 @@
|
|||||||
From 7c2c11b208be09c156573fc0076b7b3646e05219 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Sudip Mukherjee <sudipm.mukherjee@gmail.com>
|
|
||||||
Date: Thu, 14 Dec 2017 15:33:19 -0800
|
|
||||||
Subject: [PATCH] arch: define weak abort()
|
|
||||||
|
|
||||||
gcc toggle -fisolate-erroneous-paths-dereference (default at -O2
|
|
||||||
onwards) isolates faulty code paths such as null pointer access, divide
|
|
||||||
by zero etc. If gcc port doesnt implement __builtin_trap, an abort() is
|
|
||||||
generated which causes kernel link error.
|
|
||||||
|
|
||||||
In this case, gcc is generating abort due to 'divide by zero' in
|
|
||||||
lib/mpi/mpih-div.c.
|
|
||||||
|
|
||||||
Currently 'frv' and 'arc' are failing. Previously other arch was also
|
|
||||||
broken like m32r was fixed by commit d22e3d69ee1a ("m32r: fix build
|
|
||||||
failure").
|
|
||||||
|
|
||||||
Let's define this weak function which is common for all arch and fix the
|
|
||||||
problem permanently. We can even remove the arch specific 'abort' after
|
|
||||||
this is done.
|
|
||||||
|
|
||||||
Link: http://lkml.kernel.org/r/1513118956-8718-1-git-send-email-sudipm.mukherjee@gmail.com
|
|
||||||
Signed-off-by: Sudip Mukherjee <sudipm.mukherjee@gmail.com>
|
|
||||||
Cc: Alexey Brodkin <Alexey.Brodkin@synopsys.com>
|
|
||||||
Cc: Vineet Gupta <Vineet.Gupta1@synopsys.com>
|
|
||||||
Cc: Sudip Mukherjee <sudipm.mukherjee@gmail.com>
|
|
||||||
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
|
|
||||||
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
||||||
---
|
|
||||||
kernel/exit.c | 8 ++++++++
|
|
||||||
1 file changed, 8 insertions(+)
|
|
||||||
|
|
||||||
--- a/kernel/exit.c
|
|
||||||
+++ b/kernel/exit.c
|
|
||||||
@@ -1755,3 +1755,11 @@ Efault:
|
|
||||||
return -EFAULT;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
+
|
|
||||||
+__weak void abort(void)
|
|
||||||
+{
|
|
||||||
+ BUG();
|
|
||||||
+
|
|
||||||
+ /* if that doesn't kill us, halt */
|
|
||||||
+ panic("Oops failed to kill thread");
|
|
||||||
+}
|
|
@ -1,63 +0,0 @@
|
|||||||
From dc8635b78cd8669c37e230058d18c33af7451ab1 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Andrew Morton <akpm@linux-foundation.org>
|
|
||||||
Date: Thu, 4 Jan 2018 16:17:56 -0800
|
|
||||||
Subject: [PATCH] kernel/exit.c: export abort() to modules
|
|
||||||
|
|
||||||
gcc -fisolate-erroneous-paths-dereference can generate calls to abort()
|
|
||||||
from modular code too.
|
|
||||||
|
|
||||||
[arnd@arndb.de: drop duplicate exports of abort()]
|
|
||||||
Link: http://lkml.kernel.org/r/20180102103311.706364-1-arnd@arndb.de
|
|
||||||
Reported-by: Vineet Gupta <Vineet.Gupta1@synopsys.com>
|
|
||||||
Cc: Sudip Mukherjee <sudipm.mukherjee@gmail.com>
|
|
||||||
Cc: Arnd Bergmann <arnd@arndb.de>
|
|
||||||
Cc: Alexey Brodkin <Alexey.Brodkin@synopsys.com>
|
|
||||||
Cc: Russell King <rmk+kernel@armlinux.org.uk>
|
|
||||||
Cc: Jose Abreu <Jose.Abreu@synopsys.com>
|
|
||||||
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
|
|
||||||
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
|
|
||||||
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
||||||
---
|
|
||||||
arch/arm/kernel/traps.c | 1 -
|
|
||||||
arch/m32r/kernel/traps.c | 1 -
|
|
||||||
arch/unicore32/kernel/traps.c | 1 -
|
|
||||||
kernel/exit.c | 1 +
|
|
||||||
4 files changed, 1 insertion(+), 3 deletions(-)
|
|
||||||
|
|
||||||
--- a/arch/arm/kernel/traps.c
|
|
||||||
+++ b/arch/arm/kernel/traps.c
|
|
||||||
@@ -790,7 +790,6 @@ void abort(void)
|
|
||||||
/* if that doesn't kill us, halt */
|
|
||||||
panic("Oops failed to kill thread");
|
|
||||||
}
|
|
||||||
-EXPORT_SYMBOL(abort);
|
|
||||||
|
|
||||||
void __init trap_init(void)
|
|
||||||
{
|
|
||||||
--- a/arch/m32r/kernel/traps.c
|
|
||||||
+++ b/arch/m32r/kernel/traps.c
|
|
||||||
@@ -122,7 +122,6 @@ void abort(void)
|
|
||||||
/* if that doesn't kill us, halt */
|
|
||||||
panic("Oops failed to kill thread");
|
|
||||||
}
|
|
||||||
-EXPORT_SYMBOL(abort);
|
|
||||||
|
|
||||||
void __init trap_init(void)
|
|
||||||
{
|
|
||||||
--- a/arch/unicore32/kernel/traps.c
|
|
||||||
+++ b/arch/unicore32/kernel/traps.c
|
|
||||||
@@ -298,7 +298,6 @@ void abort(void)
|
|
||||||
/* if that doesn't kill us, halt */
|
|
||||||
panic("Oops failed to kill thread");
|
|
||||||
}
|
|
||||||
-EXPORT_SYMBOL(abort);
|
|
||||||
|
|
||||||
void __init trap_init(void)
|
|
||||||
{
|
|
||||||
--- a/kernel/exit.c
|
|
||||||
+++ b/kernel/exit.c
|
|
||||||
@@ -1763,3 +1763,4 @@ __weak void abort(void)
|
|
||||||
/* if that doesn't kill us, halt */
|
|
||||||
panic("Oops failed to kill thread");
|
|
||||||
}
|
|
||||||
+EXPORT_SYMBOL(abort);
|
|
Loading…
Reference in New Issue