kernel: bump 4.14 to 4.14.23
authorStijn Segers <foss@volatilesystems.org>
Wed, 28 Feb 2018 21:53:37 +0000 (22:53 +0100)
committerHauke Mehrtens <hauke@hauke-m.de>
Fri, 2 Mar 2018 20:33:08 +0000 (21:33 +0100)
This patch bumps the 4.14 kernel to .23.
- Refreshed patches.
- Deleted bcm53xx/patches-4.14/089-PCI-iproc-Fix-NULL-pointer-dereference-for-BCMA.patch. Has been accepted upstream.
- Deleted generic/pending-4.14/821-usb-Remove-annoying-warning-about-bogus-URB.patch. The upstream URB code was changed,
  the patch no longer applies. I discussed this with the patch author and removed it for now, we'll see how it goes.

Compile-tested on: ramips/mt7621, x86/64
Run-tested on: ramips/mt7621, x86/64

Signed-off-by: Stijn Segers <foss@volatilesystems.org>
18 files changed:
include/kernel-version.mk
target/linux/bcm53xx/patches-4.14/089-PCI-iproc-Fix-NULL-pointer-dereference-for-BCMA.patch [deleted file]
target/linux/generic/backport-4.14/025-tcp-allow-drivers-to-tweak-TSQ-logic.patch
target/linux/generic/backport-4.14/336-netfilter-exit_net-cleanup-check-added.patch
target/linux/generic/hack-4.14/721-phy_packets.patch
target/linux/generic/hack-4.14/901-debloat_sock_diag.patch
target/linux/generic/hack-4.14/902-debloat_proc.patch
target/linux/generic/pending-4.14/120-Fix-alloc_node_mem_map-with-ARCH_PFN_OFFSET-calcu.patch
target/linux/generic/pending-4.14/492-try-auto-mounting-ubi0-rootfs-in-init-do_mounts.c.patch
target/linux/generic/pending-4.14/655-increase_skb_pad.patch
target/linux/generic/pending-4.14/680-NET-skip-GRO-for-foreign-MAC-addresses.patch
target/linux/generic/pending-4.14/821-usb-Remove-annoying-warning-about-bogus-URB.patch [deleted file]
target/linux/generic/pending-4.14/920-mangle_bootargs.patch
target/linux/mediatek/patches-4.14/0064-dts.patch
target/linux/mvebu/patches-4.14/408-sfp-move-module-eeprom-ethtool-access-into-netdev-co.patch
target/linux/mvebu/patches-4.14/409-sfp-use-netdev-sfp_bus-for-start-stop.patch
target/linux/mvebu/patches-4.14/411-sfp-add-sfp-compatible.patch
target/linux/ramips/patches-4.14/0013-owrt-hack-fix-mt7688-cache-issue.patch

index 293100e..4e23f0d 100644 (file)
@@ -5,12 +5,12 @@ LINUX_RELEASE?=1
 LINUX_VERSION-3.18 = .71
 LINUX_VERSION-4.4 = .112
 LINUX_VERSION-4.9 = .82
-LINUX_VERSION-4.14 = .20
+LINUX_VERSION-4.14 = .23
 
 LINUX_KERNEL_HASH-3.18.71 = 5abc9778ad44ce02ed6c8ab52ece8a21c6d20d21f6ed8a19287b4a38a50c1240
 LINUX_KERNEL_HASH-4.4.112 = 544b42cbeed022896115c76a18fc97b4507d5b41d7ac0ce1dce9afd6ffd11ecd
 LINUX_KERNEL_HASH-4.9.82 = 4b710b2701daafeb8e4db4c06f0ed3e62a6d20d6213a4927769c89ae42a9b180
-LINUX_KERNEL_HASH-4.14.20 = 4ab7f42aa6af9c1e3b00cba6b1fa305a87407666aaa2fae555f7fbdaafb6d292
+LINUX_KERNEL_HASH-4.14.23 = 9a97b5555a2baaed9aa7711524ae3b9179579efb902d76a814a916aefe5712ca
 
 remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1))))
 sanitize_uri=$(call qstrip,$(subst @,_,$(subst :,_,$(subst .,_,$(subst -,_,$(subst /,_,$(1)))))))
