projects/linux·commit 805185b7

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

805185b7 · Linus Torvalds <[email protected]> · 2026-06-25 12:25:36 -07:00

Pull networking fixes from Jakub Kicinski:
 "Including fixes from netfilter and IPsec.

  Current release - regressions:

   - do not acquire dev->tx_global_lock in netdev_watchdog_up()

   - ethtool: keep rtnl_lock for ops using ethtool_op_get_link()

   - fix deadlock in nested UP notifier events

  Current release - new code bugs:

   - eth:
      - cn20k: fix subbank free list indexing for search order
      - airoha: fix BQL underflow in shared QDMA TX ring

  Previous releases - regressions:

   - netfilter:
     - flowtable: fix offloaded ct timeout never being extended
     - nf_conncount: prevent connlimit drops for early confirmed ct

  Previous releases - always broken:

   - require CAP_NET_ADMIN in the originating netns when modifying
     cross-netns devices

   - report NAPI thread PID in the caller's pid namespace

   - mac802154: fix dirty frag in in-place crypto for IOT radios

   - sctp: hold socket lock when dumping endpoints in sctp_diag, avoid
     an overflow

   - eth: gve: fix header buffer corruption with header-split and HW-GRO

   - af_key: initialize alg_key_len for IPComp states, prevent OOB read"

* tag 'net-7.2-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net: (213 commits)
  selftests: bonding: add a test for VLAN propagation over a bonded real device
  vlan: defer real device state propagation to netdev_work
  net: add the driver-facing netdev_work scheduling API
  net: turn the rx_mode work into a generic netdev_work facility
  net: ethtool: keep rtnl_lock for ops using ethtool_op_get_link()
  rxrpc: Fix rxrpc_rotate_tx_rotate() to check there's something to rotate
  rxrpc: Fix leak of released call in recvmsg(MSG_PEEK)
  rxrpc: Fix socket notification race
  rxrpc: Fix potential infinite loop in rxrpc_recvmsg()
  rxrpc: Fix oob challenge leak in cleanup after notification failure
  rxrpc: Fix the reception of a reply packet before data transmission
  afs: Fix uncancelled rxrpc OOB message handler
  afs: Fix further netns teardown to cancel the preallocation charger
  rxrpc: Fix double unlock in rxrpc_recvmsg()
  rxrpc: Fix leak of connection from OOB challenge
  rxrpc: Fix ACKALL packet handling
  net: hns3: differentiate autoneg default values between copper and fiber
  net: hns3: fix permanent link down deadlock after reset
  net: hns3: refactor MAC autoneg and speed configuration
  net: hns3: unify copper port ksettings configuration path
  ...
Commit
805185b7c7a1069e407b6f7b3bc98e44d415f484
Parents
c75597ca · fe9f4ee6

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

Changes

239 files changed · +3040 −1289

