From 1d45ed1477571d0dd3d7d39dd9b45d2a05c57a0a Mon Sep 17 00:00:00 2001 From: Koen Vandeputte Date: Mon, 29 Jul 2019 16:05:04 +0200 Subject: [PATCH] kernel: bump 4.14 to 4.14.134 Refreshed all patches. Remove upstreamed: - 049-v4.20-mips-remove-superfluous-check-for-linux.patch - 303-MIPS-Fix-bounds-check-virt_addr_valid.patch Fixes: - CVE-2019-3846 - CVE-2019-3900 Compile-tested on: cns3xxx Runtime-tested on: cns3xxx Signed-off-by: Koen Vandeputte --- include/kernel-version.mk | 4 +- ...2515-Use-DT-supplied-interrupt-flags.patch | 2 +- ...dget-ethernet-Re-enable-Jumbo-frames.patch | 2 +- .../brcm47xx/patches-4.14/159-cpu_fixes.patch | 10 ++-- ...ption-fix-dwm-158-3g-modem-interface.patch | 2 +- ...s-remove-superfluous-check-for-linux.patch | 47 ------------------- ...etfilter-connmark-introduce-savedscp.patch | 11 +---- ...IPS-Fix-bounds-check-virt_addr_valid.patch | 33 ------------- 8 files changed, 12 insertions(+), 99 deletions(-) delete mode 100644 target/linux/generic/backport-4.14/049-v4.20-mips-remove-superfluous-check-for-linux.patch delete mode 100644 target/linux/generic/pending-4.14/303-MIPS-Fix-bounds-check-virt_addr_valid.patch diff --git a/include/kernel-version.mk b/include/kernel-version.mk index b403bdff80..5e6356dfa4 100644 --- a/include/kernel-version.mk +++ b/include/kernel-version.mk @@ -7,11 +7,11 @@ ifdef CONFIG_TESTING_KERNEL endif LINUX_VERSION-4.9 = .186 -LINUX_VERSION-4.14 = .132 +LINUX_VERSION-4.14 = .134 LINUX_VERSION-4.19 = .57 LINUX_KERNEL_HASH-4.9.186 = 242484430d0729791d8efd92181b7d34b4021050646c6e00cf459866eab94b6a -LINUX_KERNEL_HASH-4.14.132 = da86f39a722da656fce4e2685223093b5d5f4db94046fcd79e492428a82ff330 +LINUX_KERNEL_HASH-4.14.134 = 0b21e7b5effd92303a551b5be2380c9703d6fb87cfe5189fe0d795cc73903d2d LINUX_KERNEL_HASH-4.19.57 = 327c5759d5888361d6c9d6adb0c8ad7e3c624eb05bb9e5869d9f3078dd0d3f87 remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1)))) diff --git a/target/linux/brcm2708/patches-4.14/950-0132-mcp2515-Use-DT-supplied-interrupt-flags.patch b/target/linux/brcm2708/patches-4.14/950-0132-mcp2515-Use-DT-supplied-interrupt-flags.patch index 31942750c1..bb87c97c6c 100644 --- a/target/linux/brcm2708/patches-4.14/950-0132-mcp2515-Use-DT-supplied-interrupt-flags.patch +++ b/target/linux/brcm2708/patches-4.14/950-0132-mcp2515-Use-DT-supplied-interrupt-flags.patch @@ -24,7 +24,7 @@ Signed-off-by: Phil Elwell --- a/drivers/net/can/spi/mcp251x.c +++ b/drivers/net/can/spi/mcp251x.c -@@ -952,6 +952,9 @@ static int mcp251x_open(struct net_devic +@@ -951,6 +951,9 @@ static int mcp251x_open(struct net_devic priv->tx_skb = NULL; priv->tx_len = 0; diff --git a/target/linux/brcm2708/patches-4.14/950-0315-usb-gadget-ethernet-Re-enable-Jumbo-frames.patch b/target/linux/brcm2708/patches-4.14/950-0315-usb-gadget-ethernet-Re-enable-Jumbo-frames.patch index 6442338a6c..8875a8ac37 100644 --- a/target/linux/brcm2708/patches-4.14/950-0315-usb-gadget-ethernet-Re-enable-Jumbo-frames.patch +++ b/target/linux/brcm2708/patches-4.14/950-0315-usb-gadget-ethernet-Re-enable-Jumbo-frames.patch @@ -18,7 +18,7 @@ Signed-off-by: Felipe Balbi --- a/drivers/usb/gadget/function/u_ether.c +++ b/drivers/usb/gadget/function/u_ether.c -@@ -848,6 +848,10 @@ struct net_device *gether_setup_name_def +@@ -850,6 +850,10 @@ struct net_device *gether_setup_name_def net->ethtool_ops = &ops; SET_NETDEV_DEVTYPE(net, &gadget_type); diff --git a/target/linux/brcm47xx/patches-4.14/159-cpu_fixes.patch b/target/linux/brcm47xx/patches-4.14/159-cpu_fixes.patch index 3de77b1afd..8dc8664c92 100644 --- a/target/linux/brcm47xx/patches-4.14/159-cpu_fixes.patch +++ b/target/linux/brcm47xx/patches-4.14/159-cpu_fixes.patch @@ -458,7 +458,7 @@ /* --- a/arch/mips/mm/tlbex.c +++ b/arch/mips/mm/tlbex.c -@@ -971,6 +971,9 @@ void build_get_pgde32(u32 **p, unsigned +@@ -976,6 +976,9 @@ void build_get_pgde32(u32 **p, unsigned uasm_i_srl(p, ptr, ptr, SMP_CPUID_PTRSHIFT); uasm_i_addu(p, ptr, tmp, ptr); #else @@ -468,7 +468,7 @@ UASM_i_LA_mostly(p, ptr, pgdc); #endif uasm_i_mfc0(p, tmp, C0_BADVADDR); /* get faulting address */ -@@ -1331,6 +1334,9 @@ static void build_r4000_tlb_refill_handl +@@ -1337,6 +1340,9 @@ static void build_r4000_tlb_refill_handl #ifdef CONFIG_64BIT build_get_pmde64(&p, &l, &r, K0, K1); /* get pmd in K1 */ #else @@ -478,7 +478,7 @@ build_get_pgde32(&p, K0, K1); /* get pgd in K1 */ #endif -@@ -1342,6 +1348,9 @@ static void build_r4000_tlb_refill_handl +@@ -1348,6 +1354,9 @@ static void build_r4000_tlb_refill_handl build_update_entries(&p, K0, K1); build_tlb_write_entry(&p, &l, &r, tlb_random); uasm_l_leave(&l, p); @@ -488,7 +488,7 @@ uasm_i_eret(&p); /* return from trap */ } #ifdef CONFIG_MIPS_HUGE_TLB_SUPPORT -@@ -2046,6 +2055,9 @@ build_r4000_tlbchange_handler_head(u32 * +@@ -2057,6 +2066,9 @@ build_r4000_tlbchange_handler_head(u32 * #ifdef CONFIG_64BIT build_get_pmde64(p, l, r, wr.r1, wr.r2); /* get pmd in ptr */ #else @@ -498,7 +498,7 @@ build_get_pgde32(p, wr.r1, wr.r2); /* get pgd in ptr */ #endif -@@ -2092,6 +2104,9 @@ build_r4000_tlbchange_handler_tail(u32 * +@@ -2103,6 +2115,9 @@ build_r4000_tlbchange_handler_tail(u32 * build_tlb_write_entry(p, l, r, tlb_indexed); uasm_l_leave(l, *p); build_restore_work_registers(p); diff --git a/target/linux/generic/backport-4.14/030-USB-serial-option-fix-dwm-158-3g-modem-interface.patch b/target/linux/generic/backport-4.14/030-USB-serial-option-fix-dwm-158-3g-modem-interface.patch index b60e9d3230..a61a4ec17f 100644 --- a/target/linux/generic/backport-4.14/030-USB-serial-option-fix-dwm-158-3g-modem-interface.patch +++ b/target/linux/generic/backport-4.14/030-USB-serial-option-fix-dwm-158-3g-modem-interface.patch @@ -30,7 +30,7 @@ Signed-off-by: Johan Hovold --- a/drivers/usb/serial/option.c +++ b/drivers/usb/serial/option.c -@@ -1947,7 +1947,8 @@ static const struct usb_device_id option +@@ -1948,7 +1948,8 @@ static const struct usb_device_id option { USB_DEVICE_INTERFACE_CLASS(0x2001, 0x7d01, 0xff) }, /* D-Link DWM-156 (variant) */ { USB_DEVICE_INTERFACE_CLASS(0x2001, 0x7d02, 0xff) }, { USB_DEVICE_INTERFACE_CLASS(0x2001, 0x7d03, 0xff) }, diff --git a/target/linux/generic/backport-4.14/049-v4.20-mips-remove-superfluous-check-for-linux.patch b/target/linux/generic/backport-4.14/049-v4.20-mips-remove-superfluous-check-for-linux.patch deleted file mode 100644 index 4e9279a9ec..0000000000 --- a/target/linux/generic/backport-4.14/049-v4.20-mips-remove-superfluous-check-for-linux.patch +++ /dev/null @@ -1,47 +0,0 @@ -From 1287533d3d95d5ad8b02773733044500b1be06bc Mon Sep 17 00:00:00 2001 -From: Sean Young -Date: Fri, 16 Nov 2018 16:09:39 +0000 -Subject: MIPS: Remove superfluous check for __linux__ - -When building BPF code using "clang -target bpf -c", clang does not -define __linux__. - -To build BPF IR decoders the include linux/lirc.h is needed which -includes linux/types.h. Currently this workaround is needed: - -https://git.linuxtv.org/v4l-utils.git/commit/?id=dd3ff81f58c4e1e6f33765dc61ad33c48ae6bb07 - -This check might otherwise be useful to stop users from using a non-linux -compiler, but if you're doing that you are going to have a lot more -trouble anyway. - -Signed-off-by: Sean Young -Signed-off-by: Paul Burton -Patchwork: https://patchwork.linux-mips.org/patch/21149/ -Cc: Ralf Baechle -Cc: James Hogan -Cc: linux-mips@linux-mips.org -Cc: linux-kernel@vger.kernel.org ---- - arch/mips/include/uapi/asm/sgidefs.h | 8 -------- - 1 file changed, 8 deletions(-) - -(limited to 'arch/mips/include/uapi/asm/sgidefs.h') - ---- a/arch/mips/include/uapi/asm/sgidefs.h -+++ b/arch/mips/include/uapi/asm/sgidefs.h -@@ -12,14 +12,6 @@ - #define __ASM_SGIDEFS_H - - /* -- * Using a Linux compiler for building Linux seems logic but not to -- * everybody. -- */ --#ifndef __linux__ --#error Use a Linux compiler or give up. --#endif -- --/* - * Definitions for the ISA levels - * - * With the introduction of MIPS32 / MIPS64 instruction sets definitions diff --git a/target/linux/generic/hack-4.14/645-netfilter-connmark-introduce-savedscp.patch b/target/linux/generic/hack-4.14/645-netfilter-connmark-introduce-savedscp.patch index 1681ed5db8..5217eca582 100644 --- a/target/linux/generic/hack-4.14/645-netfilter-connmark-introduce-savedscp.patch +++ b/target/linux/generic/hack-4.14/645-netfilter-connmark-introduce-savedscp.patch @@ -49,8 +49,6 @@ Signed-off-by: Kevin Darbyshire-Bryant net/netfilter/xt_connmark.c | 21 ++++++++++++++++++++- 2 files changed, 22 insertions(+), 2 deletions(-) -diff --git a/include/uapi/linux/netfilter/xt_connmark.h b/include/uapi/linux/netfilter/xt_connmark.h -index 408a9654f05c..e63ad3c89b92 100644 --- a/include/uapi/linux/netfilter/xt_connmark.h +++ b/include/uapi/linux/netfilter/xt_connmark.h @@ -16,7 +16,8 @@ @@ -63,11 +61,9 @@ index 408a9654f05c..e63ad3c89b92 100644 }; struct xt_connmark_tginfo1 { -diff --git a/net/netfilter/xt_connmark.c b/net/netfilter/xt_connmark.c -index ec377cc6a369..aa5bcea8f9ba 100644 --- a/net/netfilter/xt_connmark.c +++ b/net/netfilter/xt_connmark.c -@@ -42,6 +42,7 @@ connmark_tg(struct sk_buff *skb, const struct xt_action_param *par) +@@ -42,6 +42,7 @@ connmark_tg(struct sk_buff *skb, const s enum ip_conntrack_info ctinfo; struct nf_conn *ct; u_int32_t newmark; @@ -75,7 +71,7 @@ index ec377cc6a369..aa5bcea8f9ba 100644 ct = nf_ct_get(skb, &ctinfo); if (ct == NULL) -@@ -57,7 +58,25 @@ connmark_tg(struct sk_buff *skb, const struct xt_action_param *par) +@@ -57,7 +58,25 @@ connmark_tg(struct sk_buff *skb, const s break; case XT_CONNMARK_SAVE: newmark = (ct->mark & ~info->ctmask) ^ @@ -102,6 +98,3 @@ index ec377cc6a369..aa5bcea8f9ba 100644 if (ct->mark != newmark) { ct->mark = newmark; nf_conntrack_event_cache(IPCT_MARK, ct); --- -2.20.1 (Apple Git-117) - diff --git a/target/linux/generic/pending-4.14/303-MIPS-Fix-bounds-check-virt_addr_valid.patch b/target/linux/generic/pending-4.14/303-MIPS-Fix-bounds-check-virt_addr_valid.patch deleted file mode 100644 index d4c3e66105..0000000000 --- a/target/linux/generic/pending-4.14/303-MIPS-Fix-bounds-check-virt_addr_valid.patch +++ /dev/null @@ -1,33 +0,0 @@ -From 415e0feec4f927af0059f72a6831f6c5a104f0fc Mon Sep 17 00:00:00 2001 -From: Hauke Mehrtens -Date: Mon, 17 Jun 2019 00:13:08 +0200 -Subject: [PATCH] MIPS: Fix bounds check virt_addr_valid - -The bounds check used the uninitialized variable vaddr, it should use -the given parameter kaddr instead. When using the uninitialized value -the compiler assumed it to be 0 and optimized this function to just -return 0 in all cases. - -This should make the function check the range of the given address and -only do the page map check in case it is in the expected range of -virtual addresses. - -Fixes: 074a1e1167af ("MIPS: Bounds check virt_addr_valid") -Cc: stable@vger.kernel.org # v4.12+ -Cc: Paul Burton -Signed-off-by: Hauke Mehrtens ---- - arch/mips/mm/mmap.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/arch/mips/mm/mmap.c -+++ b/arch/mips/mm/mmap.c -@@ -203,7 +203,7 @@ unsigned long arch_randomize_brk(struct - - int __virt_addr_valid(const volatile void *kaddr) - { -- unsigned long vaddr = (unsigned long)vaddr; -+ unsigned long vaddr = (unsigned long)kaddr; - - if ((vaddr < PAGE_OFFSET) || (vaddr >= MAP_BASE)) - return 0;