From 88ba41453dbc65e1d5d596073d66bdf2e59a43a1 Mon Sep 17 00:00:00 2001 From: Stijn Tintel Date: Sat, 17 Feb 2018 22:59:07 +0100 Subject: 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 --- .../025-tcp-allow-drivers-to-tweak-TSQ-logic.patch | 2 +- .../080-v4.15-0001-arch-define-weak-abort.patch | 46 ---------------- ...002-kernel-exit.c-export-abort-to-modules.patch | 63 ---------------------- .../generic/hack-4.14/207-disable-modorder.patch | 4 +- .../linux/generic/hack-4.14/220-gc_sections.patch | 2 +- .../linux/generic/hack-4.14/902-debloat_proc.patch | 2 +- .../pending-4.14/201-extra_optimization.patch | 2 +- ...bi-auto-create-ubiblock-device-for-rootfs.patch | 4 +- ...-set-ROOT_DEV-to-ubiblock-rootfs-if-unset.patch | 2 +- 9 files changed, 9 insertions(+), 118 deletions(-) delete mode 100644 target/linux/generic/backport-4.14/080-v4.15-0001-arch-define-weak-abort.patch delete mode 100644 target/linux/generic/backport-4.14/081-v4.15-0002-kernel-exit.c-export-abort-to-modules.patch (limited to 'target/linux/generic') diff --git a/target/linux/generic/backport-4.14/025-tcp-allow-drivers-to-tweak-TSQ-logic.patch b/target/linux/generic/backport-4.14/025-tcp-allow-drivers-to-tweak-TSQ-logic.patch index 0c57f2e337..6c80eaa4be 100644 --- a/target/linux/generic/backport-4.14/025-tcp-allow-drivers-to-tweak-TSQ-logic.patch +++ b/target/linux/generic/backport-4.14/025-tcp-allow-drivers-to-tweak-TSQ-logic.patch @@ -55,7 +55,7 @@ Cc: Kir Kolyshkin rwlock_t sk_callback_lock; --- a/net/core/sock.c +++ b/net/core/sock.c -@@ -2744,6 +2744,7 @@ void sock_init_data(struct socket *sock, +@@ -2741,6 +2741,7 @@ void sock_init_data(struct socket *sock, sk->sk_max_pacing_rate = ~0U; sk->sk_pacing_rate = ~0U; diff --git a/target/linux/generic/backport-4.14/080-v4.15-0001-arch-define-weak-abort.patch b/target/linux/generic/backport-4.14/080-v4.15-0001-arch-define-weak-abort.patch deleted file mode 100644 index 1867234540..0000000000 --- a/target/linux/generic/backport-4.14/080-v4.15-0001-arch-define-weak-abort.patch +++ /dev/null @@ -1,46 +0,0 @@ -From 7c2c11b208be09c156573fc0076b7b3646e05219 Mon Sep 17 00:00:00 2001 -From: Sudip Mukherjee -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 -Cc: Alexey Brodkin -Cc: Vineet Gupta -Cc: Sudip Mukherjee -Signed-off-by: Andrew Morton -Signed-off-by: Linus Torvalds ---- - 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"); -+} diff --git a/target/linux/generic/backport-4.14/081-v4.15-0002-kernel-exit.c-export-abort-to-modules.patch b/target/linux/generic/backport-4.14/081-v4.15-0002-kernel-exit.c-export-abort-to-modules.patch deleted file mode 100644 index 4c1402f153..0000000000 --- a/target/linux/generic/backport-4.14/081-v4.15-0002-kernel-exit.c-export-abort-to-modules.patch +++ /dev/null @@ -1,63 +0,0 @@ -From dc8635b78cd8669c37e230058d18c33af7451ab1 Mon Sep 17 00:00:00 2001 -From: Andrew Morton -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 -Cc: Sudip Mukherjee -Cc: Arnd Bergmann -Cc: Alexey Brodkin -Cc: Russell King -Cc: Jose Abreu -Signed-off-by: Andrew Morton -Signed-off-by: Arnd Bergmann -Signed-off-by: Linus Torvalds ---- - 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); diff --git a/target/linux/generic/hack-4.14/207-disable-modorder.patch b/target/linux/generic/hack-4.14/207-disable-modorder.patch index 4afed16a08..a6b0f67602 100644 --- a/target/linux/generic/hack-4.14/207-disable-modorder.patch +++ b/target/linux/generic/hack-4.14/207-disable-modorder.patch @@ -15,7 +15,7 @@ Signed-off-by: Felix Fietkau --- a/Makefile +++ b/Makefile -@@ -1212,7 +1212,6 @@ all: modules +@@ -1213,7 +1213,6 @@ all: modules PHONY += modules modules: $(vmlinux-dirs) $(if $(KBUILD_BUILTIN),vmlinux) modules.builtin @@ -23,7 +23,7 @@ Signed-off-by: Felix Fietkau @$(kecho) ' Building modules, stage 2.'; $(Q)$(MAKE) -f $(srctree)/scripts/Makefile.modpost -@@ -1241,7 +1240,6 @@ _modinst_: +@@ -1242,7 +1241,6 @@ _modinst_: rm -f $(MODLIB)/build ; \ ln -s $(CURDIR) $(MODLIB)/build ; \ fi diff --git a/target/linux/generic/hack-4.14/220-gc_sections.patch b/target/linux/generic/hack-4.14/220-gc_sections.patch index e06ddb80d4..162ee45ff0 100644 --- a/target/linux/generic/hack-4.14/220-gc_sections.patch +++ b/target/linux/generic/hack-4.14/220-gc_sections.patch @@ -33,7 +33,7 @@ Signed-off-by: Gabor Juhos # Read KERNELRELEASE from include/config/kernel.release (if it exists) KERNELRELEASE = $(shell cat include/config/kernel.release 2> /dev/null) KERNELVERSION = $(VERSION)$(if $(PATCHLEVEL),.$(PATCHLEVEL)$(if $(SUBLEVEL),.$(SUBLEVEL)))$(EXTRAVERSION) -@@ -784,11 +789,6 @@ ifdef CONFIG_DEBUG_SECTION_MISMATCH +@@ -785,11 +790,6 @@ ifdef CONFIG_DEBUG_SECTION_MISMATCH KBUILD_CFLAGS += $(call cc-option, -fno-inline-functions-called-once) endif diff --git a/target/linux/generic/hack-4.14/902-debloat_proc.patch b/target/linux/generic/hack-4.14/902-debloat_proc.patch index e291da5163..c23a8fb616 100644 --- a/target/linux/generic/hack-4.14/902-debloat_proc.patch +++ b/target/linux/generic/hack-4.14/902-debloat_proc.patch @@ -327,7 +327,7 @@ Signed-off-by: Felix Fietkau --- a/net/core/sock.c +++ b/net/core/sock.c -@@ -3383,6 +3383,8 @@ static __net_initdata struct pernet_oper +@@ -3380,6 +3380,8 @@ static __net_initdata struct pernet_oper static int __init proto_init(void) { diff --git a/target/linux/generic/pending-4.14/201-extra_optimization.patch b/target/linux/generic/pending-4.14/201-extra_optimization.patch index 81f7e2664e..e92b1a10a3 100644 --- a/target/linux/generic/pending-4.14/201-extra_optimization.patch +++ b/target/linux/generic/pending-4.14/201-extra_optimization.patch @@ -14,7 +14,7 @@ Signed-off-by: Felix Fietkau --- a/Makefile +++ b/Makefile -@@ -638,12 +638,12 @@ KBUILD_CFLAGS += $(call cc-disable-warni +@@ -639,12 +639,12 @@ KBUILD_CFLAGS += $(call cc-disable-warni ifdef CONFIG_CC_OPTIMIZE_FOR_SIZE KBUILD_CFLAGS += $(call cc-option,-Oz,-Os) diff --git a/target/linux/generic/pending-4.14/491-ubi-auto-create-ubiblock-device-for-rootfs.patch b/target/linux/generic/pending-4.14/491-ubi-auto-create-ubiblock-device-for-rootfs.patch index f8dc1bcb28..cb2d525610 100644 --- a/target/linux/generic/pending-4.14/491-ubi-auto-create-ubiblock-device-for-rootfs.patch +++ b/target/linux/generic/pending-4.14/491-ubi-auto-create-ubiblock-device-for-rootfs.patch @@ -8,7 +8,7 @@ Signed-off-by: Daniel Golle --- a/drivers/mtd/ubi/block.c +++ b/drivers/mtd/ubi/block.c -@@ -625,6 +625,44 @@ static void __init ubiblock_create_from_ +@@ -633,6 +633,44 @@ static void __init ubiblock_create_from_ } } @@ -53,7 +53,7 @@ Signed-off-by: Daniel Golle static void ubiblock_remove_all(void) { struct ubiblock *next; -@@ -655,6 +693,10 @@ int __init ubiblock_init(void) +@@ -665,6 +703,10 @@ int __init ubiblock_init(void) */ ubiblock_create_from_param(); diff --git a/target/linux/generic/pending-4.14/493-ubi-set-ROOT_DEV-to-ubiblock-rootfs-if-unset.patch b/target/linux/generic/pending-4.14/493-ubi-set-ROOT_DEV-to-ubiblock-rootfs-if-unset.patch index 06cd1b62ac..1bb53ada7f 100644 --- a/target/linux/generic/pending-4.14/493-ubi-set-ROOT_DEV-to-ubiblock-rootfs-if-unset.patch +++ b/target/linux/generic/pending-4.14/493-ubi-set-ROOT_DEV-to-ubiblock-rootfs-if-unset.patch @@ -17,9 +17,9 @@ Signed-off-by: Daniel Golle #include "ubi-media.h" #include "ubi.h" @@ -445,6 +446,15 @@ int ubiblock_create(struct ubi_volume_in - add_disk(dev->gd); dev_info(disk_to_dev(dev->gd), "created from ubi%d:%d(%s)", dev->ubi_num, dev->vol_id, vi->name); + mutex_unlock(&devices_mutex); + + if (!strcmp(vi->name, "rootfs") && + IS_ENABLED(CONFIG_MTD_ROOTFS_ROOT_DEV) && -- cgit v1.2.3