FileStatusAddDelContent
.mailmapmodified+2−1View file
Documentation/devicetree/bindings/clock/qcom,ipq9574-cmn-pll.yamlmodified+1−1View file
Documentation/devicetree/bindings/clock/qcom,qca8k-nsscc.yamlmodified+1−1View file
Documentation/devicetree/bindings/net/qcom,ipq9574-ppe.yamlmodified+1−1View file
Documentation/devicetree/bindings/net/renesas,ether.yamlmodified+1−2View file
Documentation/networking/netdevices.rstmodified+2−0View file
MAINTAINERSmodified+3−4View file
drivers/net/dsa/mxl862xx/mxl862xx-host.cmodified+10−8View file
drivers/net/dsa/realtek/rtl8366rb-leds.cmodified+4−4View file
drivers/net/dsa/sja1105/sja1105_ptp.cmodified+1−1View file
drivers/net/ethernet/airoha/airoha_eth.cmodified+111−86View file
drivers/net/ethernet/airoha/airoha_eth.hmodified+1−2View file
drivers/net/ethernet/airoha/airoha_ppe.cmodified+2−1View file
drivers/net/ethernet/amazon/ena/ena_netdev.cmodified+21−2View file
drivers/net/ethernet/amd/au1000_eth.cmodified+2−1View file
drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.cmodified+1−2View file
drivers/net/ethernet/broadcom/bnxt/bnxt.cmodified+47−1View file
drivers/net/ethernet/broadcom/bnxt/bnxt.hmodified+5−0View file
drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.cmodified+1−0View file
drivers/net/ethernet/cadence/macb_main.cmodified+8−0View file
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.cmodified+9−1View file
drivers/net/ethernet/freescale/enetc/enetc4_pf.cmodified+3−0View file
drivers/net/ethernet/google/gve/gve_ethtool.cmodified+2−1View file
drivers/net/ethernet/google/gve/gve_rx_dqo.cmodified+18−10View file
drivers/net/ethernet/hisilicon/hns3/hns3_ethtool.cmodified+15−16View file
drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.cmodified+86−22View file
drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.hmodified+1−0View file
drivers/net/ethernet/ibm/ehea/ehea_main.cmodified+2−0View file
drivers/net/ethernet/ibm/emac/core.cmodified+6−7View file
drivers/net/ethernet/intel/e1000e/ich8lan.cmodified+3−0View file
drivers/net/ethernet/intel/e1000e/netdev.cmodified+14−1View file
drivers/net/ethernet/intel/i40e/i40e_debug.hmodified+1−1View file
drivers/net/ethernet/intel/iavf/iavf_ethtool.cmodified+1−0View file
drivers/net/ethernet/intel/ice/ice_common.cmodified+0−1View file
drivers/net/ethernet/intel/ice/ice_dpll.cmodified+14−6View file
drivers/net/ethernet/intel/ice/ice_eswitch.cmodified+2−2View file
drivers/net/ethernet/intel/ice/ice_ethtool.cmodified+8−4View file
drivers/net/ethernet/intel/ice/ice_main.cmodified+5−11View file
drivers/net/ethernet/intel/ice/ice_vf_lib.cmodified+1−1View file
drivers/net/ethernet/marvell/mvneta.cmodified+3−0View file
drivers/net/ethernet/marvell/octeontx2/af/cn20k/npc.cmodified+45−15View file
drivers/net/ethernet/marvell/octeontx2/af/mcs.cmodified+3−3View file
drivers/net/ethernet/marvell/octeontx2/af/rvu_cn10k.cmodified+9−0View file
drivers/net/ethernet/marvell/octeontx2/af/rvu_debugfs.cmodified+32−27View file
drivers/net/ethernet/marvell/octeontx2/af/rvu_devlink.cmodified+19−8View file
drivers/net/ethernet/marvell/octeontx2/af/rvu_nix.cmodified+8−3View file
drivers/net/ethernet/marvell/octeontx2/af/rvu_npc_fs.cmodified+1−1View file
drivers/net/ethernet/marvell/octeontx2/nic/cn10k_macsec.cmodified+8−2View file
drivers/net/ethernet/marvell/octeontx2/nic/otx2_pf.cmodified+1−0View file
drivers/net/ethernet/marvell/prestera/prestera_main.cmodified+1−1View file
drivers/net/ethernet/mediatek/mtk_eth_soc.cmodified+5−5View file
drivers/net/ethernet/mediatek/mtk_ppe.cmodified+2−2View file
drivers/net/ethernet/mellanox/mlx5/core/Kconfigmodified+1−1View file
drivers/net/ethernet/mellanox/mlx5/core/en_ethtool.cmodified+2−1View file
drivers/net/ethernet/mellanox/mlx5/core/en_rep.cmodified+2−1View file
drivers/net/ethernet/mellanox/mlx5/core/ipoib/ethtool.cmodified+3−1View file
drivers/net/ethernet/mellanox/mlx5/core/mlx5_core.hmodified+0−1View file
drivers/net/ethernet/mellanox/mlx5/core/port.cmodified+0−19View file
drivers/net/ethernet/meta/fbnic/fbnic_ethtool.cmodified+2−1View file
drivers/net/ethernet/meta/fbnic/fbnic_fw.cmodified+4−5View file
drivers/net/ethernet/meta/fbnic/fbnic_netdev.cmodified+6−1View file
drivers/net/ethernet/meta/fbnic/fbnic_pci.cmodified+4−0View file
drivers/net/ethernet/meta/fbnic/fbnic_rpc.cmodified+2−0View file
drivers/net/ethernet/microchip/sparx5/sparx5_switchdev.cmodified+3−1View file
drivers/net/ethernet/microsoft/mana/gdma_main.cmodified+64−14View file
drivers/net/ethernet/microsoft/mana/mana_bpf.cmodified+2−1View file
drivers/net/ethernet/microsoft/mana/mana_en.cmodified+14−2View file
drivers/net/ethernet/microsoft/mana/mana_ethtool.cmodified+2−1View file
drivers/net/ethernet/oki-semi/pch_gbe/pch_gbe_main.cmodified+29−9View file
drivers/net/ethernet/rocker/rocker_ofdpa.cmodified+3−0View file
drivers/net/ethernet/stmicro/stmmac/dwmac-spacemit.cmodified+8−5View file
drivers/net/ethernet/sun/sungem.cmodified+9−4View file
drivers/net/ethernet/sunplus/spl2sw_phy.cmodified+4−2View file
drivers/net/ethernet/ti/icssg/icssg_common.cmodified+39−33View file
drivers/net/ethernet/wangxun/ngbe/ngbe_main.cmodified+0−1View file
drivers/net/ethernet/wangxun/txgbe/txgbe_main.cmodified+0−1View file
drivers/net/geneve.cmodified+16−2View file
drivers/net/ieee802154/ca8210.cmodified+6−3View file
drivers/net/netconsole.cmodified+7−5View file
drivers/net/phy/realtek/realtek_main.cmodified+2−1View file
drivers/net/pse-pd/pd692x0.cmodified+1−1View file
drivers/net/thunderbolt/main.cmodified+6−2View file
drivers/net/usb/kalmia.cmodified+8−0View file
drivers/net/usb/lan78xx.cmodified+31−6View file
drivers/net/veth.cmodified+2−0View file
drivers/net/virtio_net.cmodified+6−3View file
drivers/net/wan/hdlc_ppp.cmodified+13−2View file
drivers/net/wan/ixp4xx_hss.cmodified+2−2View file
drivers/net/wwan/t7xx/t7xx_hif_cldma.cmodified+3−0View file
fs/afs/cm_security.cmodified+2−1View file
fs/afs/rxrpc.cmodified+9−1View file
include/linux/ethtool.hmodified+2−0View file
include/linux/netdevice.hmodified+17−4View file
include/linux/netfilter/x_tables.hmodified+21−8View file
include/net/dst_metadata.hmodified+5−2View file
include/net/ip_fib.hmodified+3−4View file
include/net/netfilter/nf_conntrack_expect.hmodified+14−3View file
include/net/netfilter/nf_conntrack_helper.hmodified+4−0View file
include/net/netfilter/nf_queue.hmodified+1−0View file
include/net/netfilter/nft_meta.hmodified+2−0View file
include/net/rtnetlink.hmodified+2−0View file
include/net/sctp/sctp.hmodified+2−1View file
include/net/xfrm.hmodified+11−4View file
include/uapi/linux/netfilter/nf_conntrack_common.hmodified+1−0View file
net/8021q/vlan.cmodified+8−68View file
net/8021q/vlan.hmodified+11−0View file
net/8021q/vlan_dev.cmodified+60−0View file
net/batman-adv/bat_iv_ogm.cmodified+10−1View file
net/batman-adv/bat_v.cmodified+1−0View file
net/batman-adv/bat_v_ogm.cmodified+22−1View file
net/batman-adv/distributed-arp-table.cmodified+9−3View file
net/batman-adv/fragmentation.cmodified+21−1View file
net/batman-adv/fragmentation.hmodified+2−1View file
net/batman-adv/hard-interface.cmodified+2−26View file
net/batman-adv/routing.cmodified+69−4View file
net/batman-adv/tp_meter.cmodified+48−26View file
net/batman-adv/translation-table.cmodified+10−2View file
net/batman-adv/tvlv.cmodified+63−6View file
net/batman-adv/types.hmodified+13−8View file
net/bridge/netfilter/nft_meta_bridge.cmodified+21−2View file
net/core/Makefilemodified+1−1View file
net/core/dev.cmodified+2−0View file
net/core/dev.hmodified+10−1View file
net/core/dev_addr_lists.cmodified+3−74View file
net/core/filter.cmodified+1−1View file
net/core/flow_dissector.cmodified+10−2View file
net/core/lwtunnel.cmodified+6−0View file
net/core/netdev-genl.cmodified+3−1View file
net/core/netdev_work.cadded+162−0View file
net/core/rtnetlink.cmodified+8−0View file
net/devlink/rate.cmodified+14−11View file
net/ethtool/common.hmodified+4−0View file
net/ieee802154/core.cmodified+29−22View file
net/ieee802154/header_ops.cmodified+6−3View file
net/ieee802154/ieee802154.hmodified+17−0View file
net/ieee802154/netlink.cmodified+18−18View file
net/ipv4/ip_gre.cmodified+6−0View file
net/ipv4/ip_output.cmodified+2−5View file
net/ipv4/ip_vti.cmodified+3−0View file
net/ipv4/ipip.cmodified+3−0View file
net/ipv4/netfilter/nf_reject_ipv4.cmodified+1−1View file
net/ipv4/sysctl_net_ipv4.cmodified+8−2View file
net/ipv4/tcp_ao.cmodified+4−0View file
net/ipv4/tcp_output.cmodified+2−2View file
net/ipv4/udp_tunnel_nic.cmodified+1−1View file
net/ipv4/xfrm4_input.cmodified+0−2View file
net/ipv6/addrconf.cmodified+28−14View file
net/ipv6/ioam6_iptunnel.cmodified+4−4View file
net/ipv6/ip6_gre.cmodified+6−0View file
net/ipv6/ip6_output.cmodified+3−6View file
net/ipv6/ip6_tunnel.cmodified+10−0View file
net/ipv6/ip6_vti.cmodified+3−0View file
net/ipv6/ndisc.cmodified+3−5View file
net/ipv6/route.cmodified+3−0View file
net/ipv6/sit.cmodified+3−0View file
net/ipv6/xfrm6_input.cmodified+0−2View file
net/key/af_key.cmodified+1−0View file
net/llc/sysctl_net_llc.cmodified+1−1View file
net/mac802154/llsec.cmodified+14−0View file
net/mac802154/scan.cmodified+1−0View file
net/netfilter/Kconfigmodified+6−5View file
net/netfilter/ipset/ip_set_bitmap_gen.hmodified+3−1View file
net/netfilter/ipset/ip_set_bitmap_ip.cmodified+1−1View file
net/netfilter/ipset/ip_set_bitmap_ipmac.cmodified+1−1View file
net/netfilter/ipset/ip_set_bitmap_port.cmodified+1−1View file
net/netfilter/ipset/ip_set_core.cmodified+2−2View file
net/netfilter/ipset/ip_set_hash_gen.hmodified+6−6View file
net/netfilter/nf_conncount.cmodified+5−6View file
net/netfilter/nf_conntrack_broadcast.cmodified+1−0View file
net/netfilter/nf_conntrack_core.cmodified+32−1View file
net/netfilter/nf_conntrack_expect.cmodified+81−74View file
net/netfilter/nf_conntrack_h323_main.cmodified+2−2View file
net/netfilter/nf_conntrack_helper.cmodified+11−8View file
net/netfilter/nf_conntrack_irc.cmodified+2−0View file
net/netfilter/nf_conntrack_netlink.cmodified+13−32View file
net/netfilter/nf_conntrack_pptp.cmodified+2−0View file
net/netfilter/nf_conntrack_sip.cmodified+5−8View file
net/netfilter/nf_flow_table_core.cmodified+9−4View file
net/netfilter/nf_flow_table_ip.cmodified+24−64View file
net/netfilter/nf_flow_table_path.cmodified+3−1View file
net/netfilter/nf_nat_core.cmodified+10−0View file
net/netfilter/nf_queue.cmodified+14−0View file
net/netfilter/nfnetlink_queue.cmodified+3−0View file
net/netfilter/nft_compat.cmodified+21−3View file
net/netfilter/nft_ct.cmodified+18−4View file
net/netfilter/nft_meta.cmodified+3−2View file
net/netfilter/nft_payload.cmodified+13−3View file
net/netfilter/nft_synproxy.cmodified+4−5View file
net/netfilter/xt_cluster.cmodified+1−1View file
net/openvswitch/conntrack.cmodified+2−1View file
net/psample/psample.cmodified+4−2View file
net/rds/send.cmodified+2−0View file
net/rxrpc/ar-internal.hmodified+4−2View file
net/rxrpc/call_event.cmodified+4−1View file
net/rxrpc/call_object.cmodified+2−0View file
net/rxrpc/conn_client.cmodified+1−1View file
net/rxrpc/conn_event.cmodified+7−2View file
net/rxrpc/input.cmodified+32−7View file
net/rxrpc/oob.cmodified+10−2View file
net/rxrpc/recvmsg.cmodified+4−6View file
net/rxrpc/sendmsg.cmodified+2−1View file
net/sched/act_ct.cmodified+8−5View file
net/sched/cls_api.cmodified+3−0View file
net/sched/sch_dualpi2.cmodified+5−6View file
net/sched/sch_generic.cmodified+2−5View file
net/sctp/diag.cmodified+32−35View file
net/sctp/sm_statefuns.cmodified+5−0View file
net/sctp/socket.cmodified+22−7View file
net/tipc/core.cmodified+7−2View file
net/tipc/crypto.cmodified+9−0View file
net/tipc/discover.cmodified+12−2View file
net/tipc/udp_media.cmodified+14−5View file
net/xfrm/espintcp.cmodified+7−27View file
net/xfrm/xfrm_input.cmodified+16−13View file
net/xfrm/xfrm_interface_core.cmodified+3−0View file
net/xfrm/xfrm_policy.cmodified+15−12View file
net/xfrm/xfrm_state.cmodified+15−8View file
net/xfrm/xfrm_user.cmodified+10−10View file
tools/net/ynl/Makefilemodified+1−1View file
tools/net/ynl/Makefile.depsmodified+2−0View file
tools/net/ynl/generated/Makefilemodified+1−1View file
tools/net/ynl/lib/Makefilemodified+1−1View file
tools/testing/selftests/bpf/configmodified+3−0View file
tools/testing/selftests/bpf/prog_tests/test_xsk.cmodified+54−42View file
tools/testing/selftests/bpf/prog_tests/test_xsk.hmodified+2−0View file
tools/testing/selftests/bpf/prog_tests/xdp_context_test_run.cmodified+175−0View file
tools/testing/selftests/bpf/progs/test_xdp_meta.cmodified+71−52View file
tools/testing/selftests/drivers/net/bonding/Makefilemodified+1−0View file
tools/testing/selftests/drivers/net/bonding/bond_vlan_real_dev.shadded+180−0View file
tools/testing/selftests/drivers/net/so_txtime.cmodified+1−1View file
tools/testing/selftests/net/broadcast_ether_dst.shmodified+1−1View file
tools/testing/selftests/net/netfilter/conntrack_sctp_collision.shmodified+67−22View file
tools/testing/selftests/net/netfilter/nft_flowtable.shmodified+4−4View file
tools/testing/selftests/net/netfilter/nft_queue.shmodified+58−8View file
tools/testing/selftests/net/tls.cmodified+7−1View file
tools/testing/selftests/net/vlan_bridge_binding.shmodified+1−1View file
tools/testing/selftests/tc-testing/tc-tests/actions/ct.jsonmodified+38−0View file
tools/testing/selftests/tc-testing/tc-tests/qdiscs/dualpi2.jsonmodified+44−0View file
tools/testing/selftests/tc-testing/tdc_gso.pyadded+43−0View file

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

