projects/linux·commit fcee7d82

Merge tag 'net-7.1-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net

fcee7d82 · Linus Torvalds <[email protected]> · 2026-05-07 10:32:03 -07:00

Pull networking fixes from Jakub Kicinski:
 "Including fixes from Netfilter, IPsec, Bluetooth and WiFi.

  Current release - fix to a fix:

   - ipmr: add __rcu to netns_ipv4.mrt, make sure we hold the RCU lock
     in all relevant places

  Current release - new code bugs:

   - fixes for the recently added resizable hash tables

   - ipv6: make sure we default IPv6 tunnel drivers to =m now that IPv6
     itself is built in

   - drv: octeontx2-af: fixes for parser/CAM fixes

  Previous releases - regressions:

   - phy: micrel: fix LAN8814 QSGMII soft reset

   - wifi:
       - cw1200: revert "Fix locking in error paths"
       - ath12k: fix crash on WCN7850, due to adding the same queue
         buffer to a list multiple times

  Previous releases - always broken:

   - number of info leak fixes

   - ipv6: implement limits on extension header parsing

   - wifi: number of fixes for missing bound checks in the drivers

   - Bluetooth: fixes for races and locking issues

   - af_unix:
       - fix an issue between garbage collection and PEEK
       - fix yet another issue with OOB data

   - xfrm: esp: avoid in-place decrypt on shared skb frags

   - netfilter: replace skb_try_make_writable() by skb_ensure_writable()

   - openvswitch: vport: fix race between tunnel creation and linking
     leading to invalid memory accesses (type confusion)

   - drv: amd-xgbe: fix PTP addend overflow causing frozen clock

  Misc:

   - sched/isolation: make HK_TYPE_KTHREAD an alias of HK_TYPE_DOMAIN
     (for relevant IPVS change)"

* tag 'net-7.1-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net: (190 commits)
  net: sparx5: configure serdes for 1000BASE-X in sparx5_port_init()
  net: sparx5: fix wrong chip ids for TSN SKUs
  net: stmmac: dwmac-nuvoton: fix NULL pointer dereference in nvt_set_phy_intf_sel()
  tcp: Fix dst leak in tcp_v6_connect().
  ipmr: Call ipmr_fib_lookup() under RCU.
  net: phy: broadcom: Save PHY counters during suspend
  net/smc: fix missing sk_err when TCP handshake fails
  af_unix: Reject SIOCATMARK on non-stream sockets
  veth: fix OOB txq access in veth_poll() with asymmetric queue counts
  eth: fbnic: fix double-free of PCS on phylink creation failure
  net: ethernet: cortina: Drop half-assembled SKB
  selftests: mptcp: pm: restrict 'unknown' check to pm_nl_ctl
  selftests: mptcp: check output: catch cmd errors
  mptcp: pm: prio: skip closed subflows
  mptcp: pm: ADD_ADDR rtx: return early if no retrans
  mptcp: pm: ADD_ADDR rtx: skip inactive subflows
  mptcp: pm: ADD_ADDR rtx: resched blocked ADD_ADDR quicker
  mptcp: pm: ADD_ADDR rtx: free sk if last
  mptcp: pm: ADD_ADDR rtx: always decrease sk refcount
  mptcp: pm: ADD_ADDR rtx: fix potential data-race
  ...
Commit
fcee7d82f27d6a8b1ddc5bbefda59b4e441e9bc0
Parents
19cbc75c · 41ae1407

Merge commit. Changes below are compared with the first parent: 19cbc75c.

Changes

189 files changed · +3479 −1154

