kernel: bump 6.1 to 6.1.59
authorJohn Audia <therealgraysky@proton.me>
Fri, 20 Oct 2023 08:15:03 +0000 (04:15 -0400)
committerNick Hainke <vincent@systemli.org>
Sat, 21 Oct 2023 07:33:12 +0000 (09:33 +0200)
Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.1.59

Manually rebased:
bcm27xx/patches-6.1/950-0124-Add-support-for-all-the-downstream-rpi-sound-card-dr.patch

Removed upstreamed:
generic/backport-6.1/781-v6.6-02-net-dsa-qca8k-fix-potential-MDIO-bus-conflict-when-a.patch[1]

All other patches automatically rebased.

1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.1.59&id=881050b25b1dda7b0f14d40d1b09bf38cb3b427c

Build system: x86/64
Build-tested: x86/64/AMD Cezanne
Run-tested: x86/64/AMD Cezanne

Signed-off-by: John Audia <therealgraysky@proton.me>
19 files changed:
include/kernel-6.1
target/linux/ath79/patches-6.1/900-unaligned_access_hacks.patch
target/linux/bcm27xx/patches-6.1/950-0005-drm-atomic-Don-t-fixup-modes-that-haven-t-been-reset.patch
target/linux/bcm27xx/patches-6.1/950-0045-drm-atomic-helpers-remove-legacy_cursor_update-hacks.patch
target/linux/bcm27xx/patches-6.1/950-0106-Add-dwc_otg-driver.patch
target/linux/bcm27xx/patches-6.1/950-0124-Add-support-for-all-the-downstream-rpi-sound-card-dr.patch
target/linux/bcm27xx/patches-6.1/950-0689-input-goodix-Add-option-to-poll-instead-of-relying-o.patch
target/linux/generic/backport-6.1/777-v6.2-05-net-dsa-qca8k-improve-mdio-master-read-write-by-usin.patch
target/linux/generic/backport-6.1/778-v6.3-02-net-dsa-qca8k-convert-to-regmap-read-write-API.patch
target/linux/generic/backport-6.1/780-v6.6-01-net-dsa-qca8k-make-learning-configurable-and-keep-of.patch
target/linux/generic/backport-6.1/780-v6.6-02-net-dsa-qca8k-limit-user-ports-access-to-the-first-C.patch
target/linux/generic/backport-6.1/780-v6.6-03-net-dsa-qca8k-move-qca8xxx-hol-fixup-to-separate-fun.patch
target/linux/generic/backport-6.1/780-v6.6-04-net-dsa-qca8k-use-dsa_for_each-macro-instead-of-for-.patch
target/linux/generic/backport-6.1/781-v6.6-02-net-dsa-qca8k-fix-potential-MDIO-bus-conflict-when-a.patch [deleted file]
target/linux/generic/hack-6.1/721-net-add-packet-mangeling.patch
target/linux/generic/pending-6.1/680-NET-skip-GRO-for-foreign-MAC-addresses.patch
target/linux/generic/pending-6.1/760-net-core-add-optional-threading-for-backlog-processi.patch
target/linux/generic/pending-6.1/834-ledtrig-libata.patch
target/linux/ipq806x/patches-6.1/700-01-net-introduce-napi_is_scheduled-helper.patch