.mailmap

View file
diff --git a/.mailmap b/.mailmap
index 1f23ea6..23eb9a4 100644
--- a/.mailmap
+++ b/.mailmap
@@ -530,7 +530,8 @@ Luca Ceresoli <[email protected]> <[email protected]>
Maciej W. Rozycki <[email protected]> <[email protected]>

Documentation/devicetree/bindings/clock/qcom,ipq9574-cmn-pll.yaml

View file
diff --git a/Documentation/devicetree/bindings/clock/qcom,ipq9574-cmn-pll.yaml b/Documentation/devicetree/bindings/clock/qcom,ipq9574-cmn-pll.yaml
index de338c0..8cb86d7 100644
--- a/Documentation/devicetree/bindings/clock/qcom,ipq9574-cmn-pll.yaml
+++ b/Documentation/devicetree/bindings/clock/qcom,ipq9574-cmn-pll.yaml
@@ -8,7 +8,7 @@ title: Qualcomm CMN PLL Clock Controller on IPQ SoC
maintainers:
- Bjorn Andersson <[email protected]>
- - Luo Jie <[email protected]>
+ - Luo Jie <[email protected]>
description:
The CMN (or common) PLL clock controller expects a reference

Documentation/devicetree/bindings/clock/qcom,qca8k-nsscc.yaml

View file
diff --git a/Documentation/devicetree/bindings/clock/qcom,qca8k-nsscc.yaml b/Documentation/devicetree/bindings/clock/qcom,qca8k-nsscc.yaml
index 6147338..4807453 100644
--- a/Documentation/devicetree/bindings/clock/qcom,qca8k-nsscc.yaml
+++ b/Documentation/devicetree/bindings/clock/qcom,qca8k-nsscc.yaml
@@ -8,7 +8,7 @@ title: Qualcomm NSS Clock & Reset Controller on QCA8386/QCA8084
maintainers:
- Bjorn Andersson <[email protected]>
- - Luo Jie <[email protected]>
+ - Luo Jie <[email protected]>
description: |
Qualcomm NSS clock control module provides the clocks and resets

Documentation/devicetree/bindings/net/qcom,ipq9574-ppe.yaml

View file
diff --git a/Documentation/devicetree/bindings/net/qcom,ipq9574-ppe.yaml b/Documentation/devicetree/bindings/net/qcom,ipq9574-ppe.yaml
index 753f370..6d0b21a 100644
--- a/Documentation/devicetree/bindings/net/qcom,ipq9574-ppe.yaml
+++ b/Documentation/devicetree/bindings/net/qcom,ipq9574-ppe.yaml
@@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: Qualcomm IPQ packet process engine (PPE)
maintainers:
- - Luo Jie <[email protected]>
+ - Luo Jie <[email protected]>
- Lei Wei <[email protected]>
- Suruchi Agarwal <[email protected]>
- Pavithra R <[email protected]>

Documentation/devicetree/bindings/net/renesas,ether.yaml

View file
diff --git a/Documentation/devicetree/bindings/net/renesas,ether.yaml b/Documentation/devicetree/bindings/net/renesas,ether.yaml
index f0a52f4..dd7187f 100644
--- a/Documentation/devicetree/bindings/net/renesas,ether.yaml
+++ b/Documentation/devicetree/bindings/net/renesas,ether.yaml
@@ -121,8 +121,7 @@ examples:
#size-cells = <0>;
phy1: ethernet-phy@1 {
- compatible = "ethernet-phy-id0022.1537",
- "ethernet-phy-ieee802.3-c22";
+ compatible = "ethernet-phy-id0022.1537";
reg = <1>;
interrupt-parent = <&irqc0>;
interrupts = <0 IRQ_TYPE_LEVEL_LOW>;

Documentation/networking/netdevices.rst

View file
diff --git a/Documentation/networking/netdevices.rst b/Documentation/networking/netdevices.rst
index fde601a..d2a238f 100644
--- a/Documentation/networking/netdevices.rst
+++ b/Documentation/networking/netdevices.rst
@@ -433,6 +433,8 @@ exceptions) notifiers run under the instance lock. Please extend this
documentation whenever you make explicit assumption about lock being held
from a notifier.
+Drivers **must not** generate nested notifications of the ops-locked types.
+
NETDEV_INTERNAL symbol namespace
================================

