kernel: bump 4.14 to 4.14.102
authorKoen Vandeputte <koen.vandeputte@ncentric.com>
Wed, 20 Feb 2019 15:02:26 +0000 (16:02 +0100)
committerKoen Vandeputte <koen.vandeputte@ncentric.com>
Fri, 22 Feb 2019 09:53:42 +0000 (10:53 +0100)
Refreshed all patches.

Remove upstreamed:
- 272-uapi-if_ether.h-prevent-redefinition-of-struct-ethhd.patch

Remove upstreamed hunks:
- 080-pinctrl-msm-fix-gpio-hog-related-boot-issues.patch

Fixes:
- CVE-2018-1000026

Compile-tested on: ar71xx, cns3xxx, imx6, x86_64
Runtime-tested on: ar71xx, cns3xxx, imx6

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
include/kernel-version.mk
target/linux/brcm2708/patches-4.14/950-0001-arm-partially-revert-702b94bff3c50542a6e4ab9a4f4cef0.patch
target/linux/brcm2708/patches-4.14/950-0031-Update-vfpmodule.c.patch
target/linux/brcm2708/patches-4.14/950-0061-Improve-__copy_to_user-and-__copy_from_user-performa.patch
target/linux/generic/backport-4.14/272-uapi-if_ether.h-prevent-redefinition-of-struct-ethhd.patch [deleted file]
target/linux/ipq40xx/patches-4.14/080-pinctrl-msm-fix-gpio-hog-related-boot-issues.patch
target/linux/ipq806x/patches-4.14/0073-pinctrl-qom-use-scm_call-to-route-GPIO-irq-to-Apps.patch
target/linux/layerscape/patches-4.14/812-flexspi-support-layerscape.patch

index 2d2025e..9e5be1a 100644 (file)
@@ -4,12 +4,12 @@ LINUX_RELEASE?=1
 
 LINUX_VERSION-3.18 = .135
 LINUX_VERSION-4.9 = .159
-LINUX_VERSION-4.14 = .101
+LINUX_VERSION-4.14 = .102
 LINUX_VERSION-4.19 = .23
 
 LINUX_KERNEL_HASH-3.18.135 = d1853eb6e5438abb0b54d11478c0792554e39325d37a3f04b68f6c151ed8f8eb
 LINUX_KERNEL_HASH-4.9.159 = 9f9df13168a090d12314e2e8dac040e71ce3f2ed89eafbece2b14dabb6771742
-LINUX_KERNEL_HASH-4.14.101 = 142ff7c51b001c66e9be134fcec2722f9a47b89879a18e6f65b09b4585cdb69a
+LINUX_KERNEL_HASH-4.14.102 = d8a982cfa2804edc2ae9d20792ab0e3897f3976ced5632f2392c2e1918562501
 LINUX_KERNEL_HASH-4.19.23 = 2d9b25678aac7f3f109c52e6266fb6ee89cc424b597518a2875874bacb8f130a
 
 remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1))))
index 7becfb3..7c728b2 100644 (file)
@@ -76,7 +76,7 @@ Subject: [PATCH 001/454] arm: partially revert
  
 --- a/arch/arm/mm/proc-macros.S
 +++ b/arch/arm/mm/proc-macros.S
-@@ -325,6 +325,8 @@ ENTRY(\name\()_cache_fns)
+@@ -335,6 +335,8 @@ ENTRY(\name\()_cache_fns)
        .long   \name\()_flush_kern_dcache_area
        .long   \name\()_dma_map_area
        .long   \name\()_dma_unmap_area
index 6647e5a..3d8106d 100644 (file)
@@ -102,7 +102,7 @@ Signed-off-by: Christopher Alexander Tobias Schulze <cat.schulze@alice-dsl.net>
                vfp_save_state(&thread->vfpstate, fpexc | FPEXC_EN);
                fmxr(FPEXC, fpexc);
        }