index ae0ed271c0e937ecede6bcc3e29277385feb8782..ccc3bd85dcf50d5cd4a46c26898a975ee584fb70 100644 (file)
@@ -1,2 +1,2 @@
-LINUX_VERSION-6.1 = .58
-LINUX_KERNEL_HASH-6.1.58 = ce987ed3d2f640b3a2a62a0a8573d538a36dfd3cc31e2d7a239ce5a16c1c21ad
+LINUX_VERSION-6.1 = .59
+LINUX_KERNEL_HASH-6.1.59 = 627f7724c675036639290fb5c39e3fdeb3d566b80b192c45f4a808ab54c8c0a0
index c919a8f2631bcbed44559c0fe65edf2960ffba37..2d35ae1d34f5982853470bd6e38336f7849ba052 100644 (file)
@@ -349,7 +349,7 @@ SVN-Revision: 35130
        list_for_each_entry(p, head, list) {
 --- a/net/ipv4/tcp_output.c
 +++ b/net/ipv4/tcp_output.c
-@@ -610,48 +610,53 @@ static void tcp_options_write(struct tcp
+@@ -612,48 +612,53 @@ static void tcp_options_write(struct tcp
        u16 options = opts->options;    /* mungable copy */
  
        if (unlikely(OPTION_MD5 & options)) {
@@ -426,7 +426,7 @@ SVN-Revision: 35130
        }
  
        if (unlikely(opts->num_sack_blocks)) {
-@@ -659,16 +664,17 @@ static void tcp_options_write(struct tcp
+@@ -661,16 +666,17 @@ static void tcp_options_write(struct tcp
                        tp->duplicate_sack : tp->selective_acks;
                int this_sack;
  
@@ -450,7 +450,7 @@ SVN-Revision: 35130
                }
  
                tp->rx_opt.dsack = 0;
-@@ -681,13 +687,14 @@ static void tcp_options_write(struct tcp
+@@ -683,13 +689,14 @@ static void tcp_options_write(struct tcp
  
                if (foc->exp) {
                        len = TCPOLEN_EXP_FASTOPEN_BASE + foc->len;
index 0de0b474f327acc4f47ff17b6ad3ca4b73608e7d..0682961157839f67182d60690b641a77b1c21017 100644 (file)
@@ -10,7 +10,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
 
 --- a/drivers/gpu/drm/drm_atomic_helper.c
 +++ b/drivers/gpu/drm/drm_atomic_helper.c
-@@ -438,6 +438,11 @@ mode_fixup(struct drm_atomic_state *stat
+@@ -443,6 +443,11 @@ mode_fixup(struct drm_atomic_state *stat
                new_crtc_state =
                        drm_atomic_get_new_crtc_state(state, new_conn_state->crtc);
  
index 9d4b5571e2cb16754b03af11a24ca1e3f9fcb8ee..178d0c514e02f507e8a05bd53cd6dd7c534adfbb 100644 (file)
@@ -59,7 +59,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
 
 --- a/drivers/gpu/drm/drm_atomic_helper.c
 +++ b/drivers/gpu/drm/drm_atomic_helper.c
-@@ -1617,13 +1617,6 @@ drm_atomic_helper_wait_for_vblanks(struc
+@@ -1626,13 +1626,6 @@ drm_atomic_helper_wait_for_vblanks(struc
        int i, ret;
        unsigned int crtc_mask = 0;
  
@@ -73,7 +73,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
        for_each_oldnew_crtc_in_state(old_state, crtc, old_crtc_state, new_crtc_state, i) {
                if (!new_crtc_state->active)
                        continue;
-@@ -2273,12 +2266,6 @@ int drm_atomic_helper_setup_commit(struc
+@@ -2282,12 +2275,6 @@ int drm_atomic_helper_setup_commit(struc
                        complete_all(&commit->flip_done);
                        continue;
                }
index 7eadf3f50962cbbe371d48378726573ca1474f0e..635e864f99b5c6639b2ba37fb92220efb250df77 100644 (file)
@@ -1185,7 +1185,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
  }
 --- a/drivers/usb/core/hub.c
 +++ b/drivers/usb/core/hub.c
-@@ -5636,7 +5636,7 @@ static void port_event(struct usb_hub *h
+@@ -5655,7 +5655,7 @@ static void port_event(struct usb_hub *h
                port_dev->over_current_count++;
                port_over_current_notify(port_dev);
  
index 79c281ade2ebb89a272df652617130c58dd427a1..c5e90fc8601b9970626584ccd23a1fae5d775c90 100644 (file)
@@ -17615,12 +17615,12 @@ Signed-off-by: Ashish Vara <ashishhvara@gmail.com>
         * For devices with more than one control interface, we assume the
 --- a/sound/usb/quirks.c
 +++ b/sound/usb/quirks.c
-@@ -2171,6 +2171,8 @@ static const struct usb_audio_quirk_flag
+@@ -2175,6 +2175,8 @@ static const struct usb_audio_quirk_flag
                   QUIRK_FLAG_FIXED_RATE),
        DEVICE_FLG(0x0ecb, 0x2069, /* JBL Quantum810 Wireless */
                   QUIRK_FLAG_FIXED_RATE),
 +      DEVICE_FLG(0x09da, 0x2695, /* A4Tech FHD 1080p webcam */
 +                 QUIRK_FLAG_DISABLE_AUTOSUSPEND | QUIRK_FLAG_GET_SAMPLE_RATE),
+       DEVICE_FLG(0x1bcf, 0x2283, /* NexiGo N930AF FHD Webcam */
+                  QUIRK_FLAG_GET_SAMPLE_RATE),
  
-       /* Vendor matches */
-       VENDOR_FLG(0x045e, /* MS Lifecam */
index 008bdf36da70ab9bc1449a72a7c48d69088b6436..23877809ff0d4ae9b9d08e31aaccdb3035679a68 100644 (file)
@@ -96,7 +96,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
  }
  
  static int goodix_check_cfg_8(struct goodix_ts_data *ts, const u8 *cfg, int len)
-@@ -1406,6 +1459,11 @@ static void goodix_ts_remove(struct i2c_
+@@ -1425,6 +1478,11 @@ static void goodix_ts_remove(struct i2c_
  {
        struct goodix_ts_data *ts = i2c_get_clientdata(client);
  
@@ -108,7 +108,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
        if (ts->load_cfg_from_disk)
                wait_for_completion(&ts->firmware_loading_complete);
  }
-@@ -1421,7 +1479,7 @@ static int __maybe_unused goodix_suspend
+@@ -1440,7 +1498,7 @@ static int __maybe_unused goodix_suspend
  
        /* We need gpio pins to suspend/resume */
        if (ts->irq_pin_access_method == IRQ_PIN_ACCESS_NONE) {
@@ -117,7 +117,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
                return 0;
        }
  
-@@ -1465,7 +1523,7 @@ static int __maybe_unused goodix_resume(
+@@ -1484,7 +1542,7 @@ static int __maybe_unused goodix_resume(
        int error;
  
        if (ts->irq_pin_access_method == IRQ_PIN_ACCESS_NONE) {
index ea34901472dd717f9d6711ab54890614788e22fe..dcafad0fd5edfa09560411da151d0fcf22da3d8f 100644 (file)
@@ -28,7 +28,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
 
 --- a/drivers/net/dsa/qca/qca8k-8xxx.c
 +++ b/drivers/net/dsa/qca/qca8k-8xxx.c
-@@ -743,9 +743,9 @@ qca8k_mdio_busy_wait(struct mii_bus *bus
+@@ -754,9 +754,9 @@ qca8k_mdio_busy_wait(struct mii_bus *bus
  
        qca8k_split_addr(reg, &r1, &r2, &page);
  
@@ -40,7 +40,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
  
        /* Check if qca8k_read has failed for a different reason
         * before returnting -ETIMEDOUT
-@@ -787,7 +787,7 @@ qca8k_mdio_write(struct qca8k_priv *priv
+@@ -798,7 +798,7 @@ qca8k_mdio_write(struct qca8k_priv *priv
  
  exit:
        /* even if the busy_wait timeouts try to clear the MASTER_EN */
@@ -49,7 +49,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
  
        mutex_unlock(&bus->mdio_lock);
  
-@@ -817,18 +817,18 @@ qca8k_mdio_read(struct qca8k_priv *priv,
+@@ -828,18 +828,18 @@ qca8k_mdio_read(struct qca8k_priv *priv,
        if (ret)
                goto exit;
  
index f66149ae37dc6584841616dc4bf9c0e2e3a94101..0a631a09c1daa5a43e6e3aebf3262e093f3ba561 100644 (file)
@@ -168,7 +168,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
  };
  
  static int
-@@ -2091,8 +2147,6 @@ static SIMPLE_DEV_PM_OPS(qca8k_pm_ops,
+@@ -2102,8 +2158,6 @@ static SIMPLE_DEV_PM_OPS(qca8k_pm_ops,
  
  static const struct qca8k_info_ops qca8xxx_ops = {
        .autocast_mib = qca8k_get_ethtool_stats_eth,
index b1c0a32e1bf5269b517c3c35b958c0f34598591f..6e93491a1278d42fdb99d0d4dc00675853564eb5 100644 (file)
@@ -32,7 +32,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
 
 --- a/drivers/net/dsa/qca/qca8k-8xxx.c
 +++ b/drivers/net/dsa/qca/qca8k-8xxx.c
-@@ -1883,9 +1883,8 @@ qca8k_setup(struct dsa_switch *ds)
+@@ -1894,9 +1894,8 @@ qca8k_setup(struct dsa_switch *ds)
                        if (ret)
                                return ret;
  
@@ -44,7 +44,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
                        if (ret)
                                return ret;
  
-@@ -1991,6 +1990,8 @@ static const struct dsa_switch_ops qca8k
+@@ -2002,6 +2001,8 @@ static const struct dsa_switch_ops qca8k
        .port_change_mtu        = qca8k_port_change_mtu,
        .port_max_mtu           = qca8k_port_max_mtu,
        .port_stp_state_set     = qca8k_port_stp_state_set,
index b430d2f7922817e256b036217c1937d36b3ea38f..fdb3a8cdb9486bc5bdab765715a99a75b26793ae 100644 (file)
@@ -26,7 +26,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
 
 --- a/drivers/net/dsa/qca/qca8k-8xxx.c
 +++ b/drivers/net/dsa/qca/qca8k-8xxx.c
-@@ -1863,18 +1863,16 @@ qca8k_setup(struct dsa_switch *ds)
+@@ -1874,18 +1874,16 @@ qca8k_setup(struct dsa_switch *ds)
        if (ret)
                return ret;
  
index 9423c4b6047f4b285c8ad11cbd952f14d9245f0f..c789fdf05ee7ccacc655f5d62869f41b799dff3d 100644 (file)
@@ -17,7 +17,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
 
 --- a/drivers/net/dsa/qca/qca8k-8xxx.c
 +++ b/drivers/net/dsa/qca/qca8k-8xxx.c
-@@ -1773,6 +1773,46 @@ static int qca8k_connect_tag_protocol(st
+@@ -1784,6 +1784,46 @@ static int qca8k_connect_tag_protocol(st
        return 0;
  }
  
@@ -64,7 +64,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
  static int
  qca8k_setup(struct dsa_switch *ds)
  {
-@@ -1908,42 +1948,8 @@ qca8k_setup(struct dsa_switch *ds)
+@@ -1919,42 +1959,8 @@ qca8k_setup(struct dsa_switch *ds)
                 * missing settings to improve switch stability under load condition.
                 * This problem is limited to qca8337 and other qca8k switch are not affected.
                 */
index 60de71096522cf3713bc913bdefe49cc08e501bf..4f9581235db18c64a249abff6899a21e884b426a 100644 (file)
@@ -17,7 +17,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
 
 --- a/drivers/net/dsa/qca/qca8k-8xxx.c
 +++ b/drivers/net/dsa/qca/qca8k-8xxx.c
-@@ -1817,7 +1817,8 @@ static int
+@@ -1828,7 +1828,8 @@ static int
  qca8k_setup(struct dsa_switch *ds)
  {
        struct qca8k_priv *priv = (struct qca8k_priv *)ds->priv;
@@ -27,7 +27,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
        u32 mask;
  
        cpu_port = qca8k_find_cpu_port(ds);
-@@ -1868,27 +1869,27 @@ qca8k_setup(struct dsa_switch *ds)
+@@ -1879,27 +1880,27 @@ qca8k_setup(struct dsa_switch *ds)
                dev_warn(priv->dev, "mib init failed");
  
        /* Initial setup of all ports */
@@ -70,7 +70,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
        }
  
        /* Forward all unknown frames to CPU port for Linux processing
-@@ -1910,48 +1911,48 @@ qca8k_setup(struct dsa_switch *ds)
+@@ -1921,48 +1922,48 @@ qca8k_setup(struct dsa_switch *ds)
                return ret;
  
        /* Setup connection between CPU port & user ports
diff --git a/target/linux/generic/backport-6.1/781-v6.6-02-net-dsa-qca8k-fix-potential-MDIO-bus-conflict-when-a.patch b/target/linux/generic/backport-6.1/781-v6.6-02-net-dsa-qca8k-fix-potential-MDIO-bus-conflict-when-a.patch
deleted file mode 100644 (file)
index fc573cc..0000000
+++ /dev/null
@@ -1,106 +0,0 @@
-From 526c8ee04bdbd4d8d19a583b1f3b06700229a815 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Marek=20Beh=C3=BAn?= <kabel@kernel.org>
-Date: Wed, 4 Oct 2023 11:19:04 +0200
-Subject: [PATCH 2/2] net: dsa: qca8k: fix potential MDIO bus conflict when
- accessing internal PHYs via management frames
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Besides the QCA8337 switch the Turris 1.x device has on it's MDIO bus
-also Micron ethernet PHY (dedicated to the WAN port).
-
-We've been experiencing a strange behavior of the WAN ethernet
-interface, wherein the WAN PHY started timing out the MDIO accesses, for
-example when the interface was brought down and then back up.
-
-Bisecting led to commit 2cd548566384 ("net: dsa: qca8k: add support for
-phy read/write with mgmt Ethernet"), which added support to access the
-QCA8337 switch's internal PHYs via management ethernet frames.
-
-Connecting the MDIO bus pins onto an oscilloscope, I was able to see
-that the MDIO bus was active whenever a request to read/write an
-internal PHY register was done via an management ethernet frame.
-
-My theory is that when the switch core always communicates with the
-internal PHYs via the MDIO bus, even when externally we request the
-access via ethernet. This MDIO bus is the same one via which the switch
-and internal PHYs are accessible to the board, and the board may have
-other devices connected on this bus. An ASCII illustration may give more
-insight:
-
-           +---------+
-      +----|         |
-      |    | WAN PHY |
-      | +--|         |
-      | |  +---------+
-      | |
-      | |  +----------------------------------+
-      | |  | QCA8337                          |
-MDC   | |  |                        +-------+ |
-------o-+--|--------o------------o--|       | |
-MDIO    |  |        |            |  | PHY 1 |-|--to RJ45
---------o--|---o----+---------o--+--|       | |
-           |   |    |         |  |  +-------+ |
-          | +-------------+  |  o--|       | |
-          | | MDIO MDC    |  |  |  | PHY 2 |-|--to RJ45
-eth1      | |             |  o--+--|       | |
------------|-|port0        |  |  |  +-------+ |
-           | |             |  |  o--|       | |
-          | | switch core |  |  |  | PHY 3 |-|--to RJ45
-           | +-------------+  o--+--|       | |
-          |                  |  |  +-------+ |
-          |                  |  o--|  ...  | |
-          +----------------------------------+
-
-When we send a request to read an internal PHY register via an ethernet
-management frame via eth1, the switch core receives the ethernet frame
-on port 0 and then communicates with the internal PHY via MDIO. At this
-time, other potential devices, such as the WAN PHY on Turris 1.x, cannot
-use the MDIO bus, since it may cause a bus conflict.
-
-Fix this issue by locking the MDIO bus even when we are accessing the
-PHY registers via ethernet management frames.
-
-Fixes: 2cd548566384 ("net: dsa: qca8k: add support for phy read/write with mgmt Ethernet")
-Signed-off-by: Marek BehĂșn <kabel@kernel.org>
-Reviewed-by: Christian Marangi <ansuelsmth@gmail.com>
-Signed-off-by: David S. Miller <davem@davemloft.net>
----
- drivers/net/dsa/qca/qca8k-8xxx.c | 11 +++++++++++
- 1 file changed, 11 insertions(+)
-
---- a/drivers/net/dsa/qca/qca8k-8xxx.c
-+++ b/drivers/net/dsa/qca/qca8k-8xxx.c
-@@ -665,6 +665,15 @@ qca8k_phy_eth_command(struct qca8k_priv
-               goto err_read_skb;
-       }
-+      /* It seems that accessing the switch's internal PHYs via management
-+       * packets still uses the MDIO bus within the switch internally, and
-+       * these accesses can conflict with external MDIO accesses to other
-+       * devices on the MDIO bus.
-+       * We therefore need to lock the MDIO bus onto which the switch is
-+       * connected.
-+       */
-+      mutex_lock(&priv->bus->mdio_lock);
-+
-       /* Actually start the request:
-        * 1. Send mdio master packet
-        * 2. Busy Wait for mdio master command
-@@ -677,6 +686,7 @@ qca8k_phy_eth_command(struct qca8k_priv
-       mgmt_master = priv->mgmt_master;
-       if (!mgmt_master) {
-               mutex_unlock(&mgmt_eth_data->mutex);
-+              mutex_unlock(&priv->bus->mdio_lock);
-               ret = -EINVAL;
-               goto err_mgmt_master;
-       }
-@@ -764,6 +774,7 @@ exit:
-                                   QCA8K_ETHERNET_TIMEOUT);
-       mutex_unlock(&mgmt_eth_data->mutex);
-+      mutex_unlock(&priv->bus->mdio_lock);
-       return ret;
index dd9ca868a2e7ae549f657dc261bca829403c7ce3..f083a8f0a146c297c36b6cdc431faac7dbd32e79 100644 (file)
@@ -105,7 +105,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
        help
 --- a/net/core/dev.c
 +++ b/net/core/dev.c
-@@ -3575,6 +3575,11 @@ static int xmit_one(struct sk_buff *skb,
+@@ -3579,6 +3579,11 @@ static int xmit_one(struct sk_buff *skb,
        if (dev_nit_active(dev))
                dev_queue_xmit_nit(skb, dev);
  
index 062b3e82b50209e61154cf966577a59d124abc83..2960385a6d09feb4e6558b07f70bca3917f18ce2 100644 (file)
@@ -44,7 +44,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
  
 --- a/net/core/dev.c
 +++ b/net/core/dev.c
-@@ -7593,6 +7593,48 @@ static void __netdev_adjacent_dev_unlink
+@@ -7597,6 +7597,48 @@ static void __netdev_adjacent_dev_unlink
                                           &upper_dev->adj_list.lower);
  }
  
@@ -93,7 +93,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
  static int __netdev_upper_dev_link(struct net_device *dev,
                                   struct net_device *upper_dev, bool master,
                                   void *upper_priv, void *upper_info,
-@@ -7644,6 +7686,7 @@ static int __netdev_upper_dev_link(struc
+@@ -7648,6 +7690,7 @@ static int __netdev_upper_dev_link(struc
        if (ret)
                return ret;
  
@@ -101,7 +101,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
        ret = call_netdevice_notifiers_info(NETDEV_CHANGEUPPER,
                                            &changeupper_info.info);
        ret = notifier_to_errno(ret);
-@@ -7740,6 +7783,7 @@ static void __netdev_upper_dev_unlink(st
+@@ -7744,6 +7787,7 @@ static void __netdev_upper_dev_unlink(st
  
        __netdev_adjacent_dev_unlink_neighbour(dev, upper_dev);
  
@@ -109,7 +109,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
        call_netdevice_notifiers_info(NETDEV_CHANGEUPPER,
                                      &changeupper_info.info);
  
-@@ -8792,6 +8836,7 @@ int dev_set_mac_address(struct net_devic
+@@ -8796,6 +8840,7 @@ int dev_set_mac_address(struct net_devic
        if (err)
                return err;
        dev->addr_assign_type = NET_ADDR_SET;
index 1c9ad551aad1cc2dd7c743f9595ead673586942e..cdd98cb2038c32a4990978edd164e97c7aab2ed8 100644 (file)
@@ -30,7 +30,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
  #endif
 --- a/net/core/dev.c
 +++ b/net/core/dev.c
-@@ -4593,7 +4593,7 @@ static int napi_schedule_rps(struct soft
+@@ -4597,7 +4597,7 @@ static int napi_schedule_rps(struct soft
        struct softnet_data *mysd = this_cpu_ptr(&softnet_data);
  
  #ifdef CONFIG_RPS
@@ -39,7 +39,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
                sd->rps_ipi_next = mysd->rps_ipi_list;
                mysd->rps_ipi_list = sd;
  
-@@ -5774,6 +5774,8 @@ static DEFINE_PER_CPU(struct work_struct
+@@ -5778,6 +5778,8 @@ static DEFINE_PER_CPU(struct work_struct
  /* Network device is going away, flush any packets still pending */
  static void flush_backlog(struct work_struct *work)
  {
@@ -48,7 +48,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
        struct sk_buff *skb, *tmp;
        struct softnet_data *sd;
  
-@@ -5788,8 +5790,17 @@ static void flush_backlog(struct work_st
+@@ -5792,8 +5794,17 @@ static void flush_backlog(struct work_st
                        input_queue_head_incr(sd);
                }
        }
@@ -66,7 +66,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
        skb_queue_walk_safe(&sd->process_queue, skb, tmp) {
                if (skb->dev->reg_state == NETREG_UNREGISTERING) {
                        __skb_unlink(skb, &sd->process_queue);
-@@ -5797,7 +5808,16 @@ static void flush_backlog(struct work_st
+@@ -5801,7 +5812,16 @@ static void flush_backlog(struct work_st
                        input_queue_head_incr(sd);
                }
        }
@@ -83,7 +83,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
  }
  
  static bool flush_required(int cpu)
-@@ -5929,6 +5949,7 @@ static int process_backlog(struct napi_s
+@@ -5933,6 +5953,7 @@ static int process_backlog(struct napi_s
                }
  
                rps_lock_irq_disable(sd);
@@ -91,7 +91,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
                if (skb_queue_empty(&sd->input_pkt_queue)) {
                        /*
                         * Inline a custom version of __napi_complete().
-@@ -5938,7 +5959,8 @@ static int process_backlog(struct napi_s
+@@ -5942,7 +5963,8 @@ static int process_backlog(struct napi_s
                         * We can use a plain write instead of clear_bit(),
                         * and we dont need an smp_mb() memory barrier.
                         */
@@ -101,7 +101,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
                        again = false;
                } else {
                        skb_queue_splice_tail_init(&sd->input_pkt_queue,
-@@ -6354,6 +6376,55 @@ int dev_set_threaded(struct net_device *
+@@ -6358,6 +6380,55 @@ int dev_set_threaded(struct net_device *
  }
  EXPORT_SYMBOL(dev_set_threaded);
  
@@ -157,7 +157,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
  void netif_napi_add_weight(struct net_device *dev, struct napi_struct *napi,
                           int (*poll)(struct napi_struct *, int), int weight)
  {
-@@ -11126,6 +11197,9 @@ static int dev_cpu_dead(unsigned int old
+@@ -11130,6 +11201,9 @@ static int dev_cpu_dead(unsigned int old
        raise_softirq_irqoff(NET_TX_SOFTIRQ);
        local_irq_enable();
  
@@ -167,7 +167,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
  #ifdef CONFIG_RPS
        remsd = oldsd->rps_ipi_list;
        oldsd->rps_ipi_list = NULL;
-@@ -11429,6 +11503,7 @@ static int __init net_dev_init(void)
+@@ -11433,6 +11507,7 @@ static int __init net_dev_init(void)
                INIT_CSD(&sd->defer_csd, trigger_rx_softirq, sd);
                spin_lock_init(&sd->defer_lock);
  
index e9339c22068d82aeece004fc91af68473bde721b..930610c7e51315cf1cfb719b1afccea7dfa826c8 100644 (file)
@@ -65,7 +65,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
  /**
   *    ata_build_rw_tf - Build ATA taskfile for given read/write request
   *    @qc: Metadata associated with the taskfile to build
-@@ -4622,6 +4635,9 @@ void __ata_qc_complete(struct ata_queued
+@@ -4712,6 +4725,9 @@ void __ata_qc_complete(struct ata_queued
                link->active_tag = ATA_TAG_POISON;
                ap->nr_active_links--;
        }
@@ -75,7 +75,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
  
        /* clear exclusive status */
        if (unlikely(qc->flags & ATA_QCFLAG_CLEAR_EXCL &&
-@@ -5344,6 +5360,9 @@ struct ata_port *ata_port_alloc(struct a
+@@ -5434,6 +5450,9 @@ struct ata_port *ata_port_alloc(struct a
        ap->stats.unhandled_irq = 1;
        ap->stats.idle_irq = 1;
  #endif
@@ -85,7 +85,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
        ata_sff_port_init(ap);
  
        return ap;
-@@ -5379,6 +5398,12 @@ static void ata_host_release(struct kref
+@@ -5469,6 +5488,12 @@ static void ata_host_release(struct kref
  
                kfree(ap->pmp_link);
                kfree(ap->slave_link);
@@ -98,7 +98,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
                kfree(ap);
                host->ports[i] = NULL;
        }
-@@ -5781,7 +5806,23 @@ int ata_host_register(struct ata_host *h
+@@ -5871,7 +5896,23 @@ int ata_host_register(struct ata_host *h
                host->ports[i]->print_id = atomic_inc_return(&ata_print_id);
                host->ports[i]->local_port_no = i + 1;
        }
@@ -134,7 +134,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
  
  /*
   * Define if arch has non-standard setup.  This is a _PCI_ standard
-@@ -861,6 +864,12 @@ struct ata_port {
+@@ -864,6 +867,12 @@ struct ata_port {
  #ifdef CONFIG_ATA_ACPI
        struct ata_acpi_gtm     __acpi_init_gtm; /* use ata_acpi_init_gtm() */
  #endif
index 9694bf1144fd413bd87457aa65b271a58d831943..a9bcb0aa4593cd0ef2c7c008092f07662510738b 100644 (file)
@@ -66,7 +66,7 @@ Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
  /**
 --- a/net/core/dev.c
 +++ b/net/core/dev.c
-@@ -6562,7 +6562,7 @@ static int __napi_poll(struct napi_struc
+@@ -6566,7 +6566,7 @@ static int __napi_poll(struct napi_struc
         * accidentally calling ->poll() when NAPI is not scheduled.
         */
        work = 0;