FileStatusAddDelContent
MAINTAINERSmodified+6−0View file
drivers/bluetooth/btintel_pcie.cmodified+10−3View file
drivers/bluetooth/btintel_pcie.hmodified+1−1View file
drivers/bluetooth/btmtk.cmodified+13−2View file
drivers/bluetooth/hci_ath.cmodified+3−0View file
drivers/bluetooth/hci_bcsp.cmodified+3−0View file
drivers/bluetooth/hci_h4.cmodified+3−0View file
drivers/bluetooth/hci_h5.cmodified+3−0View file
drivers/bluetooth/virtio_bt.cmodified+32−7View file
drivers/net/dsa/mt7530.cmodified+72−3View file
drivers/net/dsa/mt7530.hmodified+8−0View file
drivers/net/ethernet/airoha/airoha_eth.cmodified+2−4View file
drivers/net/ethernet/amd/xgbe/xgbe.hmodified+2−2View file
drivers/net/ethernet/broadcom/bnxt/bnxt.cmodified+12−4View file
drivers/net/ethernet/broadcom/bnxt/bnxt_ptp.cmodified+5−24View file
drivers/net/ethernet/broadcom/bnxt/bnxt_ulp.cmodified+8−2View file
drivers/net/ethernet/cortina/gemini.cmodified+5−0View file
drivers/net/ethernet/freescale/enetc/enetc.hmodified+1−0View file
drivers/net/ethernet/freescale/enetc/enetc_vf.cmodified+34−8View file
drivers/net/ethernet/marvell/octeontx2/af/cn20k/debugfs.cmodified+10−23View file
drivers/net/ethernet/marvell/octeontx2/af/cn20k/npc.cmodified+250−124View file
drivers/net/ethernet/marvell/octeontx2/af/cn20k/npc.hmodified+12−12View file
drivers/net/ethernet/marvell/octeontx2/af/rvu_nix.cmodified+3−0View file
drivers/net/ethernet/marvell/octeontx2/af/rvu_npc.cmodified+199−32View file
drivers/net/ethernet/marvell/octeontx2/af/rvu_npc_fs.cmodified+22−8View file
drivers/net/ethernet/mellanox/mlx5/core/en_accel/psp.cmodified+20−16View file
drivers/net/ethernet/mellanox/mlx5/core/en_main.cmodified+23−7View file
drivers/net/ethernet/mellanox/mlx5/core/lib/sd.cmodified+99−15View file
drivers/net/ethernet/mellanox/mlx5/core/lib/sd.hmodified+2−0View file
drivers/net/ethernet/meta/fbnic/fbnic_netdev.cmodified+2−1View file
drivers/net/ethernet/microchip/sparx5/sparx5_main.hmodified+5−5View file
drivers/net/ethernet/microchip/sparx5/sparx5_port.cmodified+2−1View file
drivers/net/ethernet/microsoft/mana/gdma_main.cmodified+35−5View file
drivers/net/ethernet/microsoft/mana/mana_en.cmodified+5−5View file
drivers/net/ethernet/microsoft/mana/shm_channel.cmodified+0−5View file
drivers/net/ethernet/renesas/rtsn.cmodified+4−2View file
drivers/net/ethernet/stmicro/stmmac/dwmac-nuvoton.cmodified+2−0View file
drivers/net/ethernet/wangxun/libwx/wx_hw.cmodified+5−2View file
drivers/net/ethernet/wangxun/libwx/wx_vf_common.cmodified+2−2View file
drivers/net/netdevsim/netdev.cmodified+2−1View file
drivers/net/netdevsim/netdevsim.hmodified+3−1View file
drivers/net/netdevsim/psp.cmodified+46−19View file
drivers/net/ovpn/io.cmodified+7−0View file
drivers/net/phy/bcm-phy-lib.cmodified+9−0View file
drivers/net/phy/bcm-phy-lib.hmodified+1−0View file
drivers/net/phy/bcm7xxx.cmodified+14−0View file
drivers/net/phy/broadcom.cmodified+5−0View file
drivers/net/phy/micrel.cmodified+8−7View file
drivers/net/usb/asix_devices.cmodified+2−0View file
drivers/net/usb/cdc_ncm.cmodified+8−0View file
drivers/net/usb/r8152.cmodified+1−0View file
drivers/net/veth.cmodified+2−1View file
drivers/net/wan/fsl_ucc_hdlc.cmodified+2−7View file
drivers/net/wireless/ath/ath10k/Kconfigmodified+1−0View file
drivers/net/wireless/ath/ath12k/core.cmodified+48−29View file
drivers/net/wireless/ath/ath12k/dp_rx.cmodified+4−1View file
drivers/net/wireless/ath/ath12k/mac.cmodified+1−1View file
drivers/net/wireless/ath/ath12k/p2p.cmodified+1−1View file
drivers/net/wireless/ath/ath12k/wmi.cmodified+89−16View file
drivers/net/wireless/ath/ath5k/base.cmodified+2−1View file
drivers/net/wireless/broadcom/b43/xmit.cmodified+2−1View file
drivers/net/wireless/broadcom/b43legacy/xmit.cmodified+2−1View file
drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.cmodified+4−2View file
drivers/net/wireless/marvell/libertas/if_usb.cmodified+4−2View file
drivers/net/wireless/rsi/rsi_common.hmodified+2−3View file
drivers/net/wireless/st/cw1200/pm.cmodified+0−2View file
drivers/net/wwan/t7xx/t7xx_modem_ops.cmodified+17−3View file
drivers/net/wwan/t7xx/t7xx_port_ctrl_msg.cmodified+16−2View file
drivers/net/wwan/t7xx/t7xx_port_proxy.hmodified+1−1View file
include/linux/netfilter/x_tables.hmodified+8−0View file
include/linux/sched/isolation.hmodified+5−1View file
include/net/bluetooth/hci_core.hmodified+1−1View file
include/net/dropreason-core.hmodified+6−0View file
include/net/ip_vs.hmodified+26−5View file
include/net/ipv6.hmodified+3−0View file
include/net/mana/shm_channel.hmodified+6−0View file
include/net/netfilter/nf_dup_netdev.hmodified+13−0View file
include/net/netfilter/nf_flow_table.hmodified+3−1View file
include/net/netns/ipv4.hmodified+1−1View file
net/bluetooth/bnep/core.cmodified+10−3View file
net/bluetooth/hci_conn.cmodified+104−20View file
net/bluetooth/hci_event.cmodified+26−3View file
net/bluetooth/hidp/core.cmodified+24−3View file
net/bluetooth/iso.cmodified+31−25View file
net/bluetooth/l2cap_core.cmodified+3−11View file
net/bluetooth/l2cap_sock.cmodified+9−0View file
net/bluetooth/rfcomm/core.cmodified+5−2View file
net/bluetooth/sco.cmodified+39−21View file
net/core/dev.cmodified+1−1View file
net/core/netpoll.cmodified+13−10View file
net/core/rtnetlink.cmodified+1−0View file
net/ipv4/ah4.cmodified+12−2View file
net/ipv4/esp4.cmodified+2−1View file
net/ipv4/igmp.cmodified+36−22View file
net/ipv4/inetpeer.cmodified+2−1View file
net/ipv4/ip_output.cmodified+2−0View file
net/ipv4/ipmr.cmodified+6−4View file
net/ipv4/netfilter/nf_socket_ipv4.cmodified+3−0View file
net/ipv4/tcp_ipv4.cmodified+6−8View file
net/ipv4/tcp_minisocks.cmodified+1−1View file
net/ipv6/Kconfigmodified+2−2View file
net/ipv6/ah6.cmodified+12−2View file
net/ipv6/esp6.cmodified+2−1View file
net/ipv6/exthdrs_core.cmodified+7−0View file
net/ipv6/ip6_gre.cmodified+3−2View file
net/ipv6/ip6_input.cmodified+5−0View file
net/ipv6/ip6_output.cmodified+5−0View file
net/ipv6/ip6_tunnel.cmodified+4−0View file
net/ipv6/netfilter/nf_socket_ipv6.cmodified+3−2View file
net/ipv6/route.cmodified+5−0View file
net/ipv6/tcp_ipv6.cmodified+11−6View file
net/ipv6/xfrm6_protocol.cmodified+3−1View file
net/mac80211/mlme.cmodified+13−5View file
net/mac80211/rx.cmodified+4−2View file
net/mac80211/tests/chan-mode.cmodified+1−0View file
net/mac80211/util.cmodified+2−2View file
net/mctp/test/route-test.cmodified+1−1View file
net/mctp/test/utils.cmodified+1−1View file
net/mptcp/fastopen.cmodified+3−1View file
net/mptcp/pm.cmodified+42−20View file
net/mptcp/pm_kernel.cmodified+8−5View file
net/mptcp/sockopt.cmodified+4−0View file
net/mptcp/subflow.cmodified+2−2View file
net/netfilter/ipvs/ip_vs_conn.cmodified+42−34View file
net/netfilter/ipvs/ip_vs_core.cmodified+1−1View file
net/netfilter/ipvs/ip_vs_ctl.cmodified+119−45View file
net/netfilter/ipvs/ip_vs_est.cmodified+48−35View file
net/netfilter/nf_dup_netdev.cmodified+0−16View file
net/netfilter/nf_flow_table_core.cmodified+1−0View file
net/netfilter/nf_flow_table_ip.cmodified+116−35View file
net/netfilter/nf_flow_table_path.cmodified+6−1View file
net/netfilter/nf_tables_api.cmodified+21−14View file
net/netfilter/nf_tables_core.cmodified+1−1View file
net/netfilter/nft_compat.cmodified+35−10View file
net/netfilter/nft_exthdr.cmodified+1−1View file
net/netfilter/nft_fwd_netdev.cmodified+25−4View file
net/netfilter/nft_osf.cmodified+1−1View file
net/netfilter/nft_tproxy.cmodified+4−4View file
net/netfilter/x_tables.cmodified+71−8View file
net/netfilter/xt_CT.cmodified+4−4View file
net/netfilter/xt_TCPMSS.cmodified+17−16View file
net/netfilter/xt_TPROXY.cmodified+9−2View file
net/netfilter/xt_addrtype.cmodified+19−6View file
net/netfilter/xt_devgroup.cmodified+13−5View file
net/netfilter/xt_ecn.cmodified+4−0View file
net/netfilter/xt_hashlimit.cmodified+3−1View file
net/netfilter/xt_osf.cmodified+3−0View file
net/netfilter/xt_physdev.cmodified+15−5View file
net/netfilter/xt_policy.cmodified+19−5View file
net/netfilter/xt_set.cmodified+25−14View file
net/netfilter/xt_tcpmss.cmodified+4−0View file
net/openvswitch/vport-geneve.cmodified+4−1View file
net/openvswitch/vport-gre.cmodified+4−1View file
net/openvswitch/vport-netdev.cmodified+40−24View file
net/openvswitch/vport-netdev.hmodified+1−1View file
net/openvswitch/vport-vxlan.cmodified+4−1View file
net/psp/psp_main.cmodified+31−11View file
net/rds/message.cmodified+15−5View file
net/sched/sch_cake.cmodified+83−72View file
net/sched/sch_fq_codel.cmodified+20−19View file
net/sched/sch_pie.cmodified+6−8View file
net/sched/sch_red.cmodified+1−1View file
net/sched/sch_sfb.cmodified+1−1View file
net/sched/sch_sfq.cmodified+25−23View file
net/smc/af_smc.cmodified+2−6View file
net/tls/tls_sw.cmodified+3−3View file
net/unix/af_unix.cmodified+3−0View file
net/unix/garbage.cmodified+3−3View file
net/vmw_vsock/virtio_transport_common.cmodified+3−1View file
net/wireless/nl80211.cmodified+27−0View file
net/wireless/pmsr.cmodified+1−1View file
net/xdp/xsk.cmodified+74−41View file
net/xdp/xsk_buff_pool.cmodified+3−0View file
net/xfrm/xfrm_output.cmodified+14−6View file
net/xfrm/xfrm_state.cmodified+6−6View file
net/xfrm/xfrm_user.cmodified+1−0View file
tools/testing/selftests/drivers/net/hw/Makefilemodified+1−0View file
tools/testing/selftests/drivers/net/hw/configmodified+5−0View file
tools/testing/selftests/drivers/net/hw/ipsec_vxlan.pyadded+204−0View file
tools/testing/selftests/drivers/net/lib/py/load.pymodified+4−1View file
tools/testing/selftests/net/Makefilemodified+1−0View file
tools/testing/selftests/net/mptcp/mptcp_lib.shmodified+10−6View file
tools/testing/selftests/net/mptcp/pm_netlink.shmodified+13−7View file
tools/testing/selftests/net/openvswitch/openvswitch.shmodified+37−0View file
tools/testing/selftests/net/openvswitch/ovs-dpctl.pymodified+13−6View file
tools/testing/selftests/net/ovpn/test.shmodified+2−2View file
tools/testing/selftests/net/tcp_ecmp_failover.shadded+216−0View file
tools/testing/selftests/net/tls.cmodified+43−0View file
tools/testing/selftests/tc-testing/tc-tests/infra/qdiscs.jsonmodified+148−0View file