-@@ -602,6 +609,8 @@ int vfp_restore_user_hwstate(struct user
+@@ -598,6 +605,8 @@ int vfp_restore_user_hwstate(struct user
        struct thread_info *thread = current_thread_info();
        struct vfp_hard_struct *hwstate = &thread->vfpstate.hard;
        unsigned long fpexc;
@@ -111,7 +111,7 @@ Signed-off-by: Christopher Alexander Tobias Schulze <cat.schulze@alice-dsl.net>
  
        /* Disable VFP to avoid corrupting the new thread state. */
        vfp_flush_hwstate(thread);
-@@ -624,8 +633,12 @@ int vfp_restore_user_hwstate(struct user
+@@ -620,8 +629,12 @@ int vfp_restore_user_hwstate(struct user
        /* Ensure the VFP is enabled. */
        fpexc |= FPEXC_EN;
  
@@ -126,7 +126,7 @@ Signed-off-by: Christopher Alexander Tobias Schulze <cat.schulze@alice-dsl.net>
        hwstate->fpexc = fpexc;
  
        hwstate->fpinst = ufp_exc->fpinst;
-@@ -695,7 +708,8 @@ void kernel_neon_begin(void)
+@@ -691,7 +704,8 @@ void kernel_neon_begin(void)
        cpu = get_cpu();
  
        fpexc = fmrx(FPEXC) | FPEXC_EN;
index 924fef4..157f76f 100644 (file)
@@ -58,7 +58,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
  #define memset(p,v,n)                                                 \
 --- a/arch/arm/include/asm/uaccess.h
 +++ b/arch/arm/include/asm/uaccess.h
-@@ -459,6 +459,9 @@ do {                                                                       \
+@@ -496,6 +496,9 @@ do {                                                                       \
  extern unsigned long __must_check
  arm_copy_from_user(void *to, const void __user *from, unsigned long n);
  
@@ -273,7 +273,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
  #ifdef CONFIG_CPU_SPECTRE
        get_thread_info r3
        ldr     r3, [r3, #TI_ADDR_LIMIT]
-@@ -103,6 +104,7 @@ ENTRY(arm_copy_from_user)
+@@ -99,6 +100,7 @@ ENTRY(arm_copy_from_user)
  #include "copy_template.S"
  
  ENDPROC(arm_copy_from_user)
@@ -1507,7 +1507,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
                unsigned long ua_flags = uaccess_save_and_enable();
                n = __copy_to_user_std(to, from, n);
                uaccess_restore(ua_flags);
-@@ -156,6 +252,26 @@ arm_copy_to_user(void __user *to, const
+@@ -157,6 +253,26 @@ arm_copy_to_user(void __user *to, const
        }
        return n;
  }
diff --git a/target/linux/generic/backport-4.14/272-uapi-if_ether.h-prevent-redefinition-of-struct-ethhd.patch b/target/linux/generic/backport-4.14/272-uapi-if_ether.h-prevent-redefinition-of-struct-ethhd.patch
deleted file mode 100644 (file)
index 45039ce..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-From 649affd04813c43e0a72886517fcfccd63230981 Mon Sep 17 00:00:00 2001
-From: Hauke Mehrtens <hauke@hauke-m.de>
-Date: Mon, 29 Jun 2015 16:53:03 +0200
-Subject: uapi/if_ether.h: prevent redefinition of struct ethhdr
-
-Musl provides its own ethhdr struct definition. Add a guard to prevent
-its definition of the appropriate musl header has already been included.
-
-glibc does not implement this header, but when glibc will implement this
-they can just define __UAPI_DEF_ETHHDR 0 to make it work with the
-kernel.
-
-Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
----
- include/uapi/linux/if_ether.h    | 3 +++
- include/uapi/linux/libc-compat.h | 6 ++++++
- 2 files changed, 9 insertions(+)
-
---- a/include/uapi/linux/if_ether.h
-+++ b/include/uapi/linux/if_ether.h
-@@ -23,6 +23,7 @@
- #define _UAPI_LINUX_IF_ETHER_H
- #include <linux/types.h>
-+#include <linux/libc-compat.h>
- /*
-  *    IEEE 802.3 Ethernet magic constants.  The frame sizes omit the preamble
-@@ -150,11 +151,13 @@
-  *    This is an Ethernet frame header.
-  */
-+#if __UAPI_DEF_ETHHDR
- struct ethhdr {
-       unsigned char   h_dest[ETH_ALEN];       /* destination eth addr */
-       unsigned char   h_source[ETH_ALEN];     /* source ether addr    */
-       __be16          h_proto;                /* packet type ID field */
- } __attribute__((packed));
-+#endif
- #endif /* _UAPI_LINUX_IF_ETHER_H */
---- a/include/uapi/linux/libc-compat.h
-+++ b/include/uapi/linux/libc-compat.h
-@@ -264,4 +264,10 @@
- #endif /* __GLIBC__ */
-+/* Definitions for if_ether.h */
-+/* allow libcs like musl to deactivate this, glibc does not implement this. */
-+#ifndef __UAPI_DEF_ETHHDR
-+#define __UAPI_DEF_ETHHDR             1
-+#endif
-+
- #endif /* _UAPI_LIBC_COMPAT_H */
index cffcd6c..81b13e6 100644 (file)
@@ -69,35 +69,3 @@ Origin: other, https://patchwork.kernel.org/patch/10339127/
                        #gpio-cells = <2>;
                        interrupt-controller;
                        #interrupt-cells = <2>;
---- a/drivers/pinctrl/qcom/pinctrl-msm.c
-+++ b/drivers/pinctrl/qcom/pinctrl-msm.c
-@@ -839,11 +839,24 @@ static int msm_gpio_init(struct msm_pinc
-               return ret;
-       }
--      ret = gpiochip_add_pin_range(&pctrl->chip, dev_name(pctrl->dev), 0, 0, chip->ngpio);
--      if (ret) {
--              dev_err(pctrl->dev, "Failed to add pin range\n");
--              gpiochip_remove(&pctrl->chip);
--              return ret;
-+      /*
-+       * For DeviceTree-supported systems, the gpio core checks the
-+       * pinctrl's device node for the "gpio-ranges" property.
-+       * If it is present, it takes care of adding the pin ranges
-+       * for the driver. In this case the driver can skip ahead.
-+       *
-+       * In order to remain compatible with older, existing DeviceTree
-+       * files which don't set the "gpio-ranges" property or systems that
-+       * utilize ACPI the driver has to call gpiochip_add_pin_range().
-+       */
-+      if (!of_property_read_bool(pctrl->dev->of_node, "gpio-ranges")) {
-+              ret = gpiochip_add_pin_range(&pctrl->chip,
-+                      dev_name(pctrl->dev), 0, 0, chip->ngpio);
-+              if (ret) {
-+                      dev_err(pctrl->dev, "Failed to add pin range\n");
-+                      gpiochip_remove(&pctrl->chip);
-+                      return ret;
-+              }
-       }
-       ret = gpiochip_irqchip_add(chip,
index 4ecdf09..1507686 100644 (file)
@@ -157,7 +157,7 @@ Signed-off-by: Ajay Kishore <akisho@codeaurora.org>
  
        /* Update configuration for gpio.
         * RAW_STATUS_EN is left on for all gpio irqs. Due to the
-@@ -962,4 +985,3 @@ int msm_pinctrl_remove(struct platform_d
+@@ -975,4 +998,3 @@ int msm_pinctrl_remove(struct platform_d
        return 0;
  }
  EXPORT_SYMBOL(msm_pinctrl_remove);
index 1c8ae25..e768f82 100644 (file)
@@ -40,7 +40,7 @@ Signed-off-by: Biwen Li <biwen.li@nxp.com>
 
 --- a/drivers/md/dm-thin.c
 +++ b/drivers/md/dm-thin.c
-@@ -3645,6 +3645,19 @@ static int process_create_thin_mesg(unsi
+@@ -3690,6 +3690,19 @@ static int process_create_thin_mesg(unsi
                return r;
        }