kernel: bump 6.6 to 6.6.59

Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.59

Removed upstreamed:
 - generic/backport-6.6/777-netfilter-xtables-fix-typo-causing-some-targets-to-not-load-on-IPv6.patch[1]
 - generic/backport-6.6/780-24-v6.12-r8169-avoid-unsolicited-interrupts.patch[2]

All other patches automatically rebased.

1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.59&id=433742ba96baf30c21e654ce3e698ad87100593b
2. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.59&id=7d6d46b429804b1a182106e27e2f8c0e84689e1a

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/16835
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
This commit is contained in:
Mieczyslaw Nalewaj 2024-11-03 08:53:37 +01:00 committed by Hauke Mehrtens
parent 8508d87495
commit 4fc47c6000
25 changed files with 32 additions and 114 deletions

View File

@ -1,2 +1,2 @@
LINUX_VERSION-6.6 = .58
LINUX_KERNEL_HASH-6.6.58 = e7df81e588d70fab5ec3ec3bb04ac53d51f0860fc3b1ec45e0a4167a026899db
LINUX_VERSION-6.6 = .59
LINUX_KERNEL_HASH-6.6.59 = 23616808d8c08f12815ff898f4edb4c11397a2b2843d029ee62452d21833a76d

View File

@ -52,7 +52,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
erst_base = xhci_read_64(xhci, &ir->ir_set->erst_base);
--- a/drivers/usb/host/xhci.h
+++ b/drivers/usb/host/xhci.h
@@ -1681,8 +1681,9 @@ struct urb_priv {
@@ -1425,8 +1425,9 @@ struct urb_priv {
* Each segment table entry is 4*32bits long. 1K seems like an ok size:
* (1K bytes * 8bytes/bit) / (4*32 bits) = 64 segment entries in the table,
* meaning 64 ring segments.

View File

@ -52,7 +52,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
addr = xhci_trb_virt_to_dma(new_seg, new_deq);
--- a/drivers/usb/host/xhci.h
+++ b/drivers/usb/host/xhci.h
@@ -1918,6 +1918,9 @@ struct xhci_hcd {
@@ -1662,6 +1662,9 @@ struct xhci_hcd {
#define XHCI_WRITE_64_HI_LO BIT_ULL(47)
#define XHCI_CDNS_SCTX_QUIRK BIT_ULL(48)

View File

@ -100,7 +100,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
if (pdev->vendor == PCI_VENDOR_ID_ASMEDIA &&
--- a/drivers/usb/host/xhci.h
+++ b/drivers/usb/host/xhci.h
@@ -1920,6 +1920,7 @@ struct xhci_hcd {
@@ -1664,6 +1664,7 @@ struct xhci_hcd {
/* Downstream VLI fixes */
#define XHCI_AVOID_DQ_ON_LINK BIT_ULL(56)

View File

@ -144,7 +144,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
return 0;
--- a/drivers/usb/host/xhci.h
+++ b/drivers/usb/host/xhci.h
@@ -1921,6 +1921,7 @@ struct xhci_hcd {
@@ -1665,6 +1665,7 @@ struct xhci_hcd {
/* Downstream VLI fixes */
#define XHCI_AVOID_DQ_ON_LINK BIT_ULL(56)
#define XHCI_VLI_SS_BULK_OUT_BUG BIT_ULL(57)

View File

@ -341,7 +341,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
* @hsphy_interface: "utmi" or "ulpi"
* @connected: true when we're connected to a host, false otherwise
* @softconnect: true when gadget connect is called, false when disconnect runs
@@ -1296,6 +1300,7 @@ struct dwc3 {
@@ -1298,6 +1302,7 @@ struct dwc3 {
u8 tx_max_burst_prd;
u8 tx_fifo_resize_max_num;
u8 clear_stall_protocol;

View File

@ -62,7 +62,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
* @tx_de_emphasis_quirk: set if we enable Tx de-emphasis quirk
* @tx_de_emphasis: Tx de-emphasis value
* 0 - -6dB de-emphasis
@@ -1344,6 +1347,7 @@ struct dwc3 {
@@ -1346,6 +1349,7 @@ struct dwc3 {
unsigned ulpi_ext_vbus_drv:1;
unsigned parkmode_disable_ss_quirk:1;
unsigned parkmode_disable_hs_quirk:1;

View File

@ -103,7 +103,7 @@ it on BCM4708 family.
if (xhci->quirks & XHCI_NEC_HOST)
--- a/drivers/usb/host/xhci.h
+++ b/drivers/usb/host/xhci.h
@@ -1916,6 +1916,7 @@ struct xhci_hcd {
@@ -1660,6 +1660,7 @@ struct xhci_hcd {
#define XHCI_ZHAOXIN_HOST BIT_ULL(46)
#define XHCI_WRITE_64_HI_LO BIT_ULL(47)
#define XHCI_CDNS_SCTX_QUIRK BIT_ULL(48)

View File

@ -37,7 +37,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
--- a/include/linux/netdevice.h
+++ b/include/linux/netdevice.h
@@ -4549,6 +4549,9 @@ static inline void netif_addr_unlock_bh(
@@ -4561,6 +4561,9 @@ static inline void netif_addr_unlock_bh(
void ether_setup(struct net_device *dev);

View File

@ -1,43 +0,0 @@
Subject: [PATCH v2] netfilter: xtables: fix typo causing some targets to not load on IPv6
Date: Sat, 19 Oct 2024 08:05:07 +0300 [thread overview]
Message-ID: <20241019-xtables-typos-v2-1-6b8b1735dc8e@0upti.me> (raw)
These were added with the wrong family in 4cdc55e, which seems
to just have been a typo, but now ip6tables rules with --set-mark
don't work anymore, which is pretty bad.
Fixes: 0bfcb7b71e73 ("netfilter: xtables: avoid NFPROTO_UNSPEC where needed")
Reviewed-by: Phil Sutter <phil@nwl.cc>
Signed-off-by: Ilya Katsnelson <me@0upti.me>
---
Changes in v2:
- Fixed a typo in the commit message (that's karma).
- Replaced a reference to backport commit.
- Link to v1: https://lore.kernel.org/r/20241018-xtables-typos-v1-1-02a51789c0ec@0upti.me
---
net/netfilter/xt_NFLOG.c | 2 +-
net/netfilter/xt_mark.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
--- a/net/netfilter/xt_NFLOG.c
+++ b/net/netfilter/xt_NFLOG.c
@@ -79,7 +79,7 @@ static struct xt_target nflog_tg_reg[] _
{
.name = "NFLOG",
.revision = 0,
- .family = NFPROTO_IPV4,
+ .family = NFPROTO_IPV6,
.checkentry = nflog_tg_check,
.destroy = nflog_tg_destroy,
.target = nflog_tg,
--- a/net/netfilter/xt_mark.c
+++ b/net/netfilter/xt_mark.c
@@ -62,7 +62,7 @@ static struct xt_target mark_tg_reg[] __
{
.name = "MARK",
.revision = 2,
- .family = NFPROTO_IPV4,
+ .family = NFPROTO_IPV6,
.target = mark_tg,
.targetsize = sizeof(struct xt_mark_tginfo2),
.me = THIS_MODULE,

View File

@ -29,7 +29,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
set_bit(flag, tp->wk.flags);
schedule_work(&tp->wk.work);
}
@@ -4518,8 +4521,7 @@ static void rtl_task(struct work_struct
@@ -4520,8 +4523,7 @@ static void rtl_task(struct work_struct
rtnl_lock();

View File

@ -296,7 +296,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
static void r8168fp_adjust_ocp_cmd(struct rtl8169_private *tp, u32 *cmd, int type)
{
/* based on RTL8168FP_OOBMAC_BASE in vendor driver */
@@ -5195,6 +5253,7 @@ static int rtl_init_one(struct pci_dev *
@@ -5197,6 +5255,7 @@ static int rtl_init_one(struct pci_dev *
raw_spin_lock_init(&tp->cfg9346_usage_lock);
raw_spin_lock_init(&tp->config25_lock);
raw_spin_lock_init(&tp->mac_ocp_lock);
@ -304,7 +304,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
dev->tstats = devm_netdev_alloc_pcpu_stats(&pdev->dev,
struct pcpu_sw_netstats);
@@ -5351,6 +5410,12 @@ static int rtl_init_one(struct pci_dev *
@@ -5353,6 +5412,12 @@ static int rtl_init_one(struct pci_dev *
if (rc)
return rc;

View File

@ -59,7 +59,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
obj-$(CONFIG_R8169) += r8169.o
--- a/drivers/net/ethernet/realtek/r8169_main.c
+++ b/drivers/net/ethernet/realtek/r8169_main.c
@@ -5410,11 +5410,10 @@ static int rtl_init_one(struct pci_dev *
@@ -5412,11 +5412,10 @@ static int rtl_init_one(struct pci_dev *
if (rc)
return rc;

View File

@ -75,7 +75,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
genphy_soft_reset(tp->phydev);
}
@@ -5112,7 +5087,9 @@ static int r8169_mdio_register(struct rt
@@ -5114,7 +5089,9 @@ static int r8169_mdio_register(struct rt
}
tp->phydev->mac_managed_pm = true;
@ -86,7 +86,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
phy_support_asym_pause(tp->phydev);
/* PHY will be woken up in rtl_open() */
@@ -5247,7 +5224,6 @@ static int rtl_init_one(struct pci_dev *
@@ -5249,7 +5226,6 @@ static int rtl_init_one(struct pci_dev *
tp->dev = dev;
tp->pci_dev = pdev;
tp->supports_gmii = ent->driver_data == RTL_CFG_NO_GBIT ? 0 : 1;

View File

@ -321,7 +321,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
padto = max_t(unsigned int, padto, ETH_ZLEN);
break;
default:
@@ -5139,7 +5196,7 @@ static void rtl_hw_initialize(struct rtl
@@ -5141,7 +5198,7 @@ static void rtl_hw_initialize(struct rtl
case RTL_GIGA_MAC_VER_40 ... RTL_GIGA_MAC_VER_48:
rtl_hw_init_8168g(tp);
break;

View File

@ -16,7 +16,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
--- a/drivers/net/ethernet/realtek/r8169_main.c
+++ b/drivers/net/ethernet/realtek/r8169_main.c
@@ -5288,11 +5288,6 @@ static int rtl_init_one(struct pci_dev *
@@ -5290,11 +5290,6 @@ static int rtl_init_one(struct pci_dev *
raw_spin_lock_init(&tp->mac_ocp_lock);
mutex_init(&tp->led_lock);
@ -28,7 +28,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
/* Get the *optional* external "ether_clk" used on some boards */
tp->clk = devm_clk_get_optional_enabled(&pdev->dev, "ether_clk");
if (IS_ERR(tp->clk))
@@ -5407,6 +5402,8 @@ static int rtl_init_one(struct pci_dev *
@@ -5409,6 +5404,8 @@ static int rtl_init_one(struct pci_dev *
dev->hw_features |= NETIF_F_RXALL;
dev->hw_features |= NETIF_F_RXFCS;

View File

@ -225,7 +225,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
void r8169_get_led_name(struct rtl8169_private *tp, int idx,
char *buf, int buf_len)
{
@@ -5440,10 +5491,12 @@ static int rtl_init_one(struct pci_dev *
@@ -5442,10 +5493,12 @@ static int rtl_init_one(struct pci_dev *
if (rc)
return rc;

View File

@ -124,7 +124,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
u32 ocp_base;
};
@@ -5067,6 +5069,8 @@ static void rtl_remove_one(struct pci_de
@@ -5069,6 +5071,8 @@ static void rtl_remove_one(struct pci_de
cancel_work_sync(&tp->wk.work);
@ -133,7 +133,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
unregister_netdev(tp->dev);
if (tp->dash_type != RTL_DASH_NONE)
@@ -5525,9 +5529,9 @@ static int rtl_init_one(struct pci_dev *
@@ -5527,9 +5531,9 @@ static int rtl_init_one(struct pci_dev *
if (IS_ENABLED(CONFIG_R8169_LEDS)) {
if (rtl_is_8125(tp))

View File

@ -19,7 +19,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
--- a/drivers/net/ethernet/realtek/r8169_main.c
+++ b/drivers/net/ethernet/realtek/r8169_main.c
@@ -5069,7 +5069,8 @@ static void rtl_remove_one(struct pci_de
@@ -5071,7 +5071,8 @@ static void rtl_remove_one(struct pci_de
cancel_work_sync(&tp->wk.work);

View File

@ -18,7 +18,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
--- a/drivers/net/ethernet/realtek/r8169_main.c
+++ b/drivers/net/ethernet/realtek/r8169_main.c
@@ -5110,12 +5110,10 @@ static void rtl_set_irq_mask(struct rtl8
@@ -5112,12 +5112,10 @@ static void rtl_set_irq_mask(struct rtl8
tp->irq_mask = RxOK | RxErr | TxOK | TxErr | LinkChg;
if (tp->mac_version <= RTL_GIGA_MAC_VER_06)

View File

@ -224,7 +224,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
padto = max_t(unsigned int, padto, ETH_ZLEN);
break;
default:
@@ -5286,7 +5298,7 @@ static void rtl_hw_initialize(struct rtl
@@ -5288,7 +5300,7 @@ static void rtl_hw_initialize(struct rtl
case RTL_GIGA_MAC_VER_40 ... RTL_GIGA_MAC_VER_48:
rtl_hw_init_8168g(tp);
break;

View File

@ -1,39 +0,0 @@
From 10ce0db787004875f4dba068ea952207d1d8abeb Mon Sep 17 00:00:00 2001
From: Heiner Kallweit <hkallweit1@gmail.com>
Date: Fri, 18 Oct 2024 11:08:16 +0200
Subject: [PATCH] r8169: avoid unsolicited interrupts
It was reported that after resume from suspend a PCI error is logged
and connectivity is broken. Error message is:
PCI error (cmd = 0x0407, status_errs = 0x0000)
The message seems to be a red herring as none of the error bits is set,
and the PCI command register value also is normal. Exception handling
for a PCI error includes a chip reset what apparently brakes connectivity
here. The interrupt status bit triggering the PCI error handling isn't
actually used on PCIe chip versions, so it's not clear why this bit is
set by the chip. Fix this by ignoring this bit on PCIe chip versions.
Fixes: 0e4851502f84 ("r8169: merge with version 8.001.00 of Realtek's r8168 driver")
Closes: https://bugzilla.kernel.org/show_bug.cgi?id=219388
Tested-by: Atlas Yu <atlas.yu@canonical.com>
Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
Reviewed-by: Simon Horman <horms@kernel.org>
Link: https://patch.msgid.link/78e2f535-438f-4212-ad94-a77637ac6c9c@gmail.com
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
---
drivers/net/ethernet/realtek/r8169_main.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
--- a/drivers/net/ethernet/realtek/r8169_main.c
+++ b/drivers/net/ethernet/realtek/r8169_main.c
@@ -4683,7 +4683,9 @@ static irqreturn_t rtl8169_interrupt(int
if ((status & 0xffff) == 0xffff || !(status & tp->irq_mask))
return IRQ_NONE;
- if (unlikely(status & SYSErr)) {
+ /* At least RTL8168fp may unexpectedly set the SYSErr bit */
+ if (unlikely(status & SYSErr &&
+ tp->mac_version <= RTL_GIGA_MAC_VER_06)) {
rtl8169_pcierr_interrupt(tp->dev);
goto out;
}

View File

@ -217,7 +217,7 @@ Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
#include <linux/ptp_clock_kernel.h>
#include <linux/timecounter.h>
#include <net/dsa.h>
@@ -275,6 +277,7 @@ struct mv88e6xxx_vlan {
@@ -276,6 +278,7 @@ struct mv88e6xxx_vlan {
struct mv88e6xxx_port {
struct mv88e6xxx_chip *chip;
int port;
@ -225,7 +225,7 @@ Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
struct mv88e6xxx_vlan bridge_pvid;
u64 serdes_stats[2];
u64 atu_member_violation;
@@ -289,6 +292,11 @@ struct mv88e6xxx_port {
@@ -290,6 +293,11 @@ struct mv88e6xxx_port {
struct devlink_region *region;
void *pcs_private;
@ -237,7 +237,7 @@ Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
/* MacAuth Bypass control flag */
bool mab;
};
@@ -561,6 +569,9 @@ struct mv88e6xxx_ops {
@@ -563,6 +571,9 @@ struct mv88e6xxx_ops {
phy_interface_t mode);
int (*port_get_cmode)(struct mv88e6xxx_chip *chip, int port, u8 *cmode);

View File

@ -80,7 +80,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
* @reset: reset control
* @regs: base address for our registers
* @regs_size: address space size
@@ -1167,6 +1169,8 @@ struct dwc3 {
@@ -1169,6 +1171,8 @@ struct dwc3 {
struct clk *bus_clk;
struct clk *ref_clk;
struct clk *susp_clk;

View File

@ -263,7 +263,7 @@ Signed-off-by: minda.chen <minda.chen@starfivetech.com>
/**
--- a/drivers/usb/host/xhci.h
+++ b/drivers/usb/host/xhci.h
@@ -1764,6 +1764,13 @@ struct xhci_hub {
@@ -1508,6 +1508,13 @@ struct xhci_hub {
u8 min_rev;
};
@ -277,7 +277,7 @@ Signed-off-by: minda.chen <minda.chen@starfivetech.com>
/* There is one xhci_hcd structure per controller */
struct xhci_hcd {
struct usb_hcd *main_hcd;
@@ -1917,6 +1924,8 @@ struct xhci_hcd {
@@ -1661,6 +1668,8 @@ struct xhci_hcd {
#define XHCI_WRITE_64_HI_LO BIT_ULL(47)
#define XHCI_CDNS_SCTX_QUIRK BIT_ULL(48)
@ -286,7 +286,7 @@ Signed-off-by: minda.chen <minda.chen@starfivetech.com>
unsigned int num_active_eps;
unsigned int limit_active_eps;
struct xhci_port *hw_ports;
@@ -1946,6 +1955,8 @@ struct xhci_hcd {
@@ -1690,6 +1699,8 @@ struct xhci_hcd {
struct list_head regset_list;
void *dbc;