diff --git a/target/linux/bcm53xx/patches-4.14/089-PCI-iproc-Fix-NULL-pointer-dereference-for-BCMA.patch b/target/linux/bcm53xx/patches-4.14/089-PCI-iproc-Fix-NULL-pointer-dereference-for-BCMA.patch
deleted file mode 100644 (file)
index 2cdefc2..0000000
+++ /dev/null
@@ -1,80 +0,0 @@
-From 3b65ca50d24ce33cb92d88840e289135c92b40ed Mon Sep 17 00:00:00 2001
-From: Ray Jui <ray.jui@broadcom.com>
-Date: Thu, 11 Jan 2018 12:36:16 -0800
-Subject: [PATCH] PCI: iproc: Fix NULL pointer dereference for BCMA
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-With the inbound DMA mapping supported added, the iProc PCIe driver
-parses DT property "dma-ranges" through call to
-"of_pci_dma_range_parser_init()". In the case of BCMA, this results in a
-NULL pointer deference due to a missing of_node.
-
-Fix this by adding a guard in pcie-iproc-platform.c to only enable the
-inbound DMA mapping logic when DT property "dma-ranges" is present.
-
-Fixes: dd9d4e7498de3 ("PCI: iproc: Add inbound DMA mapping support")
-Reported-by: Rafał Miłecki <rafal@milecki.pl>
-Signed-off-by: Ray Jui <ray.jui@broadcom.com>
-[lorenzo.pieralisi@arm.com: updated commit log]
-Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
-Tested-by: Rafał Miłecki <rafal@milecki.pl>
-cc: <stable@vger.kernel.org> # 4.10+
----
- drivers/pci/host/pcie-iproc-platform.c | 7 +++++++
- drivers/pci/host/pcie-iproc.c          | 8 +++++---
- drivers/pci/host/pcie-iproc.h          | 2 ++
- 3 files changed, 14 insertions(+), 3 deletions(-)
-
---- a/drivers/pci/host/pcie-iproc-platform.c
-+++ b/drivers/pci/host/pcie-iproc-platform.c
-@@ -92,6 +92,13 @@ static int iproc_pcie_pltfm_probe(struct
-               pcie->need_ob_cfg = true;
-       }
-+      /*
-+       * DT nodes are not used by all platforms that use the iProc PCIe
-+       * core driver. For platforms that require explict inbound mapping
-+       * configuration, "dma-ranges" would have been present in DT
-+       */
-+      pcie->need_ib_cfg = of_property_read_bool(np, "dma-ranges");
-+
-       /* PHY use is optional */
-       pcie->phy = devm_phy_get(dev, "pcie-phy");
-       if (IS_ERR(pcie->phy)) {
---- a/drivers/pci/host/pcie-iproc.c
-+++ b/drivers/pci/host/pcie-iproc.c
-@@ -1396,9 +1396,11 @@ int iproc_pcie_setup(struct iproc_pcie *
-               }
-       }
--      ret = iproc_pcie_map_dma_ranges(pcie);
--      if (ret && ret != -ENOENT)
--              goto err_power_off_phy;
-+      if (pcie->need_ib_cfg) {
-+              ret = iproc_pcie_map_dma_ranges(pcie);
-+              if (ret && ret != -ENOENT)
-+                      goto err_power_off_phy;
-+      }
- #ifdef CONFIG_ARM
-       pcie->sysdata.private_data = pcie;
---- a/drivers/pci/host/pcie-iproc.h
-+++ b/drivers/pci/host/pcie-iproc.h
-@@ -74,6 +74,7 @@ struct iproc_msi;
-  * @ob: outbound mapping related parameters
-  * @ob_map: outbound mapping related parameters specific to the controller
-  *
-+ * @need_ib_cfg: indicates SW needs to configure the inbound mapping window
-  * @ib: inbound mapping related parameters
-  * @ib_map: outbound mapping region related parameters
-  *
-@@ -101,6 +102,7 @@ struct iproc_pcie {
-       struct iproc_pcie_ob ob;
-       const struct iproc_pcie_ob_map *ob_map;
-+      bool need_ib_cfg;
-       struct iproc_pcie_ib ib;
-       const struct iproc_pcie_ib_map *ib_map;
index 6c80eaa..03c0b53 100644 (file)
@@ -44,9 +44,9 @@ Cc: Kir Kolyshkin <kir@openvz.org>
    *   @sk_lingertime: %SO_LINGER l_linger setting
    *   @sk_backlog: always used with the per-socket spinlock held
    *   @sk_callback_lock: used with the callbacks in the end of this struct
-@@ -448,6 +449,8 @@ struct sock {
-       kmemcheck_bitfield_end(flags);
+@@ -445,6 +446,8 @@ struct sock {
+                               sk_type      : 16;
+ #define SK_PROTOCOL_MAX U8_MAX
        u16                     sk_gso_max_segs;
 +#define sk_pacing_shift sk_pacing_shift /* for backport checks */
 +      u8                      sk_pacing_shift;
@@ -55,7 +55,7 @@ Cc: Kir Kolyshkin <kir@openvz.org>
        rwlock_t                sk_callback_lock;
 --- a/net/core/sock.c
 +++ b/net/core/sock.c
-@@ -2741,6 +2741,7 @@ void sock_init_data(struct socket *sock,
+@@ -2739,6 +2739,7 @@ void sock_init_data(struct socket *sock,
  
        sk->sk_max_pacing_rate = ~0U;
        sk->sk_pacing_rate = ~0U;
index 5bfa5aa..45dfec1 100644 (file)
@@ -11,7 +11,7 @@ Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
 
 --- a/net/ipv4/netfilter/ipt_CLUSTERIP.c
 +++ b/net/ipv4/netfilter/ipt_CLUSTERIP.c
-@@ -819,6 +819,7 @@ static void clusterip_net_exit(struct ne
+@@ -829,6 +829,7 @@ static void clusterip_net_exit(struct ne
        cn->procdir = NULL;
  #endif
        nf_unregister_net_hook(net, &cip_arp_ops);
@@ -80,7 +80,7 @@ Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
  static void nfnl_queue_net_exit_batch(struct list_head *net_exit_list)
 --- a/net/netfilter/x_tables.c
 +++ b/net/netfilter/x_tables.c
-@@ -1714,8 +1714,17 @@ static int __net_init xt_net_init(struct
+@@ -1719,8 +1719,17 @@ static int __net_init xt_net_init(struct
        return 0;
  }
  
index 07e6e9d..e3af0a0 100644 (file)
@@ -56,7 +56,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
   */
 --- a/include/linux/skbuff.h
 +++ b/include/linux/skbuff.h
-@@ -2494,6 +2494,10 @@ static inline int pskb_trim(struct sk_bu
+@@ -2491,6 +2491,10 @@ static inline int pskb_trim(struct sk_bu
        return (len < skb->len) ? __pskb_trim(skb, len) : 0;
  }
  
@@ -67,7 +67,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
  /**
   *    pskb_trim_unique - remove end from a paged unique (not cloned) buffer
   *    @skb: buffer to alter
-@@ -2624,16 +2628,6 @@ static inline struct sk_buff *dev_alloc_
+@@ -2621,16 +2625,6 @@ static inline struct sk_buff *dev_alloc_
  }
  
  
@@ -128,7 +128,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
  }
 --- a/net/core/skbuff.c
 +++ b/net/core/skbuff.c
-@@ -64,6 +64,7 @@
+@@ -63,6 +63,7 @@
  #include <linux/errqueue.h>
  #include <linux/prefetch.h>
  #include <linux/if_vlan.h>
@@ -136,7 +136,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
  
  #include <net/protocol.h>
  #include <net/dst.h>
-@@ -503,6 +504,22 @@ skb_fail:
+@@ -499,6 +500,22 @@ skb_fail:
  }
  EXPORT_SYMBOL(__napi_alloc_skb);
  
index d854865..29071d6 100644 (file)
@@ -61,7 +61,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
  struct dst_entry *__sk_dst_check(struct sock *sk, u32 cookie)
  {
        struct dst_entry *dst = __sk_dst_get(sk);
-@@ -1597,9 +1609,11 @@ void sk_destruct(struct sock *sk)
+@@ -1595,9 +1607,11 @@ void sk_destruct(struct sock *sk)
  
  static void __sk_free(struct sock *sk)
  {
index c23a8fb..9e33a76 100644 (file)
@@ -232,7 +232,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
                return -ENOMEM;
 --- a/mm/vmalloc.c
 +++ b/mm/vmalloc.c
-@@ -2765,6 +2765,8 @@ static const struct file_operations proc
+@@ -2769,6 +2769,8 @@ static const struct file_operations proc
  
  static int __init proc_vmalloc_init(void)
  {
@@ -327,7 +327,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
  
 --- a/net/core/sock.c
 +++ b/net/core/sock.c
-@@ -3380,6 +3380,8 @@ static __net_initdata struct pernet_oper
+@@ -3378,6 +3378,8 @@ static __net_initdata struct pernet_oper
  
  static int __init proto_init(void)
  {
index fbf9981..43a1483 100644 (file)
@@ -71,7 +71,7 @@ Signed-off-by: Tobias Wolf <dev-NTEO@vplace.de>
 
 --- a/mm/page_alloc.c
 +++ b/mm/page_alloc.c
-@@ -6170,7 +6170,7 @@ static void __ref alloc_node_mem_map(str
+@@ -6156,7 +6156,7 @@ static void __ref alloc_node_mem_map(str
                mem_map = NODE_DATA(0)->node_mem_map;
  #if defined(CONFIG_HAVE_MEMBLOCK_NODE_MAP) || defined(CONFIG_FLATMEM)
                if (page_to_pfn(mem_map) != pgdat->node_start_pfn)
index 69a35c2..3c82a06 100644 (file)
@@ -8,7 +8,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
 
 --- a/init/do_mounts.c
 +++ b/init/do_mounts.c
-@@ -438,7 +438,28 @@ retry:
+@@ -437,7 +437,28 @@ retry:
  out:
        put_page(page);
  }
@@ -38,7 +38,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
  #ifdef CONFIG_ROOT_NFS
  
  #define NFSROOT_TIMEOUT_MIN   5
-@@ -532,6 +553,10 @@ void __init mount_root(void)
+@@ -531,6 +552,10 @@ void __init mount_root(void)
                        change_floppy("root floppy");
        }
  #endif
index 515c69f..8806958 100644 (file)
@@ -9,7 +9,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
 
 --- a/include/linux/skbuff.h
 +++ b/include/linux/skbuff.h
-@@ -2458,7 +2458,7 @@ static inline int pskb_network_may_pull(
+@@ -2455,7 +2455,7 @@ static inline int pskb_network_may_pull(
   * NET_IP_ALIGN(2) + ethernet_header(14) + IP_header(20/40) + ports(8)
   */
  #ifndef NET_SKB_PAD
index fe2d052..34bd452 100644 (file)
@@ -22,7 +22,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
  #endif
 --- a/include/linux/skbuff.h
 +++ b/include/linux/skbuff.h
-@@ -780,6 +780,7 @@ struct sk_buff {
+@@ -777,6 +777,7 @@ struct sk_buff {
        __u8                    tc_redirected:1;
        __u8                    tc_from_ingress:1;
  #endif
diff --git a/target/linux/generic/pending-4.14/821-usb-Remove-annoying-warning-about-bogus-URB.patch b/target/linux/generic/pending-4.14/821-usb-Remove-annoying-warning-about-bogus-URB.patch
deleted file mode 100644 (file)
index c14e679..0000000
+++ /dev/null
@@ -1,76 +0,0 @@
-From: Alexey Brodkin <abrodkin@synopsys.com>
-Subject: usb: Remove annoying warning about bogus URB
-
-When ath9k-htc Wi-Fi dongle is used with generic OHCI controller
-infinite stream of warnings appears in debug console like this:
--------------------------->8----------------------
-usb 1-1: new full-speed USB device number 2 using ohci-platform
-usb 1-1: ath9k_htc: Firmware ath9k_htc/htc_9271-1.4.0.fw requested
-usb 1-1: ath9k_htc: Transferred FW: ath9k_htc/htc_9271-1.4.0.fw, size:
-51008
-------------[ cut here ]------------
-WARNING: CPU: 0 PID: 19 at drivers/usb/core/urb.c:449
-usb_submit_urb+0x1b4/0x498()
-usb 1-1: BOGUS urb xfer, pipe 1 != type 3
-Modules linked in:
-CPU: 0 PID: 19 Comm: kworker/0:1 Not tainted
-4.4.0-rc4-00017-g00e2d79-dirty #3
-Workqueue: events request_firmware_work_func
-
-Stack Trace:
-  arc_unwind_core.constprop.1+0xa4/0x110
----[ end trace 649ef8c342817fc2 ]---
-------------[ cut here ]------------
-WARNING: CPU: 0 PID: 19 at drivers/usb/core/urb.c:449
-usb_submit_urb+0x1b4/0x498()
-usb 1-1: BOGUS urb xfer, pipe 1 != type 3
-Modules linked in:
-CPU: 0 PID: 19 Comm: kworker/0:1 Tainted: G        W
-4.4.0-rc4-00017-g00e2d79-dirty #3
-Workqueue: events request_firmware_work_func
-
-Stack Trace:
-  arc_unwind_core.constprop.1+0xa4/0x110
----[ end trace 649ef8c342817fc3 ]---
-------------[ cut here ]------------
--------------------------->8----------------------
-
-There're some discussions in mailing lists proposing to disable
-that particular check alltogether and magically all seem to work
-fine with muted warning.
-
-Anyways new thread on that regard could be found here:
-http://lists.infradead.org/pipermail/linux-snps-arc/2016-July/001310.html
-
-Let's see what comes out of that new discussion, hopefully patching
-of generic USB stuff won't be required then.
-
-Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
----
- drivers/usb/core/urb.c | 5 -----
- 1 file changed, 5 deletions(-)
-
---- a/drivers/usb/core/urb.c
-+++ b/drivers/usb/core/urb.c
-@@ -326,9 +326,6 @@ EXPORT_SYMBOL_GPL(usb_unanchor_urb);
-  */
- int usb_submit_urb(struct urb *urb, gfp_t mem_flags)
- {
--      static int                      pipetypes[4] = {
--              PIPE_CONTROL, PIPE_ISOCHRONOUS, PIPE_BULK, PIPE_INTERRUPT
--      };
-       int                             xfertype, max;
-       struct usb_device               *dev;
-       struct usb_host_endpoint        *ep;
-@@ -443,11 +440,6 @@ int usb_submit_urb(struct urb *urb, gfp_
-        * cause problems in HCDs if they get it wrong.
-        */
--      /* Check that the pipe's type matches the endpoint's type */
--      if (usb_pipetype(urb->pipe) != pipetypes[xfertype])
--              dev_WARN(&dev->dev, "BOGUS urb xfer, pipe %x != type %x\n",
--                      usb_pipetype(urb->pipe), pipetypes[xfertype]);
--
-       /* Check against a simple/standard policy */
-       allowed = (URB_NO_TRANSFER_DMA_MAP | URB_NO_INTERRUPT | URB_DIR_MASK |
-                       URB_FREE_BUFFER);
index b178a24..adeb9f1 100644 (file)
@@ -31,7 +31,7 @@ Signed-off-by: Imre Kaloz <kaloz@openwrt.org>
        help
 --- a/init/main.c
 +++ b/init/main.c
-@@ -360,6 +360,29 @@ static inline void setup_nr_cpu_ids(void
+@@ -359,6 +359,29 @@ static inline void setup_nr_cpu_ids(void
  static inline void smp_prepare_cpus(unsigned int maxcpus) { }
  #endif
  
@@ -61,7 +61,7 @@ Signed-off-by: Imre Kaloz <kaloz@openwrt.org>
  /*
   * We need to store the untouched command line for future reference.
   * We also need to store the touched command line since the parameter
-@@ -541,6 +564,7 @@ asmlinkage __visible void __init start_k
+@@ -540,6 +563,7 @@ asmlinkage __visible void __init start_k
        add_device_randomness(command_line, strlen(command_line));
        boot_init_stack_canary();
        mm_init_cpumask(&init_mm);
index 9f069e7..47fc2b1 100644 (file)
 +
 --- a/arch/arm/boot/dts/mt7623.dtsi
 +++ b/arch/arm/boot/dts/mt7623.dtsi
-@@ -753,6 +753,7 @@
+@@ -322,6 +322,7 @@
                             "syscon";
-               reg = <0 0x1b000000 0 0x1000>;
+               reg = <0 0x10209000 0 0x1000>;
                #clock-cells = <1>;
 +              #reset-cells = <1>;
        };
  
-       eth: ethernet@1b100000 {
+       rng: rng@1020f000 {
index 8dd3560..1960326 100644 (file)
@@ -49,7 +49,7 @@ Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
  };
 --- a/drivers/net/phy/phylink.c
 +++ b/drivers/net/phy/phylink.c
-@@ -1039,34 +1039,6 @@ int phylink_ethtool_set_pauseparam(struc
+@@ -1040,34 +1040,6 @@ int phylink_ethtool_set_pauseparam(struc
  }
  EXPORT_SYMBOL_GPL(phylink_ethtool_set_pauseparam);
  
@@ -129,7 +129,7 @@ Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
  /* 802.11 specific */
  struct wireless_dev;
  /* 802.15.4 specific */
-@@ -1921,6 +1922,7 @@ struct net_device {
+@@ -1908,6 +1909,7 @@ struct net_device {
        struct netprio_map __rcu *priomap;
  #endif
        struct phy_device       *phydev;
index 3a0e663..7023b57 100644 (file)
@@ -31,4 +31,4 @@ Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
 +              sfp_upstream_stop(pl->netdev->sfp_bus);
  
        set_bit(PHYLINK_DISABLE_STOPPED, &pl->phylink_disable_state);
-       flush_work(&pl->resolve);
+       queue_work(system_power_efficient_wq, &pl->resolve);
index 3c1cd1c..a0462e7 100644 (file)
@@ -14,7 +14,7 @@ Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
 
 --- a/drivers/net/phy/sfp.c
 +++ b/drivers/net/phy/sfp.c
-@@ -1135,6 +1135,7 @@ static int sfp_remove(struct platform_de
+@@ -1137,6 +1137,7 @@ static int sfp_remove(struct platform_de
  
  static const struct of_device_id sfp_of_match[] = {
        { .compatible = "sff,sfp", },
index 528c629..442f318 100644 (file)
@@ -10,7 +10,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
 
 --- a/arch/mips/kernel/setup.c
 +++ b/arch/mips/kernel/setup.c
-@@ -902,7 +902,6 @@ static void __init arch_mem_init(char **
+@@ -910,7 +910,6 @@ static void __init arch_mem_init(char **
                                crashk_res.end - crashk_res.start + 1,
                                BOOTMEM_DEFAULT);
  #endif
@@ -18,7 +18,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
        sparse_init();
        plat_swiotlb_setup();
  
-@@ -1018,6 +1017,7 @@ void __init setup_arch(char **cmdline_p)
+@@ -1026,6 +1025,7 @@ void __init setup_arch(char **cmdline_p)
  
        cpu_cache_init();
        paging_init();