Only the first 600 diff lines are shown. Download the complete patch.

MAINTAINERS

View file
diff --git a/MAINTAINERS b/MAINTAINERS
index 37b105a..0650fa0 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -7077,6 +7077,12 @@ T: git git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git core/debugobjec
F: include/linux/debugobjects.h
F: lib/debugobjects.c
+DEC LANCE NETWORK DRIVER
+M: "Maciej W. Rozycki" <[email protected]>
+S: Maintained
+F: drivers/net/ethernet/amd/declance.c
+
DECSTATION PLATFORM SUPPORT
M: "Maciej W. Rozycki" <[email protected]>

drivers/bluetooth/btintel_pcie.c

View file
diff --git a/drivers/bluetooth/btintel_pcie.c b/drivers/bluetooth/btintel_pcie.c
index 2f59c0d..a3643e6 100644
--- a/drivers/bluetooth/btintel_pcie.c
+++ b/drivers/bluetooth/btintel_pcie.c
@@ -289,6 +289,9 @@ static inline void btintel_pcie_dump_debug_registers(struct hci_dev *hdev)
skb_put_data(skb, buf, strlen(buf));
data->boot_stage_cache = reg;
+ if (reg & BTINTEL_PCIE_CSR_BOOT_STAGE_DEVICE_WARNING)
+ bt_dev_warn(hdev, "Controller device warning (boot_stage: 0x%8.8x)", reg);
+
reg = btintel_pcie_rd_reg32(data, BTINTEL_PCIE_CSR_IPC_STATUS_REG);
snprintf(buf, sizeof(buf), "ipc status: 0x%8.8x", reg);
skb_put_data(skb, buf, strlen(buf));
@@ -880,8 +883,11 @@ static inline bool btintel_pcie_in_lockdown(struct btintel_pcie_data *data)
static inline bool btintel_pcie_in_error(struct btintel_pcie_data *data)
{
- return (data->boot_stage_cache & BTINTEL_PCIE_CSR_BOOT_STAGE_DEVICE_ERR) ||
- (data->boot_stage_cache & BTINTEL_PCIE_CSR_BOOT_STAGE_ABORT_HANDLER);
+ if (data->boot_stage_cache & BTINTEL_PCIE_CSR_BOOT_STAGE_DEVICE_WARNING)
+ bt_dev_warn(data->hdev, "Controller device warning (boot_stage: 0x%8.8x)",
+ data->boot_stage_cache);
+
+ return data->boot_stage_cache & BTINTEL_PCIE_CSR_BOOT_STAGE_ABORT_HANDLER;
}
static void btintel_pcie_msix_gp1_handler(struct btintel_pcie_data *data)
@@ -914,7 +920,8 @@ static void btintel_pcie_msix_gp0_handler(struct btintel_pcie_data *data)
data->img_resp_cache = reg;
if (btintel_pcie_in_error(data)) {
- bt_dev_err(data->hdev, "Controller in error state");
+ bt_dev_err(data->hdev, "Controller in error state (boot_stage: 0x%8.8x)",
+ data->boot_stage_cache);
btintel_pcie_dump_debug_registers(data->hdev);
return;
}

drivers/bluetooth/btintel_pcie.h

View file
diff --git a/drivers/bluetooth/btintel_pcie.h b/drivers/bluetooth/btintel_pcie.h
index 3c7bb70..f922abd 100644
--- a/drivers/bluetooth/btintel_pcie.h
+++ b/drivers/bluetooth/btintel_pcie.h
@@ -48,7 +48,7 @@
#define BTINTEL_PCIE_CSR_BOOT_STAGE_OPFW (BIT(2))
#define BTINTEL_PCIE_CSR_BOOT_STAGE_ROM_LOCKDOWN (BIT(10))
#define BTINTEL_PCIE_CSR_BOOT_STAGE_IML_LOCKDOWN (BIT(11))
-#define BTINTEL_PCIE_CSR_BOOT_STAGE_DEVICE_ERR (BIT(12))
+#define BTINTEL_PCIE_CSR_BOOT_STAGE_DEVICE_WARNING (BIT(12))
#define BTINTEL_PCIE_CSR_BOOT_STAGE_ABORT_HANDLER (BIT(13))
#define BTINTEL_PCIE_CSR_BOOT_STAGE_DEVICE_HALTED (BIT(14))
#define BTINTEL_PCIE_CSR_BOOT_STAGE_MAC_ACCESS_ON (BIT(16))

drivers/bluetooth/btmtk.c