MAINTAINERS

View file
diff --git a/MAINTAINERS b/MAINTAINERS
index bf97399..15011f5 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -22323,9 +22323,9 @@ F: Documentation/devicetree/bindings/power/supply/qcom,pmi8998-charger.yaml
F: drivers/power/supply/qcom_smbx.c
QUALCOMM PPE DRIVER
-M: Luo Jie <[email protected]>
+M: Luo Jie <[email protected]>
-S: Supported
+S: Maintained
F: Documentation/devicetree/bindings/net/qcom,ipq9574-ppe.yaml
F: Documentation/networking/device_drivers/ethernet/qualcomm/ppe/ppe.rst
F: drivers/net/ethernet/qualcomm/ppe/
@@ -26001,9 +26001,8 @@ S: Maintained
F: drivers/net/ethernet/dlink/sundance.c
SUNPLUS ETHERNET DRIVER
-M: Wells Lu <[email protected]>
-S: Maintained
+S: Orphan
W: https://sunplus.atlassian.net/wiki/spaces/doc/overview
F: Documentation/devicetree/bindings/net/sunplus,sp7021-emac.yaml
F: drivers/net/ethernet/sunplus/

drivers/net/dsa/mxl862xx/mxl862xx-host.c

View file
diff --git a/drivers/net/dsa/mxl862xx/mxl862xx-host.c b/drivers/net/dsa/mxl862xx/mxl862xx-host.c
index d55f9df..4acd216 100644
--- a/drivers/net/dsa/mxl862xx/mxl862xx-host.c
+++ b/drivers/net/dsa/mxl862xx/mxl862xx-host.c
@@ -12,6 +12,7 @@
#include <linux/crc16.h>
#include <linux/iopoll.h>
#include <linux/limits.h>
+#include <linux/unaligned.h>
#include <net/dsa.h>
#include "mxl862xx.h"
#include "mxl862xx-host.h"
@@ -40,12 +41,13 @@ static void mxl862xx_crc_err_work_fn(struct work_struct *work)
crc_err_work);
struct dsa_port *dp;
- dev_warn(&priv->mdiodev->dev,
- "MDIO CRC error detected, shutting down all ports\n");
-
rtnl_lock();
- dsa_switch_for_each_cpu_port(dp, priv->ds)
- dev_close(dp->conduit);
+ if (!test_bit(MXL862XX_FLAG_WORK_STOPPED, &priv->flags)) {
+ dev_warn(&priv->mdiodev->dev,
+ "MDIO CRC error detected, shutting down all ports\n");
+ dsa_switch_for_each_cpu_port(dp, priv->ds)
+ dev_close(dp->conduit);
+ }
rtnl_unlock();
clear_bit(MXL862XX_FLAG_CRC_ERR, &priv->flags);
@@ -349,7 +351,7 @@ int mxl862xx_api_wrap(struct mxl862xx_priv *priv, u16 cmd, void *_data,
* zero words individually.
*/
for (i = 0, zeros = 0; i < size / 2 && zeros < RST_DATA_THRESHOLD; i++)
- if (!data[i])
+ if (!get_unaligned_le16(&data[i]))
zeros++;
if (zeros < RST_DATA_THRESHOLD && (size & 1) && !*(u8 *)&data[i])
@@ -395,7 +397,7 @@ int mxl862xx_api_wrap(struct mxl862xx_priv *priv, u16 cmd, void *_data,
*/
val = *(u8 *)&data[i] | ((crc & 0xff) << 8);
} else {
- val = le16_to_cpu(data[i]);
+ val = get_unaligned_le16(&data[i]);
}
/* After RST_DATA, skip zero data words as the registers
@@ -453,7 +455,7 @@ int mxl862xx_api_wrap(struct mxl862xx_priv *priv, u16 cmd, void *_data,
*(uint8_t *)&data[i] = ret & 0xff;
crc = (ret >> 8) & 0xff;
} else {
- data[i] = cpu_to_le16((u16)ret);
+ put_unaligned_le16((u16)ret, &data[i]);
}
}

drivers/net/dsa/realtek/rtl8366rb-leds.c

View file
diff --git a/drivers/net/dsa/realtek/rtl8366rb-leds.c b/drivers/net/dsa/realtek/rtl8366rb-leds.c
index 509ffd3..ba50d31 100644
--- a/drivers/net/dsa/realtek/rtl8366rb-leds.c
+++ b/drivers/net/dsa/realtek/rtl8366rb-leds.c
@@ -89,6 +89,7 @@ static int rtl8366rb_setup_led(struct realtek_priv *priv, struct dsa_port *dp,
struct led_init_data init_data = { };
enum led_default_state state;
struct rtl8366rb_led *led;
+ char name[64];
u32 led_group;
int ret;
@@ -129,10 +130,9 @@ static int rtl8366rb_setup_led(struct realtek_priv *priv, struct dsa_port *dp,
init_data.fwnode = led_fwnode;
init_data.devname_mandatory = true;
- init_data.devicename = kasprintf(GFP_KERNEL, "Realtek-%d:0%d:%d",
- dp->ds->index, dp->index, led_group);
- if (!init_data.devicename)
- return -ENOMEM;
+ snprintf(name, sizeof(name), "Realtek-%d:0%d:%d",
+ dp->ds->index, dp->index, led_group);
+ init_data.devicename = name;
ret = devm_led_classdev_register_ext(priv->dev, &led->cdev, &init_data);
if (ret) {

drivers/net/dsa/sja1105/sja1105_ptp.c

View file
diff --git a/drivers/net/dsa/sja1105/sja1105_ptp.c b/drivers/net/dsa/sja1105/sja1105_ptp.c
index fefe46e..350f958 100644
--- a/drivers/net/dsa/sja1105/sja1105_ptp.c
+++ b/drivers/net/dsa/sja1105/sja1105_ptp.c
@@ -755,7 +755,7 @@ static int sja1105_per_out_enable(struct sja1105_private *priv,
* 2 edges on PTP_CLK. So check for truncation which happens
* at periods larger than around 68.7 seconds.
*/
- pin_duration = ns_to_sja1105_ticks(pin_duration / 2);
+ pin_duration = max_t(u64, ns_to_sja1105_ticks(pin_duration / 2), 1);
if (pin_duration > U32_MAX) {
rc = -ERANGE;
goto out;

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 64dde64..932b3a3 100644
--- a/drivers/net/ethernet/airoha/airoha_eth.c
+++ b/drivers/net/ethernet/airoha/airoha_eth.c
@@ -1004,6 +1004,7 @@ static int airoha_qdma_tx_napi_poll(struct napi_struct *napi, int budget)
e = &q->entry[index];
skb = e->skb;
+ e->skb = NULL;
dma_unmap_single(eth->dev, e->dma_addr, e->dma_len,
DMA_TO_DEVICE);
@@ -1147,55 +1148,76 @@ static int airoha_qdma_init_tx(struct airoha_qdma *qdma)
return 0;
}
-static void airoha_qdma_cleanup_tx_queue(struct airoha_queue *q)
+static void airoha_qdma_tx_cleanup(struct airoha_qdma *qdma)
{
- struct airoha_qdma *qdma = q->qdma;
- struct airoha_eth *eth = qdma->eth;
- int i, qid = q - &qdma->q_tx[0];
- u16 index = 0;
+ u32 status;
+ int i;
- spin_lock_bh(&q->lock);
- for (i = 0; i < q->ndesc; i++) {
- struct airoha_queue_entry *e = &q->entry[i];
- struct airoha_qdma_desc *desc = &q->desc[i];
+ airoha_qdma_clear(qdma, REG_QDMA_GLOBAL_CFG,
+ GLOBAL_CFG_TX_DMA_EN_MASK);
+ if (read_poll_timeout(airoha_qdma_rr, status,
+ !(status & GLOBAL_CFG_TX_DMA_BUSY_MASK),
+ USEC_PER_MSEC, 50 * USEC_PER_MSEC, true,
+ qdma, REG_QDMA_GLOBAL_CFG))
+ dev_warn(qdma->eth->dev, "QDMA TX DMA busy timeout\n");
- if (!e->dma_addr)
+ for (i = 0; i < ARRAY_SIZE(qdma->q_tx); i++) {
+ struct airoha_queue *q = &qdma->q_tx[i];
+ u16 index = 0;
+ int j;
+
+ if (!q->ndesc)
continue;
- dma_unmap_single(eth->dev, e->dma_addr, e->dma_len,
- DMA_TO_DEVICE);
- dev_kfree_skb_any(e->skb);
- e->dma_addr = 0;
- e->skb = NULL;
- list_add_tail(&e->list, &q->tx_list);
+ spin_lock_bh(&q->lock);
- /* Reset DMA descriptor */
- WRITE_ONCE(desc->ctrl, 0);
- WRITE_ONCE(desc->addr, 0);
- WRITE_ONCE(desc->data, 0);
- WRITE_ONCE(desc->msg0, 0);
- WRITE_ONCE(desc->msg1, 0);
- WRITE_ONCE(desc->msg2, 0);
+ q->flushing = true;
+ for (j = 0; j < q->ndesc; j++) {
+ struct airoha_queue_entry *e = &q->entry[j];
+ struct airoha_qdma_desc *desc = &q->desc[j];
+ struct sk_buff *skb = e->skb;
- q->queued--;
- }
+ if (!e->dma_addr)
+ continue;
- if (!list_empty(&q->tx_list)) {
- struct airoha_queue_entry *e;
+ dma_unmap_single(qdma->eth->dev, e->dma_addr,
+ e->dma_len, DMA_TO_DEVICE);
+ e->dma_addr = 0;
+ list_add_tail(&e->list, &q->tx_list);
+
+ WRITE_ONCE(desc->ctrl, 0);
+ WRITE_ONCE(desc->addr, 0);
+ WRITE_ONCE(desc->data, 0);
+ WRITE_ONCE(desc->msg0, 0);
+ WRITE_ONCE(desc->msg1, 0);
+ WRITE_ONCE(desc->msg2, 0);
+
+ if (skb) {
+ struct netdev_queue *txq;
+
+ txq = skb_get_tx_queue(skb->dev, skb);
+ netdev_tx_completed_queue(txq, 1, skb->len);
+ dev_kfree_skb_any(skb);
+ e->skb = NULL;
+ }
- e = list_first_entry(&q->tx_list, struct airoha_queue_entry,
- list);
- index = e - q->entry;
- }
- /* Set TX_DMA_IDX to TX_CPU_IDX to notify the hw the QDMA TX ring is
- * empty.
- */
- airoha_qdma_rmw(qdma, REG_TX_CPU_IDX(qid), TX_RING_CPU_IDX_MASK,
- FIELD_PREP(TX_RING_CPU_IDX_MASK, index));
- airoha_qdma_rmw(qdma, REG_TX_DMA_IDX(qid), TX_RING_DMA_IDX_MASK,
- FIELD_PREP(TX_RING_DMA_IDX_MASK, index));
+ q->queued--;
+ }
- spin_unlock_bh(&q->lock);
+ if (!list_empty(&q->tx_list)) {
+ struct airoha_queue_entry *e;
+
+ e = list_first_entry(&q->tx_list,
+ struct airoha_queue_entry, list);
+ index = e - q->entry;
+ }
+ airoha_qdma_rmw(qdma, REG_TX_CPU_IDX(i), TX_RING_CPU_IDX_MASK,
+ FIELD_PREP(TX_RING_CPU_IDX_MASK, index));
+ airoha_qdma_rmw(qdma, REG_TX_DMA_IDX(i), TX_RING_DMA_IDX_MASK,
+ FIELD_PREP(TX_RING_DMA_IDX_MASK, index));
+
+ spin_unlock_bh(&q->lock);
+ }
}
static int airoha_qdma_init_hfwd_queues(struct airoha_qdma *qdma)
@@ -1523,10 +1545,23 @@ static int airoha_qdma_init(struct platform_device *pdev,
return airoha_qdma_hw_init(qdma);
}
-static void airoha_qdma_cleanup(struct airoha_qdma *qdma)
+static void airoha_qdma_cleanup(struct airoha_eth *eth,
+ struct airoha_qdma *qdma)
{
int i;
+ if (test_bit(DEV_STATE_INITIALIZED, &eth->state)) {
+ u32 status;
+
+ airoha_qdma_clear(qdma, REG_QDMA_GLOBAL_CFG,
+ GLOBAL_CFG_RX_DMA_EN_MASK);
+ if (read_poll_timeout(airoha_qdma_rr, status,
+ !(status & GLOBAL_CFG_RX_DMA_BUSY_MASK),
+ USEC_PER_MSEC, 50 * USEC_PER_MSEC, true,
+ qdma, REG_QDMA_GLOBAL_CFG))
+ dev_warn(eth->dev, "QDMA RX DMA busy timeout\n");
+ }
+
for (i = 0; i < ARRAY_SIZE(qdma->q_rx); i++) {
if (!qdma->q_rx[i].ndesc)
continue;
@@ -1546,12 +1581,6 @@ static void airoha_qdma_cleanup(struct airoha_qdma *qdma)
netif_napi_del(&qdma->q_tx_irq[i].napi);
}
- for (i = 0; i < ARRAY_SIZE(qdma->q_tx); i++) {
- if (!qdma->q_tx[i].ndesc)
- continue;
-
- airoha_qdma_cleanup_tx_queue(&qdma->q_tx[i]);
- }
}
static int airoha_hw_init(struct platform_device *pdev,
@@ -1593,7 +1622,7 @@ static int airoha_hw_init(struct platform_device *pdev,
return 0;
error:
for (i = 0; i < ARRAY_SIZE(eth->qdma); i++)
- airoha_qdma_cleanup(&eth->qdma[i]);
+ airoha_qdma_cleanup(eth, &eth->qdma[i]);
return err;
}
@@ -1603,7 +1632,7 @@ static void airoha_hw_cleanup(struct airoha_eth *eth)
int i;
for (i = 0; i < ARRAY_SIZE(eth->qdma); i++)
- airoha_qdma_cleanup(&eth->qdma[i]);
+ airoha_qdma_cleanup(eth, &eth->qdma[i]);
airoha_ppe_deinit(eth);
}
@@ -1837,11 +1866,6 @@ static int airoha_dev_open(struct net_device *netdev)
}
port->users++;
- airoha_qdma_set(qdma, REG_QDMA_GLOBAL_CFG,
- GLOBAL_CFG_TX_DMA_EN_MASK |
- GLOBAL_CFG_RX_DMA_EN_MASK);
- qdma->users++;
-
if (!airoha_is_lan_gdm_dev(dev) &&
airoha_ppe_is_enabled(qdma->eth, 1))
pse_port = FE_PSE_PORT_PPE2;
@@ -1880,12 +1904,9 @@ static int airoha_dev_stop(struct net_device *netdev)
struct airoha_gdm_dev *dev = netdev_priv(netdev);
struct airoha_gdm_port *port = dev->port;
struct airoha_qdma *qdma = dev->qdma;
- int i;
netif_tx_disable(netdev);
airoha_set_vip_for_gdm_port(dev, false);
- for (i = 0; i < netdev->num_tx_queues; i++)
- netdev_tx_reset_subqueue(netdev, i);
if (--port->users)
airoha_set_port_mtu(dev->eth, port);
@@ -1893,20 +1914,6 @@ static int airoha_dev_stop(struct net_device *netdev)
airoha_set_gdm_port_fwd_cfg(qdma->eth,
REG_GDM_FWD_CFG(port->id),
FE_PSE_PORT_DROP);
-
- if (!--qdma->users) {
- airoha_qdma_clear(qdma, REG_QDMA_GLOBAL_CFG,
- GLOBAL_CFG_TX_DMA_EN_MASK |
- GLOBAL_CFG_RX_DMA_EN_MASK);
-
- for (i = 0; i < ARRAY_SIZE(qdma->q_tx); i++) {
- if (!qdma->q_tx[i].ndesc)
- continue;
-
- airoha_qdma_cleanup_tx_queue(&qdma->q_tx[i]);
- }
- }
-
return 0;
}
@@ -2110,7 +2117,7 @@ static u16 airoha_dev_select_queue(struct net_device *netdev,
*/
channel = netdev_uses_dsa(netdev) ? skb_get_queue_mapping(skb) : port->id;
channel = channel % AIROHA_NUM_QOS_CHANNELS;
- queue = (skb->priority - 1) % AIROHA_NUM_QOS_QUEUES; /* QoS queue */
+ queue = skb->priority % AIROHA_NUM_QOS_QUEUES;
queue = channel * AIROHA_NUM_QOS_QUEUES + queue;
return queue < netdev->num_tx_queues ? queue : 0;
@@ -2229,6 +2236,9 @@ static netdev_tx_t airoha_dev_xmit(struct sk_buff *skb,
spin_lock_bh(&q->lock);
+ if (q->flushing)
+ goto error_unlock;
+
txq = skb_get_tx_queue(netdev, skb);
nr_frags = 1 + skb_shinfo(skb)->nr_frags;
@@ -2309,7 +2319,7 @@ error_unmap:
e->dma_addr = 0;
}
list_splice(&tx_list, &q->tx_list);
-
+error_unlock:
spin_unlock_bh(&q->lock);
error:
dev_kfree_skb_any(skb);
@@ -2395,7 +2405,7 @@ static int airoha_qdma_set_chan_tx_sched(struct net_device *netdev,
struct airoha_gdm_dev *dev = netdev_priv(netdev);
int i;
- for (i = 0; i < AIROHA_NUM_TX_RING; i++)
+ for (i = 0; i < AIROHA_NUM_QOS_QUEUES; i++)
airoha_qdma_clear(dev->qdma, REG_QUEUE_CLOSE_CFG(channel),
TXQ_DISABLE_CHAN_QUEUE_MASK(channel, i));
@@ -2789,7 +2799,7 @@ static int airoha_tc_htb_alloc_leaf_queue(struct net_device *netdev,
struct tc_htb_qopt_offload *opt)
{
u32 channel = TC_H_MIN(opt->classid) % AIROHA_NUM_QOS_CHANNELS;
- int err, num_tx_queues = netdev->real_num_tx_queues;
+ int err, num_tx_queues = AIROHA_NUM_TX_RING + channel + 1;
struct airoha_gdm_dev *dev = netdev_priv(netdev);
struct airoha_qdma *qdma = dev->qdma;
@@ -2806,13 +2816,15 @@ static int airoha_tc_htb_alloc_leaf_queue(struct net_device *netdev,
if (err)
goto error;
- err = netif_set_real_num_tx_queues(netdev, num_tx_queues + 1);
- if (err) {
- airoha_qdma_set_tx_rate_limit(netdev, channel, 0,
- opt->quantum);
- NL_SET_ERR_MSG_MOD(opt->extack,
- "failed setting real_num_tx_queues");
- goto error;
+ if (num_tx_queues > netdev->real_num_tx_queues) {
+ err = netif_set_real_num_tx_queues(netdev, num_tx_queues);
+ if (err) {
+ airoha_qdma_set_tx_rate_limit(netdev, channel, 0,
+ opt->quantum);
+ NL_SET_ERR_MSG_MOD(opt->extack,
+ "failed setting real_num_tx_queues");
+ goto error;
+ }
}
set_bit(channel, dev->qos_sq_bmap);
@@ -3003,13 +3015,18 @@ static int airoha_dev_setup_tc_block(struct net_device *dev,
static void airoha_tc_remove_htb_queue(struct net_device *netdev, int queue)
{
struct airoha_gdm_dev *dev = netdev_priv(netdev);
+ int num_tx_queues = AIROHA_NUM_TX_RING;
struct airoha_qdma *qdma = dev->qdma;
- netif_set_real_num_tx_queues(netdev, netdev->real_num_tx_queues - 1);
- airoha_qdma_set_tx_rate_limit(netdev, queue + 1, 0, 0);
+ airoha_qdma_set_tx_rate_limit(netdev, queue, 0, 0);
clear_bit(queue, qdma->qos_channel_map);
clear_bit(queue, dev->qos_sq_bmap);
+
+ if (!bitmap_empty(dev->qos_sq_bmap, AIROHA_NUM_QOS_CHANNELS))
+ num_tx_queues += find_last_bit(dev->qos_sq_bmap,
+ AIROHA_NUM_QOS_CHANNELS) + 1;
+ netif_set_real_num_tx_queues(netdev, num_tx_queues);
}
static int airoha_tc_htb_delete_leaf_queue(struct net_device *netdev,
@@ -3413,8 +3430,12 @@ static int airoha_probe(struct platform_device *pdev)
if (err)
goto error_netdev_free;
- for (i = 0; i < ARRAY_SIZE(eth->qdma); i++)
+ for (i = 0; i < ARRAY_SIZE(eth->qdma); i++) {
airoha_qdma_start_napi(&eth->qdma[i]);
+ airoha_qdma_set(&eth->qdma[i], REG_QDMA_GLOBAL_CFG,
+ GLOBAL_CFG_TX_DMA_EN_MASK |
+ GLOBAL_CFG_RX_DMA_EN_MASK);
+ }
for_each_child_of_node(pdev->dev.of_node, np) {
if (!of_device_is_compatible(np, "airoha,eth-mac"))
@@ -3437,8 +3458,10 @@ static int airoha_probe(struct platform_device *pdev)
return 0;
error_napi_stop:
- for (i = 0; i < ARRAY_SIZE(eth->qdma); i++)
+ for (i = 0; i < ARRAY_SIZE(eth->qdma); i++) {
airoha_qdma_stop_napi(&eth->qdma[i]);
+ airoha_qdma_tx_cleanup(&eth->qdma[i]);
+ }
for (i = 0; i < ARRAY_SIZE(eth->ports); i++) {
struct airoha_gdm_port *port = eth->ports[i];
@@ -3474,8 +3497,10 @@ static void airoha_remove(struct platform_device *pdev)
struct airoha_eth *eth = platform_get_drvdata(pdev);
int i;
- for (i = 0; i < ARRAY_SIZE(eth->qdma); i++)
+ for (i = 0; i < ARRAY_SIZE(eth->qdma); i++) {
airoha_qdma_stop_napi(&eth->qdma[i]);
+ airoha_qdma_tx_cleanup(&eth->qdma[i]);
+ }
for (i = 0; i < ARRAY_SIZE(eth->ports); i++) {
struct airoha_gdm_port *port = eth->ports[i];

drivers/net/ethernet/airoha/airoha_eth.h

View file
diff --git a/drivers/net/ethernet/airoha/airoha_eth.h b/drivers/net/ethernet/airoha/airoha_eth.h
index 41d2e7a..d7ff8c5 100644
--- a/drivers/net/ethernet/airoha/airoha_eth.h
+++ b/drivers/net/ethernet/airoha/airoha_eth.h
@@ -197,6 +197,7 @@ struct airoha_queue {
int free_thr;
int buf_size;
bool txq_stopped;
+ bool flushing;
struct napi_struct napi;
struct page_pool *page_pool;
@@ -524,8 +525,6 @@ struct airoha_qdma {
struct airoha_eth *eth;
void __iomem *regs;
- int users;
-
struct airoha_irq_bank irq_banks[AIROHA_MAX_NUM_IRQ_BANKS];
struct airoha_tx_irq_queue q_tx_irq[AIROHA_NUM_TX_IRQ];

drivers/net/ethernet/airoha/airoha_ppe.c

View file
diff --git a/drivers/net/ethernet/airoha/airoha_ppe.c b/drivers/net/ethernet/airoha/airoha_ppe.c
index 329e7c2..42f4b0f 100644
--- a/drivers/net/ethernet/airoha/airoha_ppe.c
+++ b/drivers/net/ethernet/airoha/airoha_ppe.c
@@ -1601,7 +1601,8 @@ int airoha_ppe_init(struct airoha_eth *eth)
return -ENOMEM;
}
- ppe->foe_check_time = devm_kzalloc(eth->dev, ppe_num_entries,
+ ppe->foe_check_time = devm_kzalloc(eth->dev,
+ ppe_num_entries * sizeof(*ppe->foe_check_time),
GFP_KERNEL);
if (!ppe->foe_check_time)
return -ENOMEM;

drivers/net/ethernet/amazon/ena/ena_netdev.c

View file
diff --git a/drivers/net/ethernet/amazon/ena/ena_netdev.c b/drivers/net/ethernet/amazon/ena/ena_netdev.c
index 92d149d..5d05020 100644
--- a/drivers/net/ethernet/amazon/ena/ena_netdev.c

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/amd/au1000_eth.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c

View file

This diff is incomplete. Download the complete patch.

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

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/broadcom/bnxt/bnxt.h

View file

This diff is incomplete. Download the complete patch.

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

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/cadence/macb_main.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c

View file

This diff is incomplete. Download the complete patch.

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

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/google/gve/gve_ethtool.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/google/gve/gve_rx_dqo.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/hisilicon/hns3/hns3_ethtool.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.h

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/ibm/ehea/ehea_main.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/ibm/emac/core.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/intel/e1000e/ich8lan.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/intel/e1000e/netdev.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/intel/i40e/i40e_debug.h

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/intel/iavf/iavf_ethtool.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/intel/ice/ice_common.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/intel/ice/ice_dpll.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/intel/ice/ice_eswitch.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/intel/ice/ice_ethtool.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/intel/ice/ice_main.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/intel/ice/ice_vf_lib.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/marvell/mvneta.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/mcs.c

View file

This diff is incomplete. Download the complete patch.

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

View file

This diff is incomplete. Download the complete patch.

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

View file

This diff is incomplete. Download the complete patch.

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

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_fs.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/marvell/octeontx2/nic/cn10k_macsec.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/marvell/octeontx2/nic/otx2_pf.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/marvell/prestera/prestera_main.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/mediatek/mtk_eth_soc.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/mediatek/mtk_ppe.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/mellanox/mlx5/core/Kconfig

View file

This diff is incomplete. Download the complete patch.

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

View file

This diff is incomplete. Download the complete patch.

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

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/mellanox/mlx5/core/ipoib/ethtool.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/mellanox/mlx5/core/mlx5_core.h

View file

This diff is incomplete. Download the complete patch.

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

View file

This diff is incomplete. Download the complete patch.

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

View file

This diff is incomplete. Download the complete patch.

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

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/meta/fbnic/fbnic_pci.c

View file

This diff is incomplete. Download the complete patch.

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

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/microchip/sparx5/sparx5_switchdev.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_bpf.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/mana_ethtool.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/oki-semi/pch_gbe/pch_gbe_main.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/rocker/rocker_ofdpa.c

View file

This diff is incomplete. Download the complete patch.

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

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/sun/sungem.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/sunplus/spl2sw_phy.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/ti/icssg/icssg_common.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/wangxun/ngbe/ngbe_main.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/wangxun/txgbe/txgbe_main.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/geneve.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ieee802154/ca8210.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/netconsole.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/phy/realtek/realtek_main.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/pse-pd/pd692x0.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/thunderbolt/main.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/usb/kalmia.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/usb/lan78xx.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/virtio_net.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/wan/hdlc_ppp.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/wan/ixp4xx_hss.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/wwan/t7xx/t7xx_hif_cldma.c

View file

This diff is incomplete. Download the complete patch.

fs/afs/cm_security.c

View file

This diff is incomplete. Download the complete patch.

fs/afs/rxrpc.c

View file

This diff is incomplete. Download the complete patch.

include/linux/ethtool.h

View file

This diff is incomplete. Download the complete patch.

include/linux/netdevice.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/net/dst_metadata.h

View file

This diff is incomplete. Download the complete patch.

include/net/ip_fib.h

View file

This diff is incomplete. Download the complete patch.

include/net/netfilter/nf_conntrack_expect.h

View file

This diff is incomplete. Download the complete patch.

include/net/netfilter/nf_conntrack_helper.h

View file

This diff is incomplete. Download the complete patch.

include/net/netfilter/nf_queue.h

View file

This diff is incomplete. Download the complete patch.

include/net/netfilter/nft_meta.h

View file

This diff is incomplete. Download the complete patch.

include/net/rtnetlink.h

View file

This diff is incomplete. Download the complete patch.

include/net/sctp/sctp.h

View file

This diff is incomplete. Download the complete patch.

include/net/xfrm.h

View file

This diff is incomplete. Download the complete patch.

include/uapi/linux/netfilter/nf_conntrack_common.h

View file

This diff is incomplete. Download the complete patch.

net/8021q/vlan.c

View file

This diff is incomplete. Download the complete patch.

net/8021q/vlan.h

View file

This diff is incomplete. Download the complete patch.

net/8021q/vlan_dev.c

View file

This diff is incomplete. Download the complete patch.

net/batman-adv/bat_iv_ogm.c

View file

This diff is incomplete. Download the complete patch.

net/batman-adv/bat_v.c

View file

This diff is incomplete. Download the complete patch.

net/batman-adv/bat_v_ogm.c

View file

This diff is incomplete. Download the complete patch.

net/batman-adv/distributed-arp-table.c

View file

This diff is incomplete. Download the complete patch.

net/batman-adv/fragmentation.c

View file

This diff is incomplete. Download the complete patch.

net/batman-adv/fragmentation.h

View file

This diff is incomplete. Download the complete patch.

net/batman-adv/hard-interface.c

View file

This diff is incomplete. Download the complete patch.

net/batman-adv/routing.c

View file

This diff is incomplete. Download the complete patch.

net/batman-adv/tp_meter.c

View file

This diff is incomplete. Download the complete patch.

net/batman-adv/translation-table.c

View file

This diff is incomplete. Download the complete patch.

net/batman-adv/tvlv.c

View file

This diff is incomplete. Download the complete patch.

net/batman-adv/types.h

View file

This diff is incomplete. Download the complete patch.

net/bridge/netfilter/nft_meta_bridge.c

View file

This diff is incomplete. Download the complete patch.

net/core/Makefile

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/dev.h

View file

This diff is incomplete. Download the complete patch.

net/core/dev_addr_lists.c

View file

This diff is incomplete. Download the complete patch.

net/core/filter.c

View file

This diff is incomplete. Download the complete patch.

net/core/flow_dissector.c

View file

This diff is incomplete. Download the complete patch.

net/core/lwtunnel.c

View file

This diff is incomplete. Download the complete patch.

net/core/netdev-genl.c

View file

This diff is incomplete. Download the complete patch.

net/core/netdev_work.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/devlink/rate.c

View file

This diff is incomplete. Download the complete patch.

net/ethtool/common.h

View file

This diff is incomplete. Download the complete patch.

net/ieee802154/core.c

View file

This diff is incomplete. Download the complete patch.

net/ieee802154/header_ops.c

View file

This diff is incomplete. Download the complete patch.

net/ieee802154/ieee802154.h

View file

This diff is incomplete. Download the complete patch.

net/ieee802154/netlink.c

View file

This diff is incomplete. Download the complete patch.

net/ipv4/ip_gre.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/ip_vti.c

View file

This diff is incomplete. Download the complete patch.

net/ipv4/ipip.c

View file

This diff is incomplete. Download the complete patch.

net/ipv4/netfilter/nf_reject_ipv4.c

View file

This diff is incomplete. Download the complete patch.

net/ipv4/sysctl_net_ipv4.c

View file

This diff is incomplete. Download the complete patch.

net/ipv4/tcp_ao.c

View file

This diff is incomplete. Download the complete patch.

net/ipv4/tcp_output.c

View file

This diff is incomplete. Download the complete patch.

net/ipv4/udp_tunnel_nic.c

View file

This diff is incomplete. Download the complete patch.

net/ipv4/xfrm4_input.c

View file

This diff is incomplete. Download the complete patch.

net/ipv6/addrconf.c

View file

This diff is incomplete. Download the complete patch.

net/ipv6/ioam6_iptunnel.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_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/ip6_vti.c

View file

This diff is incomplete. Download the complete patch.

net/ipv6/ndisc.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/sit.c

View file

This diff is incomplete. Download the complete patch.

net/ipv6/xfrm6_input.c

View file

This diff is incomplete. Download the complete patch.

net/key/af_key.c

View file

This diff is incomplete. Download the complete patch.

net/llc/sysctl_net_llc.c

View file

This diff is incomplete. Download the complete patch.

net/mac802154/llsec.c

View file

This diff is incomplete. Download the complete patch.

net/mac802154/scan.c

View file

This diff is incomplete. Download the complete patch.

net/netfilter/Kconfig

View file

This diff is incomplete. Download the complete patch.

net/netfilter/ipset/ip_set_bitmap_gen.h

View file

This diff is incomplete. Download the complete patch.

net/netfilter/ipset/ip_set_bitmap_ip.c

View file

This diff is incomplete. Download the complete patch.

net/netfilter/ipset/ip_set_bitmap_ipmac.c

View file

This diff is incomplete. Download the complete patch.

net/netfilter/ipset/ip_set_bitmap_port.c

View file

This diff is incomplete. Download the complete patch.

net/netfilter/ipset/ip_set_core.c

View file

This diff is incomplete. Download the complete patch.

net/netfilter/ipset/ip_set_hash_gen.h

View file

This diff is incomplete. Download the complete patch.

net/netfilter/nf_conncount.c

View file

This diff is incomplete. Download the complete patch.

net/netfilter/nf_conntrack_broadcast.c

View file

This diff is incomplete. Download the complete patch.

net/netfilter/nf_conntrack_core.c

View file

This diff is incomplete. Download the complete patch.

net/netfilter/nf_conntrack_expect.c

View file

This diff is incomplete. Download the complete patch.

net/netfilter/nf_conntrack_h323_main.c

View file

This diff is incomplete. Download the complete patch.

net/netfilter/nf_conntrack_helper.c

View file

This diff is incomplete. Download the complete patch.

net/netfilter/nf_conntrack_irc.c

View file

This diff is incomplete. Download the complete patch.

net/netfilter/nf_conntrack_netlink.c

View file

This diff is incomplete. Download the complete patch.

net/netfilter/nf_conntrack_pptp.c

View file

This diff is incomplete. Download the complete patch.

net/netfilter/nf_conntrack_sip.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_nat_core.c

View file

This diff is incomplete. Download the complete patch.

net/netfilter/nf_queue.c

View file

This diff is incomplete. Download the complete patch.

net/netfilter/nfnetlink_queue.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_ct.c

View file

This diff is incomplete. Download the complete patch.

net/netfilter/nft_meta.c

View file

This diff is incomplete. Download the complete patch.

net/netfilter/nft_payload.c

View file

This diff is incomplete. Download the complete patch.

net/netfilter/nft_synproxy.c

View file

This diff is incomplete. Download the complete patch.

net/netfilter/xt_cluster.c

View file

This diff is incomplete. Download the complete patch.

net/openvswitch/conntrack.c

View file

This diff is incomplete. Download the complete patch.

net/psample/psample.c

View file

This diff is incomplete. Download the complete patch.

net/rds/send.c

View file

This diff is incomplete. Download the complete patch.

net/rxrpc/ar-internal.h

View file

This diff is incomplete. Download the complete patch.

net/rxrpc/call_event.c

View file

This diff is incomplete. Download the complete patch.

net/rxrpc/call_object.c

View file

This diff is incomplete. Download the complete patch.

net/rxrpc/conn_client.c

View file

This diff is incomplete. Download the complete patch.

net/rxrpc/conn_event.c

View file

This diff is incomplete. Download the complete patch.

net/rxrpc/input.c

View file

This diff is incomplete. Download the complete patch.

net/rxrpc/oob.c

View file

This diff is incomplete. Download the complete patch.

net/rxrpc/recvmsg.c

View file

This diff is incomplete. Download the complete patch.

net/rxrpc/sendmsg.c

View file

This diff is incomplete. Download the complete patch.

net/sched/act_ct.c

View file

This diff is incomplete. Download the complete patch.

net/sched/cls_api.c

View file

This diff is incomplete. Download the complete patch.

net/sched/sch_dualpi2.c

View file

This diff is incomplete. Download the complete patch.

net/sched/sch_generic.c

View file

This diff is incomplete. Download the complete patch.

net/sctp/diag.c

View file

This diff is incomplete. Download the complete patch.

net/sctp/sm_statefuns.c

View file

This diff is incomplete. Download the complete patch.

net/sctp/socket.c

View file

This diff is incomplete. Download the complete patch.

net/tipc/core.c

View file

This diff is incomplete. Download the complete patch.

net/tipc/crypto.c

View file

This diff is incomplete. Download the complete patch.

net/tipc/discover.c

View file

This diff is incomplete. Download the complete patch.

net/tipc/udp_media.c

View file

This diff is incomplete. Download the complete patch.

net/xfrm/espintcp.c

View file

This diff is incomplete. Download the complete patch.

net/xfrm/xfrm_input.c

View file

This diff is incomplete. Download the complete patch.

net/xfrm/xfrm_interface_core.c

View file

This diff is incomplete. Download the complete patch.

net/xfrm/xfrm_policy.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/net/ynl/Makefile

View file

This diff is incomplete. Download the complete patch.

tools/net/ynl/Makefile.deps

View file

This diff is incomplete. Download the complete patch.

tools/net/ynl/generated/Makefile

View file

This diff is incomplete. Download the complete patch.

tools/net/ynl/lib/Makefile

View file

This diff is incomplete. Download the complete patch.

tools/testing/selftests/bpf/config

View file

This diff is incomplete. Download the complete patch.

tools/testing/selftests/bpf/prog_tests/test_xsk.c

View file

This diff is incomplete. Download the complete patch.

tools/testing/selftests/bpf/prog_tests/test_xsk.h

View file

This diff is incomplete. Download the complete patch.

tools/testing/selftests/bpf/prog_tests/xdp_context_test_run.c

View file

This diff is incomplete. Download the complete patch.

tools/testing/selftests/bpf/progs/test_xdp_meta.c

View file

This diff is incomplete. Download the complete patch.

tools/testing/selftests/drivers/net/bonding/Makefile

View file

This diff is incomplete. Download the complete patch.

tools/testing/selftests/drivers/net/bonding/bond_vlan_real_dev.sh

View file

This diff is incomplete. Download the complete patch.

tools/testing/selftests/drivers/net/so_txtime.c

View file

This diff is incomplete. Download the complete patch.

tools/testing/selftests/net/broadcast_ether_dst.sh

View file

This diff is incomplete. Download the complete patch.

tools/testing/selftests/net/netfilter/conntrack_sctp_collision.sh

View file

This diff is incomplete. Download the complete patch.

tools/testing/selftests/net/netfilter/nft_flowtable.sh

View file

This diff is incomplete. Download the complete patch.

tools/testing/selftests/net/netfilter/nft_queue.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/net/vlan_bridge_binding.sh

View file

This diff is incomplete. Download the complete patch.

tools/testing/selftests/tc-testing/tc-tests/actions/ct.json

View file

This diff is incomplete. Download the complete patch.

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

View file

This diff is incomplete. Download the complete patch.

tools/testing/selftests/tc-testing/tdc_gso.py

View file

This diff is incomplete. Download the complete patch.