NIPA Branch net-next-hw-2025-11-04--08-00

Branches
Base trees
[+] net: mdio: Check regmap pointer returned by device_node_to_regmap()
[+] hinic3: fix misleading error message in hinic3_open_channel()
[+] MAINTAINERS: add brcm tag driver to b53
[+] net: dsa: b53: fix resetting speed and pause on forced link
[+] net: dsa: b53: fix bcm63xx RGMII port link adjustment
[+] Merge branch 'net-dsa-b53-fix-bcm63xx-rgmii-user-ports-with-speed-1g'
[+] net: dsa: b53: fix enabling ip multicast
[+] net: dsa: b53: stop reading ARL entries if search is done
[+] net: dsa: b53: properly bound ARL searches for < 4 ARL bin chips
[+] Merge branch 'net-dsa-b53-minor-fdb-related-fixes'
[+] net: phy: realtek: add interrupt support for RTL8221B
[+] net: dsa: yt921x: Fix spelling mistake "stucked" -> "stuck"
[+] net: phy: micrel: lan8842 errata
[+] net: phy: micrel: lan8842 errata
[+] Merge branch 'net-phy-micrel-lan8842-erratas'
[+] net: stmmac: rename devlink parameter ts_coarse into phc_coarse_adj
[+] sctp: Hold RCU read lock while iterating over address list
[+] sctp: Prevent TOCTOU out-of-bounds write
[+] sctp: Hold sock lock while iterating over address list
[+] Merge branch 'fix-sctp-diag-locking-issues'
[+] net: ionic: add dma_wmb() before ringing TX doorbell
[+] net: ionic: map SKB after pseudo-header checksum prep
[+] octeontx2-pf: Fix devm_kcalloc() error checking
[+] net: spacemit: Check netif_running() in emac_set_pauseparam()
[+] sctp: make sctp_transport_init() void
[+] net: usb: qmi_wwan: initialize MAC header offset in qmimux_rx_fixup
[+] mpls: Return early in mpls_label_ok().
[+] mpls: Hold dev refcnt for mpls_nh.
[+] mpls: Unify return paths in mpls_dev_notify().
[+] ipv6: Add in6_dev_rcu().
[+] mpls: Use in6_dev_rcu() and dev_net_rcu() in mpls_forward() and mpls_xmit().
[+] mpls: Add mpls_dev_rcu().
[+] mpls: Pass net to mpls_dev_get().
[+] mpls: Add mpls_route_input().
[+] mpls: Use mpls_route_input() where appropriate.
[+] mpls: Convert mpls_dump_routes() to RCU.
[+] mpls: Convert RTM_GETNETCONF to RCU.
[+] mpls: Protect net->mpls.platform_label with a per-netns mutex.
[+] mpls: Drop RTNL for RTM_NEWROUTE, RTM_DELROUTE, and RTM_GETROUTE.
[+] Merge branch 'mpls-remove-rtnl-dependency'
[+] net: Extend NAPI threaded polling to allow kthread based busy polling
[+] selftests: Add napi threaded busy poll test in `busy_poller`
[+] Merge branch 'add-support-to-do-threaded-napi-busy-poll'
[+] net: phy: introduce internal API for PHY MSE diagnostics
[+] ethtool: netlink: add ETHTOOL_MSG_MSE_GET and wire up PHY MSE access
[+] net: phy: micrel: add MSE interface support for KSZ9477 family
[+] net: phy: dp83td510: add MSE interface support for 10BASE-T1L
[+] Merge branch 'ethtool-introduce-phy-mse-diagnostics-uapi-and-drivers'
Documentation/netlink/specs/ethtool.yaml | 86 ++++++ Documentation/netlink/specs/netdev.yaml | 5 +- Documentation/networking/devlink/stmmac.rst | 21 +- Documentation/networking/ethtool-netlink.rst | 64 ++++ Documentation/networking/napi.rst | 50 +++- MAINTAINERS | 1 + drivers/net/dsa/b53/b53_common.c | 36 ++- drivers/net/dsa/b53/b53_regs.h | 3 +- drivers/net/dsa/yt921x.c | 2 +- .../net/ethernet/huawei/hinic3/hinic3_netdev_ops.c | 2 +- .../ethernet/marvell/octeontx2/nic/otx2_common.c | 6 +- drivers/net/ethernet/pensando/ionic/ionic_txrx.c | 34 +-- drivers/net/ethernet/spacemit/k1_emac.c | 3 + drivers/net/ethernet/stmicro/stmmac/stmmac_main.c | 2 +- drivers/net/mdio/mdio-airoha.c | 2 + drivers/net/phy/dp83td510.c | 62 ++++ drivers/net/phy/micrel.c | 265 +++++++++++++++++ drivers/net/phy/realtek/realtek_main.c | 56 ++++ drivers/net/usb/qmi_wwan.c | 6 + include/linux/netdevice.h | 4 +- include/linux/phy.h | 206 +++++++++++++ include/net/addrconf.h | 5 + include/net/netns/mpls.h | 1 + include/uapi/linux/ethtool_netlink_generated.h | 35 +++ include/uapi/linux/netdev.h | 1 + net/core/dev.c | 58 +++- net/core/dev.h | 3 + net/core/netdev-genl-gen.c | 2 +- net/ethtool/Makefile | 2 +- net/ethtool/mse.c | 329 +++++++++++++++++++++ net/ethtool/netlink.c | 10 + net/ethtool/netlink.h | 2 + net/mpls/af_mpls.c | 321 ++++++++++++-------- net/mpls/internal.h | 19 +- net/mpls/mpls_iptunnel.c | 6 +- net/sctp/diag.c | 21 +- net/sctp/transport.c | 21 +- tools/include/uapi/linux/netdev.h | 1 + tools/testing/selftests/net/busy_poll_test.sh | 24 +- tools/testing/selftests/net/busy_poller.c | 16 +- 40 files changed, 1586 insertions(+), 207 deletions(-)
New patches
@@ -1,217 +1,187 @@
nipa: dbg: try to capture info about xdp qstat failures
nipa: config: disable kmemleak auto scan
nipa: config: x86: disable GPUs and sound
nipa: drv: net: add timeout
nipa: forwarding: set timeout to 3 hours
nipa: config: disable CPU_MITIGATIONS
nipa: tc_action dbg
nipa: selftests: net: enable profiling
nipa: dbg: tests: bonding: print info on failure
nipa: timestamp - try waking
nipa: profile (time) test output
nipa: config: x86: use periodic HZ tick
nipa: disable 6.17's merge window kunit tests
nipa: disable random kunit tests
nipa: fbnic: link up on QEMU
[+] bnxt_en: Fix warning in bnxt_dl_reload_down()
[+] bnxt_en: Always provide max entry and entry size in coredump segments
[+] bnxt_en: Fix null pointer dereference in bnxt_bs_trace_check_wrap()
[+] bnxt_en: Fix a possible memory leak in bnxt_ptp_init
[+] bnxt_en: Shutdown FW DMA in bnxt_shutdown()
[+] virtio_net: Add get ethtool flow rules ops
[+] virtio_net: Add support for TCP and UDP ethtool rules
[+] virtio_net: Add support for IPv6 ethtool steering
[+] virtio_net: Implement IPv4 ethtool flow rules
[+] virtio_net: Use existing classifier if possible
[+] virtio_net: Implement layer 2 ethtool flow rules
[+] virtio_net: Create a FF group for ethtool steering
[+] virtio_net: Query and set flow filter caps
[+] virtio: Expose object create and destroy API
[+] virtio: Expose generic device capability operations
[+] virtio: Add config_op for admin commands
[+] virtio_pci: Remove supported_cap size build assert
[+] idpf: add support for IDPF PCI programming interface
[+] net: phy: make phy_device members pause and asym_pause bitfield bits
ti: netcp: convert to ndo_hwtstamp callbacks
net: mark deliver_skb() as unlikely and not inlined
netpoll: Fix deadlock in memory allocation under spinlock
rtnetlink: honor RTEXT_FILTER_SKIP_STATS in IFLA_STATS
qede: convert to use ndo_hwtstamp callbacks
net: pch_gbe: convert to use ndo_hwtstamp callbacks
net: thunderx: convert to use ndo_hwtstamp callbacks
net: octeon: mgmt: convert to use ndo_hwtstamp callbacks
net: liquidio_vf: convert to use ndo_hwtstamp callbacks
net: liquidio: convert to use ndo_hwtstamp callbacks
bnx2x: convert to use ndo_hwtstamp callbacks
net: wan: framer: pef2256: Switch to devm_mfd_add_devices()
net: dsa: add driver for MaxLinear GSW1xx switch family
net: dsa: add tagging driver for MaxLinear GSW1xx switch family
dt-bindings: net: dsa: lantiq,gswip: add support for MaxLinear GSW1xx switches
net: dsa: lantiq_gswip: allow adjusting MII delays
dt-bindings: net: dsa: lantiq,gswip: add support for MII delay properties
net: dsa: lantiq_gswip: add vendor property to setup MII refclk output
dt-bindings: net: dsa: lantiq,gswip: add MaxLinear RMII refclk output property
net: dsa: lantiq_gswip: define and use GSWIP_TABLE_MAC_BRIDGE_VAL1_VALID
net: dsa: lantiq_gswip: set link parameters also for CPU port
net: dsa: lantiq_gswip: support Energy Efficient Ethernet
net: dsa: lantiq_gswip: support enable/disable learning
net: dsa: lantiq_gswip: split into common and MMIO parts
[+] net: stmmac: imx: use ->set_phy_intf_sel()
[+] net: stmmac: imx: cleanup arguments for set_intf_mode() method
[+] net: stmmac: imx: simplify set_intf_mode() implementations
[+] net: stmmac: imx: use stmmac_get_phy_intf_sel()
[+] net: stmmac: imx: use FIELD_PREP()/FIELD_GET() for PHY_INTF_SEL_x
[+] net: stmmac: imx: convert to PHY_INTF_SEL_xxx
[+] net: stmmac: add support for configuring the phy_intf_sel inputs
[+] net: stmmac: add stmmac_get_phy_intf_sel()
[+] net: stmmac: add phy_intf_sel and ACTPHYIF definitions
[+] net: stmmac: s32: move PHY_INTF_SEL_x definitions out of the way
[+] net: stmmac: imx: use phylink's interface mode for set_clk_tx_rate()
net: altera-tse: Init PCS and phylink before registering netdev
net: altera-tse: Don't use netdev name for the PCS mdio bus
net: altera-tse: Warn on bad revision at probe time
net: altera-tse: Set platform drvdata before registering netdev
wireguard: queuing: preserve napi_id on decapsulation
net: airoha: Reorganize airoha_queue struct
net: airoha: Add the capability to consume out-of-order DMA tx descriptors
s390/ctcm: Use info level for handshake UC_RCRESET
dt-bindings: net: ethernet-phy: clarify when compatible must specify PHY ID
virtio_net: Fix a typo error in virtio_net
[-] net: ftgmac100: Add RGMII delay support for AST2600
[-] ARM: dts: aspeed: ast2600-evb: Configure RGMII delay for MAC
[-] ARM: dts: aspeed-g6: Add ethernet alise
[-] dt-bindings: net: ftgmac100: Add delay properties for AST2600
net: devmem: Remove unused declaration net_devmem_bind_tx_release()
gtp: Fix a typo error for size
veth: Fix a typo error in veth
net: sungem_phy: Fix a typo error in sungem_phy
xen/netfront: Comment Correction: Fix Spelling Error and Description of Queue Quantity Rules
ppp: enable TX scatter-gather
[-] net/core/sock: fix coding style issues Fix multiple coding style issues in net/core/sock.c:
[c] sctp: make sctp_transport_init() void
[c] net: spacemit: Check netif_running() in emac_set_pauseparam()
[c] net: phy: realtek: add interrupt support for RTL8221B
[c] net: dsa: b53: properly bound ARL searches for < 4 ARL bin chips
[c] net: dsa: b53: stop reading ARL entries if search is done
[c] net: dsa: b53: fix enabling ip multicast
[c] net: dsa: yt921x: Fix spelling mistake "stucked" -> "stuck"
selftests: mptcp: join: validate extra bind cases
selftests: mptcp: join: do_transfer: reduce code dup
mptcp: pm: in kernel: only use fullmesh endp if any
mptcp: pm: in-kernel: record fullmesh endp nb
[c] net: dsa: b53: fix bcm63xx RGMII port link adjustment
[c] net: dsa: b53: fix resetting speed and pause on forced link
[c] octeontx2-pf: Fix devm_kcalloc() error checking
net: sched: act_connmark: zero initialize the struct to avoid KMSAN
net: sched: act_ife: initialize struct tc_ife to fix KMSAN kernel-infoleak
[c] MAINTAINERS: add brcm tag driver to b53
net: rnpgbe: Add register_netdev
net: rnpgbe: Add basic mbx_fw support
net: rnpgbe: Add basic mbx ops support
net: rnpgbe: Add n500/n210 chip support with BAR2 mapping
net: rnpgbe: Add build support for rnpgbe
netkit: Add xsk support for af_xdp applications
netkit: Add io_uring zero-copy support for TCP
netkit: Add netkit notifier to check for unregistering devices
netkit: Implement rtnl_link_ops->alloc and ndo_queue_create
netkit: Document fast vs slowpath members via macros
netkit: Add single device mode for netkit
xsk: Proxy pool management for mapped queues
xsk: Extend xsk_rcv_check validation
xsk: Move NETDEV_XDP_ACT_ZC into generic header
net: Proxy net_mp_{open,close}_rxq for mapped queues
net, ethtool: Disallow peered real rxqs to be resized
net: Add peer info to queue-get response
net: Implement netdev_nl_bind_queue_doit
net: Add bind-queue operation
net: stmmac: socfpga: Add hardware supported cross-timestamp
net: stmmac: socfpga: Enable TSO for Agilex5 platform
net: stmmac: socfpga: Enable TBS support for Agilex5
net: stmmac: socfpga: Agilex5 EMAC platform configuration
[c] net: mdio: Check regmap pointer returned by device_node_to_regmap()
wireguard: netlink: generate netlink code
wireguard: netlink: rename netlink handlers
wireguard: netlink: convert to split ops
tools: ynl: add sample for wireguard
uapi: wireguard: generate header with ynl-gen
uapi: wireguard: move flag enums
uapi: wireguard: move enum wg_cmd
netlink: specs: add specification for wireguard
wireguard: netlink: enable strict genetlink validation
wireguard: netlink: use WG_KEY_LEN in policies
wireguard: netlink: validate nested arrays in policy
[c] net: ionic: map SKB after pseudo-header checksum prep
[c] net: ionic: add dma_wmb() before ringing TX doorbell
net: dsa: microchip: Fix a link check in ksz9477_pcs_read()
[c] net: phy: micrel: lan8842 errata
[c] net: phy: micrel: lan8842 errata
net: mdio: improve reset handling in mdio_device.c
net: mdio: common handling of phy device reset properties
net: mdio: move device reset functions to mdio_device.c
[c] hinic3: fix misleading error message in hinic3_open_channel()
amd-xgbe: add ethtool jumbo frame selftest
amd-xgbe: add ethtool split header selftest
amd-xgbe: add ethtool phy loopback selftest
amd-xgbe: introduce support ethtool selftest
net: selftests: export packet creation helpers for driver use
[-] net: stmmac: imx: use phylink's interface mode for set_clk_tx_rate()
xsk: add indirect call for xsk_destruct_skb
virtio_net: fix alignment for virtio_net_hdr_v1_hash
net/smc: fix mismatch between CLC header and proposal extensions
net: phy: fixed_phy: remove fixed_phy_add
MIPS: BCM47XX: remove creating a fixed phy
net: b44: register a fixed phy using fixed_phy_register_100fd if needed
m68k: coldfire: remove creating a fixed phy
net: fec: register a fixed phy using fixed_phy_register_100fd if needed
net: phy: fixed_phy: add helper fixed_phy_register_100fd
[c] net: stmmac: rename devlink parameter ts_coarse into phc_coarse_adj
virtio-net: fix received length check in big packets
tcp: accecn: enable AccECN
tcp: accecn: detect loss ACK w/ AccECN option and add TCP_ACCECN_OPTION_PERSIST
tcp: accecn: fallback outgoing half link to non-AccECN
tcp: accecn: unset ECT if receive or send ACE=0 in AccECN negotiaion
tcp: accecn: retransmit SYN/ACK without AccECN option or non-AccECN SYN/ACK
tcp: move increment of num_retrans
tcp: accecn: retransmit downgraded SYN in AccECN negotiation
tcp: accecn: handle unexpected AccECN negotiation feedback
tcp: disable RFC3168 fallback identifier for CC modules
tcp: L4S ECT(1) identifier and NEEDS_ACCECN for CC modules
selftests/net: gro: add self-test for TCP CWR flag
net: update commnets for SKB_GSO_TCP_ECN and SKB_GSO_TCP_ACCECN
gro: flushing when CWR is set negatively affects AccECN
tcp: try to avoid safer when ACKs are thinned
net/mlx5e: Defer channels closure to reduce interface down time
net/mlx5e: Pass old channels as argument to mlx5e_switch_priv_channels
net/mlx5e: Do not re-apply TIR loopback configuration if not necessary
net/mlx5: IPoIB, set self loopback prevention in TIR init
net/mlx5e: Allow setting self loopback prevention bits on TIR init
net/mlx5e: Use TIR API in mlx5e_modify_tirs_lb()
net/mlx5e: Enhance function structures for self loopback prevention application
[-] net: core: prevent NULL deref in generic_hwtstamp_ioctl_lower()
xsk: use a smaller new lock for shared pool case
xsk: do not enable/disable irq when grabbing/releasing xsk_tx_list_lock
net/rds: Give each connection its own workqueue
net/rds: Add per cp work queue
[c] mpls: Drop RTNL for RTM_NEWROUTE, RTM_DELROUTE, and RTM_GETROUTE.
[c] mpls: Protect net->mpls.platform_label with a per-netns mutex.
[c] mpls: Convert RTM_GETNETCONF to RCU.
[c] mpls: Convert mpls_dump_routes() to RCU.
[c] mpls: Use mpls_route_input() where appropriate.
[c] mpls: Add mpls_route_input().
[c] mpls: Pass net to mpls_dev_get().
[c] mpls: Add mpls_dev_rcu().
[c] mpls: Use in6_dev_rcu() and dev_net_rcu() in mpls_forward() and mpls_xmit().
[c] ipv6: Add in6_dev_rcu().
[c] mpls: Unify return paths in mpls_dev_notify().
[c] mpls: Hold dev refcnt for mpls_nh.
[c] mpls: Return early in mpls_label_ok().
quic: add packet builder and parser base
quic: add frame encoder and decoder base
quic: add timer management
quic: add crypto packet encryption and decryption
quic: add crypto key derivation and installation
quic: add packet number space
quic: add congestion control
quic: add path management
quic: add connection id management
quic: add stream management
quic: provide quic.h header files for kernel and userspace
quic: provide family ops for address and protocol
quic: provide common utilities and data structures
net: build socket infrastructure for QUIC protocol
net: define IPPROTO_QUIC and SOL_QUIC constants
[c] net: usb: qmi_wwan: initialize MAC header offset in qmimux_rx_fixup
[-] eea: introduce ethtool support
[-] eea: create/destroy rx,tx queues for netdevice open and stop
[-] eea: probe the netdevice and create adminq
[-] eea: introduce ring and descriptor structures
[-] eea: introduce PCI framework
[-] sfc: Fix double word in comments
[-] hinic3: Add netdev register interfaces
[-] hinic3: Add mac filter ops
[-] hinic3: Add NIC configuration ops
[-] hinic3: Add PF management interfaces
[-] hinic3: Add PF framework
[c] selftests: Add napi threaded busy poll test in `busy_poller`
[c] net: Extend NAPI threaded polling to allow kthread based busy polling
[c] sctp: Hold sock lock while iterating over address list
[c] sctp: Prevent TOCTOU out-of-bounds write
[c] sctp: Hold RCU read lock while iterating over address list
net: add net cookie for net device trace events
[-] net: bonding: use atomic instead of rtnl_mutex, to make sure peer notify updated
veth: more robust handing of race to avoid txq getting stuck
veth: enable dev_watchdog for detecting stalled TXQs
[c] net: phy: dp83td510: add MSE interface support for 10BASE-T1L
[c] net: phy: micrel: add MSE interface support for KSZ9477 family
[c] ethtool: netlink: add ETHTOOL_MSG_MSE_GET and wire up PHY MSE access
[c] net: phy: introduce internal API for PHY MSE diagnostics
Test results