kernel: update kernel 4.9 to version 4.9.232
authorHauke Mehrtens <hauke@hauke-m.de>
Fri, 7 Aug 2020 14:43:18 +0000 (16:43 +0200)
committerHauke Mehrtens <hauke@hauke-m.de>
Sat, 8 Aug 2020 15:20:43 +0000 (17:20 +0200)
821-usb-Remove-annoying-warning-about-bogus-URB.patch does not apply any
more and was also deleted in master and nobody complained. ;-)

Compile and runtime tested on lantiq/xrx200.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
16 files changed:
include/kernel-version.mk
target/linux/ar71xx/patches-4.9/910-unaligned_access_hacks.patch
target/linux/brcm2708/patches-4.9/950-0001-smsx95xx-fix-crimes-against-truesize.patch
target/linux/generic/backport-4.9/024-1-tcp-tsq-add-tsq_flags-tsq_enum.patch
target/linux/generic/backport-4.9/024-2-tcp-tsq-remove-one-locked-operation-in-tcp_wfree.patch
target/linux/generic/backport-4.9/024-3-tcp-tsq-add-shortcut-in-tcp_tasklet_func.patch
target/linux/generic/backport-4.9/024-4-tcp-tsq-avoid-one-atomic-in-tcp_wfree.patch
target/linux/generic/backport-4.9/024-5-tcp-tsq-add-a-shortcut-in-tcp_small_queue_check.patch
target/linux/generic/backport-4.9/024-6-tcp-tcp_mtu_probe-is-likely-to-exit-early.patch
target/linux/generic/backport-4.9/024-8-tcp-tsq-move-tsq_flags-close-to-sk_wmem_alloc.patch
target/linux/generic/backport-4.9/024-9-tcp-add-a-missing-barrier-in-tcp_tasklet_func.patch
target/linux/generic/backport-4.9/025-tcp-allow-drivers-to-tweak-TSQ-logic.patch
target/linux/generic/pending-4.9/821-usb-Remove-annoying-warning-about-bogus-URB.patch [deleted file]
target/linux/lantiq/patches-4.9/0040-USB-DWC2-enable-usb-power-gpio.patch
target/linux/lantiq/patches-4.9/0061-USB-DWC2-make-the-lantiq-settings-match-vendor-drive.patch
target/linux/layerscape/patches-4.9/815-spi-support-layerscape.patch

index 9602912bdb934ff854d4f9c7495c5a982733f50b..07b056fb5b0d0af9961a99c1a8c0e31257b6a3e9 100644 (file)
@@ -2,10 +2,10 @@
 
 LINUX_RELEASE?=1
 
-LINUX_VERSION-4.9 = .229
+LINUX_VERSION-4.9 = .232
 LINUX_VERSION-4.14 = .193
 
-LINUX_KERNEL_HASH-4.9.229 = 3256c2835fd95a1a739603e78b02d363eac2ce73a39fa19b13b32da4fc370fdc
+LINUX_KERNEL_HASH-4.9.232 = 58f472e82345dc719a1d6d7bae01e5aa73387cd83308acd2c92371f7d5bc4f60
 LINUX_KERNEL_HASH-4.14.193 = 0b0fb41d4430e1a42738b341cbfd2f41951aa5cd02acabbd53f076119c8b9f03
 
 remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1))))
index ebf44b21bd414e1cee708cb1f362b4032201ea27..4a235b8d3098eae5f60f6c4391bac00b8303c7d5 100644 (file)
  
 --- a/net/ipv4/tcp_input.c
 +++ b/net/ipv4/tcp_input.c