View file
diff --git a/drivers/bluetooth/btmtk.c b/drivers/bluetooth/btmtk.c
index 6fb6ca2..f70c1b0 100644
--- a/drivers/bluetooth/btmtk.c
+++ b/drivers/bluetooth/btmtk.c
@@ -695,8 +695,13 @@ static int btmtk_usb_hci_wmt_sync(struct hci_dev *hdev,
if (data->evt_skb == NULL)
goto err_free_wc;
- /* Parse and handle the return WMT event */
- wmt_evt = (struct btmtk_hci_wmt_evt *)data->evt_skb->data;
+ wmt_evt = skb_pull_data(data->evt_skb, sizeof(*wmt_evt));
+ if (!wmt_evt) {
+ bt_dev_err(hdev, "WMT event too short (%u bytes)",
+ data->evt_skb->len);
+ err = -EINVAL;
+ goto err_free_skb;
+ }
if (wmt_evt->whdr.op != hdr->op) {
bt_dev_err(hdev, "Wrong op received %d expected %d",
wmt_evt->whdr.op, hdr->op);
@@ -712,6 +717,12 @@ static int btmtk_usb_hci_wmt_sync(struct hci_dev *hdev,
status = BTMTK_WMT_PATCH_DONE;
break;
case BTMTK_WMT_FUNC_CTRL:
+ if (!skb_pull_data(data->evt_skb,
+ sizeof(wmt_evt_funcc->status))) {
+ err = -EINVAL;
+ goto err_free_skb;
+ }
+
wmt_evt_funcc = (struct btmtk_hci_wmt_evt_funcc *)wmt_evt;
if (be16_to_cpu(wmt_evt_funcc->status) == 0x404)
status = BTMTK_WMT_ON_DONE;

drivers/bluetooth/hci_ath.c

View file
diff --git a/drivers/bluetooth/hci_ath.c b/drivers/bluetooth/hci_ath.c
index fa679ad..8201fa7 100644
--- a/drivers/bluetooth/hci_ath.c
+++ b/drivers/bluetooth/hci_ath.c
@@ -191,6 +191,9 @@ static int ath_recv(struct hci_uart *hu, const void *data, int count)
{
struct ath_struct *ath = hu->priv;
+ if (!ath)
+ return -ENODEV;
+
ath->rx_skb = h4_recv_buf(hu, ath->rx_skb, data, count,
ath_recv_pkts, ARRAY_SIZE(ath_recv_pkts));
if (IS_ERR(ath->rx_skb)) {

drivers/bluetooth/hci_bcsp.c

View file
diff --git a/drivers/bluetooth/hci_bcsp.c b/drivers/bluetooth/hci_bcsp.c
index b386f91..db56eea 100644
--- a/drivers/bluetooth/hci_bcsp.c
+++ b/drivers/bluetooth/hci_bcsp.c
@@ -585,6 +585,9 @@ static int bcsp_recv(struct hci_uart *hu, const void *data, int count)
if (!test_bit(HCI_UART_REGISTERED, &hu->flags))
return -EUNATCH;
+ if (!bcsp)
+ return -ENODEV;
+
BT_DBG("hu %p count %d rx_state %d rx_count %ld",
hu, count, bcsp->rx_state, bcsp->rx_count);

drivers/bluetooth/hci_h4.c

View file
diff --git a/drivers/bluetooth/hci_h4.c b/drivers/bluetooth/hci_h4.c
index a889a66..7673727 100644
--- a/drivers/bluetooth/hci_h4.c
+++ b/drivers/bluetooth/hci_h4.c
@@ -109,6 +109,9 @@ static int h4_recv(struct hci_uart *hu, const void *data, int count)
{
struct h4_struct *h4 = hu->priv;
+ if (!h4)
+ return -ENODEV;
+
h4->rx_skb = h4_recv_buf(hu, h4->rx_skb, data, count,
h4_recv_pkts, ARRAY_SIZE(h4_recv_pkts));
if (IS_ERR(h4->rx_skb)) {

drivers/bluetooth/hci_h5.c

View file
diff --git a/drivers/bluetooth/hci_h5.c b/drivers/bluetooth/hci_h5.c
index cfdf75d..d353837 100644
--- a/drivers/bluetooth/hci_h5.c
+++ b/drivers/bluetooth/hci_h5.c
@@ -587,6 +587,9 @@ static int h5_recv(struct hci_uart *hu, const void *data, int count)
struct h5 *h5 = hu->priv;
const unsigned char *ptr = data;
+ if (!h5)
+ return -ENODEV;
+
BT_DBG("%s pending %zu count %d", hu->hdev->name, h5->rx_pending,
count);

drivers/bluetooth/virtio_bt.c

View file
diff --git a/drivers/bluetooth/virtio_bt.c b/drivers/bluetooth/virtio_bt.c
index 76d61af..140ab55 100644
--- a/drivers/bluetooth/virtio_bt.c
+++ b/drivers/bluetooth/virtio_bt.c
@@ -12,6 +12,7 @@
#include <net/bluetooth/hci_core.h>
#define VERSION "0.1"
+#define VIRTBT_RX_BUF_SIZE 1000
enum {
VIRTBT_VQ_TX,
@@ -33,11 +34,11 @@ static int virtbt_add_inbuf(struct virtio_bluetooth *vbt)
struct sk_buff *skb;
int err;
- skb = alloc_skb(1000, GFP_KERNEL);
+ skb = alloc_skb(VIRTBT_RX_BUF_SIZE, GFP_KERNEL);
if (!skb)
return -ENOMEM;
- sg_init_one(sg, skb->data, 1000);
+ sg_init_one(sg, skb->data, VIRTBT_RX_BUF_SIZE);
err = virtqueue_add_inbuf(vq, sg, 1, skb, GFP_KERNEL);
if (err < 0) {
@@ -197,6 +198,7 @@ static int virtbt_shutdown_generic(struct hci_dev *hdev)
static void virtbt_rx_handle(struct virtio_bluetooth *vbt, struct sk_buff *skb)
{
+ size_t min_hdr;
__u8 pkt_type;
pkt_type = *((__u8 *) skb->data);
@@ -204,16 +206,32 @@ static void virtbt_rx_handle(struct virtio_bluetooth *vbt, struct sk_buff *skb)
switch (pkt_type) {
case HCI_EVENT_PKT:
+ min_hdr = sizeof(struct hci_event_hdr);
+ break;
case HCI_ACLDATA_PKT:
+ min_hdr = sizeof(struct hci_acl_hdr);
+ break;
case HCI_SCODATA_PKT:
+ min_hdr = sizeof(struct hci_sco_hdr);
+ break;
case HCI_ISODATA_PKT:
- hci_skb_pkt_type(skb) = pkt_type;
- hci_recv_frame(vbt->hdev, skb);
+ min_hdr = sizeof(struct hci_iso_hdr);
break;
default:
kfree_skb(skb);
- break;
+ return;
+ }
+
+ if (skb->len < min_hdr) {
+ bt_dev_err_ratelimited(vbt->hdev,
+ "rx pkt_type 0x%02x payload %u < hdr %zu\n",
+ pkt_type, skb->len, min_hdr);
+ kfree_skb(skb);
+ return;
}
+
+ hci_skb_pkt_type(skb) = pkt_type;
+ hci_recv_frame(vbt->hdev, skb);
}
static void virtbt_rx_work(struct work_struct *work)
@@ -227,8 +245,15 @@ static void virtbt_rx_work(struct work_struct *work)
if (!skb)
return;
- skb_put(skb, len);
- virtbt_rx_handle(vbt, skb);
+ if (!len || len > VIRTBT_RX_BUF_SIZE) {
+ bt_dev_err_ratelimited(vbt->hdev,
+ "rx reply len %u outside [1, %u]\n",
+ len, VIRTBT_RX_BUF_SIZE);
+ kfree_skb(skb);
+ } else {
+ skb_put(skb, len);
+ virtbt_rx_handle(vbt, skb);
+ }
if (virtbt_add_inbuf(vbt) < 0)
return;

drivers/net/dsa/mt7530.c

View file
diff --git a/drivers/net/dsa/mt7530.c b/drivers/net/dsa/mt7530.c
index b942338..44d6709 100644
--- a/drivers/net/dsa/mt7530.c
+++ b/drivers/net/dsa/mt7530.c
@@ -25,6 +25,9 @@
#include "mt7530.h"
+#define MT7530_STATS_POLL_INTERVAL (1 * HZ)
+#define MT7530_STATS_RATE_LIMIT (HZ / 10)
+
static struct mt753x_pcs *pcs_to_mt753x_pcs(struct phylink_pcs *pcs)
{
return container_of(pcs, struct mt753x_pcs, pcs);
@@ -906,10 +909,9 @@ static void mt7530_get_rmon_stats(struct dsa_switch *ds, int port,
*ranges = mt7530_rmon_ranges;
}
-static void mt7530_get_stats64(struct dsa_switch *ds, int port,
- struct rtnl_link_stats64 *storage)
+static void mt7530_read_port_stats64(struct mt7530_priv *priv, int port,
+ struct rtnl_link_stats64 *storage)
{
- struct mt7530_priv *priv = ds->priv;
uint64_t data;
/* MIB counter doesn't provide a FramesTransmittedOK but instead
@@ -951,6 +953,54 @@ static void mt7530_get_stats64(struct dsa_switch *ds, int port,
&storage->rx_crc_errors);
}
+static void mt7530_stats_refresh(struct mt7530_priv *priv)
+{
+ struct rtnl_link_stats64 stats = {};
+ struct dsa_port *dp;
+ int port;
+
+ dsa_switch_for_each_user_port(dp, priv->ds) {
+ port = dp->index;
+
+ mt7530_read_port_stats64(priv, port, &stats);
+
+ spin_lock_bh(&priv->stats_lock);
+ priv->ports[port].stats = stats;
+ priv->stats_last = jiffies;
+ spin_unlock_bh(&priv->stats_lock);
+ }
+}
+
+static void mt7530_stats_poll(struct work_struct *work)
+{
+ struct mt7530_priv *priv = container_of(work, struct mt7530_priv,
+ stats_work.work);
+
+ mt7530_stats_refresh(priv);
+ schedule_delayed_work(&priv->stats_work,
+ MT7530_STATS_POLL_INTERVAL);
+}
+
+static void mt7530_get_stats64(struct dsa_switch *ds, int port,
+ struct rtnl_link_stats64 *storage)
+{
+ struct mt7530_priv *priv = ds->priv;
+ bool refresh;
+
+ if (priv->bus) {
+ spin_lock_bh(&priv->stats_lock);
+ *storage = priv->ports[port].stats;
+ refresh = time_after(jiffies, priv->stats_last +
+ MT7530_STATS_RATE_LIMIT);
+ spin_unlock_bh(&priv->stats_lock);
+ if (refresh)
+ mod_delayed_work(system_percpu_wq,
+ &priv->stats_work, 0);
+ } else {
+ mt7530_read_port_stats64(priv, port, storage);
+ }
+}
+
static void mt7530_get_eth_ctrl_stats(struct dsa_switch *ds, int port,
struct ethtool_eth_ctrl_stats *ctrl_stats)
{
@@ -3137,9 +3187,24 @@ mt753x_setup(struct dsa_switch *ds)
if (ret && priv->irq_domain)
mt7530_free_mdio_irq(priv);
+ if (!ret && priv->bus) {
+ mt7530_stats_refresh(priv);
+ schedule_delayed_work(&priv->stats_work,
+ MT7530_STATS_POLL_INTERVAL);
+ }
+
return ret;
}
+static void
+mt753x_teardown(struct dsa_switch *ds)
+{
+ struct mt7530_priv *priv = ds->priv;
+
+ if (priv->bus)
+ cancel_delayed_work_sync(&priv->stats_work);
+}
+
static int mt753x_set_mac_eee(struct dsa_switch *ds, int port,
struct ethtool_keee *e)
{
@@ -3257,6 +3322,7 @@ static int mt7988_setup(struct dsa_switch *ds)
static const struct dsa_switch_ops mt7530_switch_ops = {
.get_tag_protocol = mtk_get_tag_protocol,
.setup = mt753x_setup,
+ .teardown = mt753x_teardown,
.preferred_default_local_cpu_port = mt753x_preferred_default_local_cpu_port,
.get_strings = mt7530_get_strings,
.get_ethtool_stats = mt7530_get_ethtool_stats,
@@ -3395,6 +3461,9 @@ mt7530_probe_common(struct mt7530_priv *priv)
priv->ds->ops = &mt7530_switch_ops;
priv->ds->phylink_mac_ops = &mt753x_phylink_mac_ops;
mutex_init(&priv->reg_mutex);
+ spin_lock_init(&priv->stats_lock);
+ INIT_DELAYED_WORK(&priv->stats_work, mt7530_stats_poll);
+
dev_set_drvdata(dev, priv);
return 0;

drivers/net/dsa/mt7530.h

View file
diff --git a/drivers/net/dsa/mt7530.h b/drivers/net/dsa/mt7530.h
index 3e0090b..dd33b0d 100644
--- a/drivers/net/dsa/mt7530.h
+++ b/drivers/net/dsa/mt7530.h
@@ -796,6 +796,7 @@ struct mt7530_fdb {
* @pvid: The VLAN specified is to be considered a PVID at ingress. Any
* untagged frames will be assigned to the related VLAN.
* @sgmii_pcs: Pointer to PCS instance for SerDes ports
+ * @stats: Cached port statistics for MDIO-connected switches
*/
struct mt7530_port {
bool enable;
@@ -803,6 +804,7 @@ struct mt7530_port {
u32 pm;
u16 pvid;
struct phylink_pcs *sgmii_pcs;
+ struct rtnl_link_stats64 stats;
};
/* Port 5 mode definitions of the MT7530 switch */
@@ -875,6 +877,9 @@ struct mt753x_info {
* @create_sgmii: Pointer to function creating SGMII PCS instance(s)
* @active_cpu_ports: Holding the active CPU ports
* @mdiodev: The pointer to the MDIO device structure
+ * @stats_lock: Protects cached per-port stats from concurrent access
+ * @stats_work: Delayed work for polling MIB counters on MDIO switches
+ * @stats_last: Jiffies timestamp of last MIB counter poll
*/
struct mt7530_priv {
struct device *dev;
@@ -900,6 +905,9 @@ struct mt7530_priv {
int (*create_sgmii)(struct mt7530_priv *priv);
u8 active_cpu_ports;
struct mdio_device *mdiodev;
+ spinlock_t stats_lock; /* protects cached stats counters */
+ struct delayed_work stats_work;
+ unsigned long stats_last;
};
struct mt7530_hw_vlan_entry {

drivers/net/ethernet/airoha/airoha_eth.c

View file
diff --git a/drivers/net/ethernet/airoha/airoha_eth.c b/drivers/net/ethernet/airoha/airoha_eth.c
index f8b3d53..d0c0c0e 100644
--- a/drivers/net/ethernet/airoha/airoha_eth.c
+++ b/drivers/net/ethernet/airoha/airoha_eth.c
@@ -2120,14 +2120,12 @@ static netdev_tx_t airoha_dev_xmit(struct sk_buff *skb,
return NETDEV_TX_OK;
error_unmap:
- while (!list_empty(&tx_list)) {
- e = list_first_entry(&tx_list, struct airoha_queue_entry,
- list);
+ list_for_each_entry(e, &tx_list, list) {
dma_unmap_single(dev->dev.parent, e->dma_addr, e->dma_len,
DMA_TO_DEVICE);
e->dma_addr = 0;
- list_move_tail(&e->list, &q->tx_list);
}
+ list_splice(&tx_list, &q->tx_list);
spin_unlock_bh(&q->lock);
error:

drivers/net/ethernet/amd/xgbe/xgbe.h

View file
diff --git a/drivers/net/ethernet/amd/xgbe/xgbe.h b/drivers/net/ethernet/amd/xgbe/xgbe.h
index 60b7e53..3d3b090 100644
--- a/drivers/net/ethernet/amd/xgbe/xgbe.h
+++ b/drivers/net/ethernet/amd/xgbe/xgbe.h
@@ -135,11 +135,11 @@
*/
#define XGBE_TSTAMP_SSINC 20
#define XGBE_TSTAMP_SNSINC 0
-#define XGBE_PTP_ACT_CLK_FREQ 500000000
+#define XGBE_PTP_ACT_CLK_FREQ (NSEC_PER_SEC / XGBE_TSTAMP_SSINC)
#define XGBE_V2_TSTAMP_SSINC 0xA
#define XGBE_V2_TSTAMP_SNSINC 0
-#define XGBE_V2_PTP_ACT_CLK_FREQ 1000000000
+#define XGBE_V2_PTP_ACT_CLK_FREQ (NSEC_PER_SEC / XGBE_V2_TSTAMP_SSINC)
/* Define maximum supported values */
#define XGBE_MAX_PPS_OUT 4

drivers/net/ethernet/broadcom/bnxt/bnxt.c

View file
diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt.c b/drivers/net/ethernet/broadcom/bnxt/bnxt.c
index 8c55874..008c34c 100644
--- a/drivers/net/ethernet/broadcom/bnxt/bnxt.c
+++ b/drivers/net/ethernet/broadcom/bnxt/bnxt.c
@@ -3825,7 +3825,10 @@ static int bnxt_alloc_tpa_info(struct bnxt *bp)
if (bp->flags & BNXT_FLAG_CHIP_P5_PLUS) {
if (!bp->max_tpa_v2)
return 0;
- bp->max_tpa = max_t(u16, bp->max_tpa_v2, MAX_TPA_P5);
+ bp->max_tpa = min_t(u16, bp->max_tpa_v2, MAX_TPA_P5);
+ /* Older P5 FW sets max_tpa_v2 low by mistake except NPAR */
+ if (bp->max_tpa <= 32 && BNXT_CHIP_P5(bp) && !BNXT_NPAR(bp))
+ bp->max_tpa = MAX_TPA_P5;
}
for (i = 0; i < bp->rx_nr_rings; i++) {
@@ -17360,9 +17363,14 @@ static pci_ers_result_t bnxt_io_slot_reset(struct pci_dev *pdev)
netdev_info(bp->dev, "PCI Slot Reset\n");
- if (!(bp->flags & BNXT_FLAG_CHIP_P5_PLUS) &&
- test_bit(BNXT_STATE_PCI_CHANNEL_IO_FROZEN, &bp->state))
- msleep(900);
+ if (test_bit(BNXT_STATE_PCI_CHANNEL_IO_FROZEN, &bp->state)) {
+ /* After DPC, the chip should return CRS when the vendor ID
+ * config register is read until it is ready. On all chips,
+ * this is not happening reliably so add a 5-second delay as a
+ * workaround.
+ */
+ msleep(5000);
+ }
netdev_lock(netdev);

drivers/net/ethernet/broadcom/bnxt/bnxt_ptp.c

View file
diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt_ptp.c b/drivers/net/ethernet/broadcom/bnxt/bnxt_ptp.c
index 53f336d..5d41dc1 100644
--- a/drivers/net/ethernet/broadcom/bnxt/bnxt_ptp.c
+++ b/drivers/net/ethernet/broadcom/bnxt/bnxt_ptp.c
@@ -419,31 +419,13 @@ void bnxt_ptp_reapply_pps(struct bnxt *bp)
}
}
-static int bnxt_get_target_cycles(struct bnxt_ptp_cfg *ptp, u64 target_ns,
- u64 *cycles_delta)
-{
- u64 cycles_now;
- u64 nsec_now, nsec_delta;
- int rc;
-
- rc = bnxt_refclk_read(ptp->bp, NULL, &cycles_now);
- if (rc)
- return rc;
-
- nsec_now = bnxt_timecounter_cyc2time(ptp, cycles_now);
-
- nsec_delta = target_ns - nsec_now;
- *cycles_delta = div64_u64(nsec_delta << ptp->cc.shift, ptp->cc.mult);
- return 0;
-}
-
static int bnxt_ptp_perout_cfg(struct bnxt_ptp_cfg *ptp,
struct ptp_clock_request *rq)
{
struct hwrm_func_ptp_cfg_input *req;
struct bnxt *bp = ptp->bp;
struct timespec64 ts;
- u64 target_ns, delta;
+ u64 target_ns;
u16 enables;
int rc;
@@ -451,10 +433,6 @@ static int bnxt_ptp_perout_cfg(struct bnxt_ptp_cfg *ptp,
ts.tv_nsec = rq->perout.start.nsec;
target_ns = timespec64_to_ns(&ts);
- rc = bnxt_get_target_cycles(ptp, target_ns, &delta);
- if (rc)
- return rc;
-
rc = hwrm_req_init(bp, req, HWRM_FUNC_PTP_CFG);
if (rc)
return rc;
@@ -468,7 +446,10 @@ static int bnxt_ptp_perout_cfg(struct bnxt_ptp_cfg *ptp,
req->ptp_freq_adj_dll_phase = 0;
req->ptp_freq_adj_ext_period = cpu_to_le32(NSEC_PER_SEC);
req->ptp_freq_adj_ext_up = 0;
- req->ptp_freq_adj_ext_phase_lower = cpu_to_le32(delta);
+ req->ptp_freq_adj_ext_phase_lower =
+ cpu_to_le32(lower_32_bits(target_ns));
+ req->ptp_freq_adj_ext_phase_upper =
+ cpu_to_le32(upper_32_bits(target_ns));
return hwrm_req_send(bp, req);
}

drivers/net/ethernet/broadcom/bnxt/bnxt_ulp.c

View file
diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt_ulp.c b/drivers/net/ethernet/broadcom/bnxt/bnxt_ulp.c
index 052bf69..5c75193 100644
--- a/drivers/net/ethernet/broadcom/bnxt/bnxt_ulp.c
+++ b/drivers/net/ethernet/broadcom/bnxt/bnxt_ulp.c
@@ -175,8 +175,14 @@ int bnxt_register_dev(struct bnxt_en_dev *edev,
ulp->handle = handle;
rcu_assign_pointer(ulp->ulp_ops, ulp_ops);
- if (test_bit(BNXT_STATE_OPEN, &bp->state))
- bnxt_hwrm_vnic_cfg(bp, &bp->vnic_info[BNXT_VNIC_DEFAULT]);
+ if (test_bit(BNXT_STATE_OPEN, &bp->state)) {
+ rc = bnxt_hwrm_vnic_cfg(bp, &bp->vnic_info[BNXT_VNIC_DEFAULT]);
+ if (rc) {
+ netdev_err(dev, "Failed to configure dual VNIC mode\n");
+ RCU_INIT_POINTER(ulp->ulp_ops, NULL);
+ goto exit;
+ }
+ }
edev->ulp_tbl->msix_requested = bnxt_get_ulp_msix_num(bp);

drivers/net/ethernet/cortina/gemini.c

View file
diff --git a/drivers/net/ethernet/cortina/gemini.c b/drivers/net/ethernet/cortina/gemini.c
index 4824232..065cbbf 100644
--- a/drivers/net/ethernet/cortina/gemini.c
+++ b/drivers/net/ethernet/cortina/gemini.c
@@ -1491,6 +1491,11 @@ static unsigned int gmac_rx(struct net_device *netdev, unsigned int budget)
gpage = gmac_get_queue_page(geth, port, mapping + PAGE_SIZE);
if (!gpage) {
dev_err(geth->dev, "could not find mapping\n");
+ if (skb) {
+ napi_free_frags(&port->napi);
+ port->stats.rx_dropped++;
+ skb = NULL;
+ }
continue;
}
page = gpage->page;

drivers/net/ethernet/freescale/enetc/enetc.h

View file
diff --git a/drivers/net/ethernet/freescale/enetc/enetc.h b/drivers/net/ethernet/freescale/enetc/enetc.h
index e663bb5..e691144 100644
--- a/drivers/net/ethernet/freescale/enetc/enetc.h
+++ b/drivers/net/ethernet/freescale/enetc/enetc.h
@@ -330,6 +330,7 @@ struct enetc_si {
struct workqueue_struct *workqueue;
struct work_struct rx_mode_task;
struct dentry *debugfs_root;
+ struct enetc_msg_swbd msg; /* Only valid for VSI */
};
#define ENETC_SI_ALIGN 32

drivers/net/ethernet/freescale/enetc/enetc_vf.c

View file
diff --git a/drivers/net/ethernet/freescale/enetc/enetc_vf.c b/drivers/net/ethernet/freescale/enetc/enetc_vf.c
index 6c4b374..df8e95c 100644
--- a/drivers/net/ethernet/freescale/enetc/enetc_vf.c
+++ b/drivers/net/ethernet/freescale/enetc/enetc_vf.c
@@ -17,11 +17,36 @@ static void enetc_msg_vsi_write_msg(struct enetc_hw *hw,
enetc_wr(hw, ENETC_VSIMSGSNDAR0, val);
}

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/marvell/octeontx2/af/cn20k/debugfs.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/marvell/octeontx2/af/cn20k/npc.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/marvell/octeontx2/af/cn20k/npc.h

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/marvell/octeontx2/af/rvu_nix.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/marvell/octeontx2/af/rvu_npc.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/marvell/octeontx2/af/rvu_npc_fs.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/mellanox/mlx5/core/en_accel/psp.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/mellanox/mlx5/core/en_main.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/mellanox/mlx5/core/lib/sd.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/mellanox/mlx5/core/lib/sd.h

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/meta/fbnic/fbnic_netdev.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/microchip/sparx5/sparx5_main.h

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/microchip/sparx5/sparx5_port.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/microsoft/mana/gdma_main.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/microsoft/mana/mana_en.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/microsoft/mana/shm_channel.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/renesas/rtsn.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/stmicro/stmmac/dwmac-nuvoton.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/wangxun/libwx/wx_hw.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/wangxun/libwx/wx_vf_common.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/netdevsim/netdev.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/netdevsim/netdevsim.h

View file

This diff is incomplete. Download the complete patch.

drivers/net/netdevsim/psp.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ovpn/io.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/phy/bcm-phy-lib.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/phy/bcm-phy-lib.h

View file

This diff is incomplete. Download the complete patch.

drivers/net/phy/bcm7xxx.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/phy/broadcom.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/phy/micrel.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/usb/asix_devices.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/usb/cdc_ncm.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/usb/r8152.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/veth.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/wan/fsl_ucc_hdlc.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/wireless/ath/ath10k/Kconfig

View file

This diff is incomplete. Download the complete patch.

drivers/net/wireless/ath/ath12k/core.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/wireless/ath/ath12k/dp_rx.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/wireless/ath/ath12k/mac.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/wireless/ath/ath12k/p2p.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/wireless/ath/ath12k/wmi.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/wireless/ath/ath5k/base.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/wireless/broadcom/b43/xmit.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/wireless/broadcom/b43legacy/xmit.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/wireless/marvell/libertas/if_usb.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/wireless/rsi/rsi_common.h

View file

This diff is incomplete. Download the complete patch.

drivers/net/wireless/st/cw1200/pm.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/wwan/t7xx/t7xx_modem_ops.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/wwan/t7xx/t7xx_port_ctrl_msg.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/wwan/t7xx/t7xx_port_proxy.h

View file

This diff is incomplete. Download the complete patch.

include/linux/netfilter/x_tables.h

View file

This diff is incomplete. Download the complete patch.

include/linux/sched/isolation.h

View file

This diff is incomplete. Download the complete patch.

include/net/bluetooth/hci_core.h

View file

This diff is incomplete. Download the complete patch.

include/net/dropreason-core.h

View file

This diff is incomplete. Download the complete patch.

include/net/ip_vs.h

View file

This diff is incomplete. Download the complete patch.

include/net/ipv6.h

View file

This diff is incomplete. Download the complete patch.

include/net/mana/shm_channel.h

View file

This diff is incomplete. Download the complete patch.

include/net/netfilter/nf_dup_netdev.h

View file

This diff is incomplete. Download the complete patch.

include/net/netfilter/nf_flow_table.h

View file

This diff is incomplete. Download the complete patch.

include/net/netns/ipv4.h

View file

This diff is incomplete. Download the complete patch.

net/bluetooth/bnep/core.c

View file

This diff is incomplete. Download the complete patch.

net/bluetooth/hci_conn.c

View file

This diff is incomplete. Download the complete patch.

net/bluetooth/hci_event.c

View file

This diff is incomplete. Download the complete patch.

net/bluetooth/hidp/core.c

View file

This diff is incomplete. Download the complete patch.

net/bluetooth/iso.c

View file

This diff is incomplete. Download the complete patch.

net/bluetooth/l2cap_core.c

View file

This diff is incomplete. Download the complete patch.

net/bluetooth/l2cap_sock.c

View file

This diff is incomplete. Download the complete patch.

net/bluetooth/rfcomm/core.c

View file

This diff is incomplete. Download the complete patch.

net/bluetooth/sco.c

View file

This diff is incomplete. Download the complete patch.

net/core/dev.c

View file

This diff is incomplete. Download the complete patch.

net/core/netpoll.c

View file

This diff is incomplete. Download the complete patch.

net/core/rtnetlink.c

View file

This diff is incomplete. Download the complete patch.

net/ipv4/ah4.c

View file

This diff is incomplete. Download the complete patch.

net/ipv4/esp4.c

View file

This diff is incomplete. Download the complete patch.

net/ipv4/igmp.c

View file

This diff is incomplete. Download the complete patch.

net/ipv4/inetpeer.c

View file

This diff is incomplete. Download the complete patch.

net/ipv4/ip_output.c

View file

This diff is incomplete. Download the complete patch.

net/ipv4/ipmr.c

View file

This diff is incomplete. Download the complete patch.

net/ipv4/netfilter/nf_socket_ipv4.c

View file

This diff is incomplete. Download the complete patch.

net/ipv4/tcp_ipv4.c

View file

This diff is incomplete. Download the complete patch.

net/ipv4/tcp_minisocks.c

View file

This diff is incomplete. Download the complete patch.

net/ipv6/Kconfig

View file

This diff is incomplete. Download the complete patch.

net/ipv6/ah6.c

View file

This diff is incomplete. Download the complete patch.

net/ipv6/esp6.c

View file

This diff is incomplete. Download the complete patch.

net/ipv6/exthdrs_core.c

View file

This diff is incomplete. Download the complete patch.

net/ipv6/ip6_gre.c

View file

This diff is incomplete. Download the complete patch.

net/ipv6/ip6_input.c

View file

This diff is incomplete. Download the complete patch.

net/ipv6/ip6_output.c

View file

This diff is incomplete. Download the complete patch.

net/ipv6/ip6_tunnel.c

View file

This diff is incomplete. Download the complete patch.

net/ipv6/netfilter/nf_socket_ipv6.c

View file

This diff is incomplete. Download the complete patch.

net/ipv6/route.c

View file

This diff is incomplete. Download the complete patch.

net/ipv6/tcp_ipv6.c

View file

This diff is incomplete. Download the complete patch.

net/ipv6/xfrm6_protocol.c

View file

This diff is incomplete. Download the complete patch.

net/mac80211/mlme.c

View file

This diff is incomplete. Download the complete patch.

net/mac80211/rx.c

View file

This diff is incomplete. Download the complete patch.

net/mac80211/tests/chan-mode.c

View file

This diff is incomplete. Download the complete patch.

net/mac80211/util.c

View file

This diff is incomplete. Download the complete patch.

net/mctp/test/route-test.c

View file

This diff is incomplete. Download the complete patch.

net/mctp/test/utils.c

View file

This diff is incomplete. Download the complete patch.

net/mptcp/fastopen.c

View file

This diff is incomplete. Download the complete patch.

net/mptcp/pm.c

View file

This diff is incomplete. Download the complete patch.

net/mptcp/pm_kernel.c

View file

This diff is incomplete. Download the complete patch.

net/mptcp/sockopt.c

View file

This diff is incomplete. Download the complete patch.

net/mptcp/subflow.c

View file

This diff is incomplete. Download the complete patch.

net/netfilter/ipvs/ip_vs_conn.c

View file

This diff is incomplete. Download the complete patch.

net/netfilter/ipvs/ip_vs_core.c

View file

This diff is incomplete. Download the complete patch.

net/netfilter/ipvs/ip_vs_ctl.c

View file

This diff is incomplete. Download the complete patch.

net/netfilter/ipvs/ip_vs_est.c

View file

This diff is incomplete. Download the complete patch.

net/netfilter/nf_dup_netdev.c

View file

This diff is incomplete. Download the complete patch.

net/netfilter/nf_flow_table_core.c

View file

This diff is incomplete. Download the complete patch.

net/netfilter/nf_flow_table_ip.c

View file

This diff is incomplete. Download the complete patch.

net/netfilter/nf_flow_table_path.c

View file

This diff is incomplete. Download the complete patch.

net/netfilter/nf_tables_api.c

View file

This diff is incomplete. Download the complete patch.

net/netfilter/nf_tables_core.c

View file

This diff is incomplete. Download the complete patch.

net/netfilter/nft_compat.c

View file

This diff is incomplete. Download the complete patch.

net/netfilter/nft_exthdr.c

View file

This diff is incomplete. Download the complete patch.

net/netfilter/nft_fwd_netdev.c

View file

This diff is incomplete. Download the complete patch.

net/netfilter/nft_osf.c

View file

This diff is incomplete. Download the complete patch.

net/netfilter/nft_tproxy.c

View file

This diff is incomplete. Download the complete patch.

net/netfilter/x_tables.c

View file

This diff is incomplete. Download the complete patch.

net/netfilter/xt_CT.c

View file

This diff is incomplete. Download the complete patch.

net/netfilter/xt_TCPMSS.c

View file

This diff is incomplete. Download the complete patch.

net/netfilter/xt_TPROXY.c

View file

This diff is incomplete. Download the complete patch.

net/netfilter/xt_addrtype.c

View file

This diff is incomplete. Download the complete patch.

net/netfilter/xt_devgroup.c

View file

This diff is incomplete. Download the complete patch.

net/netfilter/xt_ecn.c

View file

This diff is incomplete. Download the complete patch.

net/netfilter/xt_hashlimit.c

View file

This diff is incomplete. Download the complete patch.

net/netfilter/xt_osf.c

View file

This diff is incomplete. Download the complete patch.

net/netfilter/xt_physdev.c

View file

This diff is incomplete. Download the complete patch.

net/netfilter/xt_policy.c

View file

This diff is incomplete. Download the complete patch.

net/netfilter/xt_set.c

View file

This diff is incomplete. Download the complete patch.

net/netfilter/xt_tcpmss.c

View file

This diff is incomplete. Download the complete patch.

net/openvswitch/vport-geneve.c

View file

This diff is incomplete. Download the complete patch.

net/openvswitch/vport-gre.c

View file

This diff is incomplete. Download the complete patch.

net/openvswitch/vport-netdev.c

View file

This diff is incomplete. Download the complete patch.

net/openvswitch/vport-netdev.h

View file

This diff is incomplete. Download the complete patch.

net/openvswitch/vport-vxlan.c

View file

This diff is incomplete. Download the complete patch.

net/psp/psp_main.c

View file

This diff is incomplete. Download the complete patch.

net/rds/message.c

View file

This diff is incomplete. Download the complete patch.

net/sched/sch_cake.c

View file

This diff is incomplete. Download the complete patch.

net/sched/sch_fq_codel.c

View file

This diff is incomplete. Download the complete patch.

net/sched/sch_pie.c

View file

This diff is incomplete. Download the complete patch.

net/sched/sch_red.c

View file

This diff is incomplete. Download the complete patch.

net/sched/sch_sfb.c

View file

This diff is incomplete. Download the complete patch.

net/sched/sch_sfq.c

View file

This diff is incomplete. Download the complete patch.

net/smc/af_smc.c

View file

This diff is incomplete. Download the complete patch.

net/tls/tls_sw.c

View file

This diff is incomplete. Download the complete patch.

net/unix/af_unix.c

View file

This diff is incomplete. Download the complete patch.

net/unix/garbage.c

View file

This diff is incomplete. Download the complete patch.

net/vmw_vsock/virtio_transport_common.c

View file

This diff is incomplete. Download the complete patch.

net/wireless/nl80211.c

View file

This diff is incomplete. Download the complete patch.

net/wireless/pmsr.c

View file

This diff is incomplete. Download the complete patch.

net/xdp/xsk.c

View file

This diff is incomplete. Download the complete patch.

net/xdp/xsk_buff_pool.c

View file

This diff is incomplete. Download the complete patch.

net/xfrm/xfrm_output.c

View file

This diff is incomplete. Download the complete patch.

net/xfrm/xfrm_state.c

View file

This diff is incomplete. Download the complete patch.

net/xfrm/xfrm_user.c

View file

This diff is incomplete. Download the complete patch.

tools/testing/selftests/drivers/net/hw/Makefile

View file

This diff is incomplete. Download the complete patch.

tools/testing/selftests/drivers/net/hw/config

View file

This diff is incomplete. Download the complete patch.

tools/testing/selftests/drivers/net/hw/ipsec_vxlan.py

View file

This diff is incomplete. Download the complete patch.

tools/testing/selftests/drivers/net/lib/py/load.py

View file

This diff is incomplete. Download the complete patch.

tools/testing/selftests/net/Makefile

View file

This diff is incomplete. Download the complete patch.

tools/testing/selftests/net/mptcp/mptcp_lib.sh

View file

This diff is incomplete. Download the complete patch.

tools/testing/selftests/net/mptcp/pm_netlink.sh

View file

This diff is incomplete. Download the complete patch.

tools/testing/selftests/net/openvswitch/openvswitch.sh

View file

This diff is incomplete. Download the complete patch.

tools/testing/selftests/net/openvswitch/ovs-dpctl.py

View file

This diff is incomplete. Download the complete patch.

tools/testing/selftests/net/ovpn/test.sh

View file

This diff is incomplete. Download the complete patch.

tools/testing/selftests/net/tcp_ecmp_failover.sh

View file

This diff is incomplete. Download the complete patch.

tools/testing/selftests/net/tls.c

View file

This diff is incomplete. Download the complete patch.

tools/testing/selftests/tc-testing/tc-tests/infra/qdiscs.json

View file

This diff is incomplete. Download the complete patch.