-@@ -3934,14 +3934,16 @@ static bool tcp_parse_aligned_timestamp(
+@@ -3935,14 +3935,16 @@ static bool tcp_parse_aligned_timestamp(
  {
        const __be32 *ptr = (const __be32 *)(th + 1);
  
index b0de3f211a086a4a429102fc4897a5e79f25aa3b..a563cb9c16bb588daa2c58b20e99422e0d68193f 100644 (file)
@@ -25,7 +25,7 @@ Signed-off-by: Steve Glendinning <steve.glendinning@smsc.com>
  static int __must_check __smsc95xx_read_reg(struct usbnet *dev, u32 index,
                                            u32 *data, int in_pm)
  {
-@@ -1961,7 +1965,8 @@ static int smsc95xx_rx_fixup(struct usbn
+@@ -1968,7 +1972,8 @@ static int smsc95xx_rx_fixup(struct usbn
                                if (dev->net->features & NETIF_F_RXCSUM)
                                        smsc95xx_rx_csum_offload(skb);
                                skb_trim(skb, skb->len - 4); /* remove fcs */
@@ -35,7 +35,7 @@ Signed-off-by: Steve Glendinning <steve.glendinning@smsc.com>
  
                                return 1;
                        }
-@@ -1979,7 +1984,8 @@ static int smsc95xx_rx_fixup(struct usbn
+@@ -1986,7 +1991,8 @@ static int smsc95xx_rx_fixup(struct usbn
                        if (dev->net->features & NETIF_F_RXCSUM)
                                smsc95xx_rx_csum_offload(ax_skb);
                        skb_trim(ax_skb, ax_skb->len - 4); /* remove fcs */
index 853b7d6cc0b855c97cb557dd0920776c3c59034d..63cd4a1adef591fa0205ff5b7fdeb4252e32d1d0 100644 (file)
@@ -18,7 +18,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
 
 --- a/include/linux/tcp.h
 +++ b/include/linux/tcp.h
-@@ -368,7 +368,7 @@ struct tcp_sock {
+@@ -370,7 +370,7 @@ struct tcp_sock {
        u32     *saved_syn;
  };
  
@@ -27,7 +27,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
        TSQ_THROTTLED,
        TSQ_QUEUED,
        TCP_TSQ_DEFERRED,          /* tcp_tasklet_func() found socket was owned */
-@@ -379,6 +379,15 @@ enum tsq_flags {
+@@ -381,6 +381,15 @@ enum tsq_flags {
                                    */
  };
  
@@ -45,7 +45,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
        return (struct tcp_sock *)sk;
 --- a/net/ipv4/tcp_output.c
 +++ b/net/ipv4/tcp_output.c
-@@ -790,10 +790,10 @@ static void tcp_tasklet_func(unsigned lo
+@@ -792,10 +792,10 @@ static void tcp_tasklet_func(unsigned lo
        }
  }
  
@@ -60,7 +60,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
  /**
   * tcp_release_cb - tcp release_sock() callback
   * @sk: socket
-@@ -814,7 +814,7 @@ void tcp_release_cb(struct sock *sk)
+@@ -816,7 +816,7 @@ void tcp_release_cb(struct sock *sk)
                nflags = flags & ~TCP_DEFERRED_ALL;
        } while (cmpxchg(&tp->tsq_flags, flags, nflags) != flags);
  
@@ -69,7 +69,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
                tcp_tsq_handler(sk);
  
        /* Here begins the tricky part :
-@@ -828,15 +828,15 @@ void tcp_release_cb(struct sock *sk)
+@@ -830,15 +830,15 @@ void tcp_release_cb(struct sock *sk)
         */
        sock_release_ownership(sk);
  
index dfd9abf94384d9da0f73ff2deeb965d07e199d92..4eab1fa7d4811ad43e7e1ea0aa71ae23734731b2 100644 (file)
@@ -17,7 +17,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
 
 --- a/net/ipv4/tcp_output.c
 +++ b/net/ipv4/tcp_output.c
-@@ -866,6 +866,7 @@ void tcp_wfree(struct sk_buff *skb)
+@@ -868,6 +868,7 @@ void tcp_wfree(struct sk_buff *skb)
  {
        struct sock *sk = skb->sk;
        struct tcp_sock *tp = tcp_sk(sk);
@@ -25,7 +25,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
        int wmem;
  
        /* Keep one reference on sk_wmem_alloc.
-@@ -883,11 +884,17 @@ void tcp_wfree(struct sk_buff *skb)
+@@ -885,11 +886,17 @@ void tcp_wfree(struct sk_buff *skb)
        if (wmem >= SKB_TRUESIZE(1) && this_cpu_ksoftirqd() == current)
                goto out;
  
index 90979c48b8de0a1cb9f8dd3ee8c030cab0531297..77826176fddaee371d428c27173952acc83527b4 100644 (file)
@@ -22,7 +22,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
 
 --- a/net/ipv4/tcp_output.c
 +++ b/net/ipv4/tcp_output.c
-@@ -773,19 +773,19 @@ static void tcp_tasklet_func(unsigned lo
+@@ -775,19 +775,19 @@ static void tcp_tasklet_func(unsigned lo
        list_for_each_safe(q, n, &list) {
                tp = list_entry(q, struct tcp_sock, tsq_node);
                list_del(&tp->tsq_node);
@@ -51,7 +51,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
                sk_free(sk);
        }
  }
-@@ -890,7 +890,7 @@ void tcp_wfree(struct sk_buff *skb)
+@@ -892,7 +892,7 @@ void tcp_wfree(struct sk_buff *skb)
                if (!(oval & TSQF_THROTTLED) || (oval & TSQF_QUEUED))
                        goto out;
  
@@ -60,7 +60,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
                nval = cmpxchg(&tp->tsq_flags, oval, nval);
                if (nval != oval)
                        continue;
-@@ -2237,6 +2237,8 @@ static bool tcp_write_xmit(struct sock *
+@@ -2239,6 +2239,8 @@ static bool tcp_write_xmit(struct sock *
                    unlikely(tso_fragment(sk, skb, limit, mss_now, gfp)))
                        break;
  
index 2b5ef932de4a4bb29ee2f94f1f8e10b08977093c..aaacda5e141f597305a20bade28d8ee7adb3fe32 100644 (file)
@@ -16,7 +16,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
 
 --- a/net/ipv4/tcp_output.c
 +++ b/net/ipv4/tcp_output.c
-@@ -886,6 +886,7 @@ void tcp_wfree(struct sk_buff *skb)
+@@ -888,6 +888,7 @@ void tcp_wfree(struct sk_buff *skb)
  
        for (oval = READ_ONCE(tp->tsq_flags);; oval = nval) {
                struct tsq_tasklet *tsq;
@@ -24,7 +24,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
  
                if (!(oval & TSQF_THROTTLED) || (oval & TSQF_QUEUED))
                        goto out;
-@@ -898,8 +899,10 @@ void tcp_wfree(struct sk_buff *skb)
+@@ -900,8 +901,10 @@ void tcp_wfree(struct sk_buff *skb)
                /* queue this socket to tasklet queue */
                local_irq_save(flags);
                tsq = this_cpu_ptr(&tsq_tasklet);
index 0156efa65ef28faa8516e3214c5973ec09acfcd3..a2d7680536769cf5c1d1c53d6444af9adc4aa4c5 100644 (file)
@@ -19,7 +19,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
 
 --- a/net/ipv4/tcp_output.c
 +++ b/net/ipv4/tcp_output.c
-@@ -2142,6 +2142,15 @@ static bool tcp_small_queue_check(struct
+@@ -2144,6 +2144,15 @@ static bool tcp_small_queue_check(struct
        limit <<= factor;
  
        if (atomic_read(&sk->sk_wmem_alloc) > limit) {
index 5669b897e7554df272ba3121566436baaabb474e..75118deb86c12616f27a2dad2c54363cc243d348 100644 (file)
@@ -17,7 +17,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
 
 --- a/net/ipv4/tcp_output.c
 +++ b/net/ipv4/tcp_output.c
-@@ -1974,26 +1974,26 @@ static bool tcp_can_coalesce_send_queue_
+@@ -1976,26 +1976,26 @@ static bool tcp_can_coalesce_send_queue_
   */
  static int tcp_mtu_probe(struct sock *sk)
  {
index 4ac95d3ee44ed623d91bf3c38fd13687719b6660..3ebf2755a2e77b4c7d431c10a8bc333d28ca539a 100644 (file)
@@ -58,7 +58,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
                        goto out;
 --- a/net/ipv4/tcp_output.c
 +++ b/net/ipv4/tcp_output.c
-@@ -773,14 +773,15 @@ static void tcp_tasklet_func(unsigned lo
+@@ -775,14 +775,15 @@ static void tcp_tasklet_func(unsigned lo
        list_for_each_safe(q, n, &list) {
                tp = list_entry(q, struct tcp_sock, tsq_node);
                list_del(&tp->tsq_node);
@@ -77,7 +77,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
                                tcp_tsq_handler(sk);
                        }
                        bh_unlock_sock(sk);
-@@ -803,16 +804,15 @@ static void tcp_tasklet_func(unsigned lo
+@@ -805,16 +806,15 @@ static void tcp_tasklet_func(unsigned lo
   */
  void tcp_release_cb(struct sock *sk)
  {
@@ -96,7 +96,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
  
        if (flags & TCPF_TSQ_DEFERRED)
                tcp_tsq_handler(sk);
-@@ -884,7 +884,7 @@ void tcp_wfree(struct sk_buff *skb)
+@@ -886,7 +886,7 @@ void tcp_wfree(struct sk_buff *skb)
        if (wmem >= SKB_TRUESIZE(1) && this_cpu_ksoftirqd() == current)
                goto out;
  
@@ -105,7 +105,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
                struct tsq_tasklet *tsq;
                bool empty;
  
-@@ -892,7 +892,7 @@ void tcp_wfree(struct sk_buff *skb)
+@@ -894,7 +894,7 @@ void tcp_wfree(struct sk_buff *skb)
                        goto out;
  
                nval = (oval & ~TSQF_THROTTLED) | TSQF_QUEUED | TCPF_TSQ_DEFERRED;
@@ -114,7 +114,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
                if (nval != oval)
                        continue;
  
-@@ -2151,7 +2151,7 @@ static bool tcp_small_queue_check(struct
+@@ -2153,7 +2153,7 @@ static bool tcp_small_queue_check(struct
                    skb->prev == sk->sk_write_queue.next)
                        return false;
  
@@ -123,7 +123,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
                /* It is possible TX completion already happened
                 * before we set TSQ_THROTTLED, so we must
                 * test again the condition.
-@@ -2249,8 +2249,8 @@ static bool tcp_write_xmit(struct sock *
+@@ -2251,8 +2251,8 @@ static bool tcp_write_xmit(struct sock *
                    unlikely(tso_fragment(sk, skb, limit, mss_now, gfp)))
                        break;
  
@@ -134,7 +134,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
                if (tcp_small_queue_check(sk, skb, 0))
                        break;
  
-@@ -3569,8 +3569,6 @@ void __tcp_send_ack(struct sock *sk, u32
+@@ -3574,8 +3574,6 @@ void __tcp_send_ack(struct sock *sk, u32
        /* We do not want pure acks influencing TCP Small Queues or fq/pacing
         * too much.
         * SKB_TRUESIZE(max(1 .. 66, MAX_TCP_HEADER)) is unfortunately ~784
index bcdbe8ce39cb3f09603b96f9c79647ad745d4bf9..a6721f26f5780a7dc10353c756c6f52b55ac8c98 100644 (file)
@@ -30,7 +30,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
 
 --- a/net/ipv4/tcp_output.c
 +++ b/net/ipv4/tcp_output.c
-@@ -775,6 +775,7 @@ static void tcp_tasklet_func(unsigned lo
+@@ -777,6 +777,7 @@ static void tcp_tasklet_func(unsigned lo
                list_del(&tp->tsq_node);
  
                sk = (struct sock *)tp;
index 3ba94528ab566e99aa6762fdef03118c7c5a11cb..ff604cdef69dba6937c4ab3f0f3aa257f183182c 100644 (file)
@@ -65,7 +65,7 @@ Cc: Kir Kolyshkin <kir@openvz.org>
         * Before updating sk_refcnt, we must commit prior changes to memory
 --- a/net/ipv4/tcp_output.c
 +++ b/net/ipv4/tcp_output.c
-@@ -1607,7 +1607,7 @@ u32 tcp_tso_autosize(const struct sock *
+@@ -1609,7 +1609,7 @@ u32 tcp_tso_autosize(const struct sock *
  {
        u32 bytes, segs;
  
@@ -74,7 +74,7 @@ Cc: Kir Kolyshkin <kir@openvz.org>
                    sk->sk_gso_max_size - 1 - MAX_TCP_HEADER);
  
        /* Goal is to send at least one packet per ms,
-@@ -2138,7 +2138,7 @@ static bool tcp_small_queue_check(struct
+@@ -2140,7 +2140,7 @@ static bool tcp_small_queue_check(struct
  {
        unsigned int limit;
  
diff --git a/target/linux/generic/pending-4.9/821-usb-Remove-annoying-warning-about-bogus-URB.patch b/target/linux/generic/pending-4.9/821-usb-Remove-annoying-warning-about-bogus-URB.patch
deleted file mode 100644 (file)
index 5fac5e0..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
-@@ -322,9 +322,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;
-@@ -442,11 +439,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 fc6312310e150989687ae2913404e6b3e6e4697f..83b7dc48c806e52d6c3fb5c66d7238fe81c2330a 100644 (file)
@@ -8,7 +8,7 @@
  #include <linux/platform_device.h>
  #include <linux/phy/phy.h>
  #include <linux/platform_data/s3c-hsotg.h>
-@@ -544,6 +545,7 @@ static int dwc2_driver_probe(struct plat
+@@ -545,6 +546,7 @@ static int dwc2_driver_probe(struct plat
        struct dwc2_hsotg *hsotg;
        struct resource *res;
        int retval;
@@ -16,7 +16,7 @@
  
        match = of_match_device(dwc2_of_match_table, &dev->dev);
        if (match && match->data) {
-@@ -562,6 +564,16 @@ static int dwc2_driver_probe(struct plat
+@@ -563,6 +565,16 @@ static int dwc2_driver_probe(struct plat
                defparams.dma_desc_fs_enable = 0;
        }
  
index 4d184439432862e3dac1a60c36352fb2a1c88cbf..580ea277e5f092e636107310e5071c0b8fe6673b 100644 (file)
@@ -114,7 +114,7 @@ Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
        .uframe_sched                   = -1,
        .external_id_pin_ctl            = -1,
        .hibernation                    = -1,
-@@ -515,8 +575,11 @@ static const struct of_device_id dwc2_of
+@@ -516,8 +576,11 @@ static const struct of_device_id dwc2_of
        { .compatible = "brcm,bcm2835-usb", .data = &params_bcm2835 },
        { .compatible = "hisilicon,hi6220-usb", .data = &params_hi6220 },
        { .compatible = "rockchip,rk3066-usb", .data = &params_rk3066 },
index b798a366b0f9023e0950d16394e07e1663c7d226..4d22c8bbf46bc6d5b388d1ca855f06c830d0a54c 100644 (file)
@@ -35,7 +35,7 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
  #define SPI_MCR_MASTER                (1 << 31)
 @@ -72,6 +75,11 @@
  #define SPI_SR_TCFQF          0x80000000
- #define SPI_SR_CLEAR          0xdaad0000
+ #define SPI_SR_CLEAR          0x9aaf0000
  
 +#define SPI_RSER_TFFFE                BIT(25)
 +#define SPI_RSER_TFFFD                BIT(24)