Forum | Documentation | Website | Blog

Skip to content
Snippets Groups Projects
  • Linus Torvalds's avatar
    Merge tag 'net-next-6.11' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next · 51835949
    Linus Torvalds authored
    Pull networking updates from Jakub Kicinski:
     "Not much excitement - a handful of large patchsets (devmem among them)
      did not make it in time.
    
      Core & protocols:
    
       - Use local_lock in addition to local_bh_disable() to protect per-CPU
         resources in networking, a step closer for local_bh_disable() not
         to act as a big lock on PREEMPT_RT
    
       - Use flex array for netdevice priv area, ensure its cache alignment
    
       - Add a sysctl knob to allow user to specify a default rto_min at
         socket init time. Bit of a big hammer but multiple companies were
         independently carrying such patch downstream so clearly it's useful
    
       - Support scheduling transmission of packets based on CLOCK_TAI
    
       - Un-pin TCP TIMEWAIT timer to avoid it firing on CPUs later cordoned
         off using cpusets
    
       - Support multiple L2TPv3 UDP tunnels using the same 5-tuple address
    
       - Allow configuration of multipath hash seed, to both allow
         synchronizing hashing of two routers, and preventing partial
         accidental sync
    
       - Improve TCP compliance with RFC 9293 for simultaneous connect()
    
       - Support sending NAT keepalives in IPsec ESP in UDP states.
         Userspace IKE daemon had to do this before, but the kernel can
         better keep track of it
    
       - Support sending supervision HSR frames with MAC addresses stored in
         ProxyNodeTable when RedBox (i.e. HSR-SAN) is enabled
    
       - Introduce IPPROTO_SMC for selecting SMC when socket is created
    
       - Allow UDP GSO transmit from devices with no checksum offload
    
       - openvswitch: add packet sampling via psample, separating the
         sampled traffic from "upcall" packets sent to user space for
         forwarding
    
       - nf_tables: shrink memory consumption for transaction objects
    
      Things we sprinkled into general kernel code:
    
       - Power Sequencing subsystem (used by Qualcomm Bluetooth driver for
         QCA6390)           [ Already merged separately - Linus ]
    
       - Add IRQ information in sysfs for auxiliary bus
    
       - Introduce guard definition for local_lock
    
       - Add aligned flavor of __cacheline_group_{begin, end}() markings for
         grouping fields in structures
    
      BPF:
    
       - Notify user space (via epoll) when a struct_ops object is getting
         detached/unregistered
    
       - Add new kfuncs for a generic, open-coded bits iterator
    
       - Enable BPF programs to declare arrays of kptr, bpf_rb_root, and
         bpf_list_head
    
       - Support resilient split BTF which cuts down on duplication and
         makes BTF as compact as possible WRT BTF from modules
    
       - Add support for dumping kfunc prototypes from BTF which enables
         both detecting as well as dumping compilable prototypes for kfuncs
    
       - riscv64 BPF JIT improvements in particular to add 12-argument
         support for BPF trampolines and to utilize bpf_prog_pack for the
         latter
    
       - Add the capability to offload the netfilter flowtable in XDP layer
         through kfuncs
    
      Driver API:
    
       - Allow users to configure IRQ tresholds between which automatic IRQ
         moderation can choose
    
       - Expand Power Sourcing (PoE) status with power, class and failure
         reason. Support setting power limits
    
       - Track additional RSS contexts in the core, make sure configuration
         changes don't break them
    
       - Support IPsec crypto offload for IPv6 ESP and IPv4 UDP-encapsulated
         ESP data paths
    
       - Support updating firmware on SFP modules
    
      Tests and tooling:
    
       - mptcp: use net/lib.sh to manage netns
    
       - TCP-AO and TCP-MD5: replace debug prints used by tests with
         tracepoints
    
       - openvswitch: make test self-contained (don't depend on OvS CLI
         tools)
    
      Drivers:
    
       - Ethernet high-speed NICs:
          - Broadcom (bnxt):
             - increase the max total outstanding PTP TX packets to 4
             - add timestamping statistics support
             - implement netdev_queue_mgmt_ops
             - support new RSS context API
          - Intel (100G, ice, idpf):
             - implement FEC statistics and dumping signal quality indicators
             - support E825C products (with 56Gbps PHYs)
          - nVidia/Mellanox:
             - support HW-GRO
             - mlx4/mlx5: support per-queue statistics via netlink
             - obey the max number of EQs setting in sub-functions
          - AMD/Solarflare:
             - support new RSS context API
          - AMD/Pensando:
             - ionic: rework fix for doorbell miss to lower overhead and
               skip it on new HW
          - Wangxun:
             - txgbe: support Flow Director perfect filters
    
       - Ethernet NICs consumer, embedded and virtual:
          - Add driver for Tehuti Networks TN40xx chips
          - Add driver for Meta's internal NIC chips
          - Add driver for Ethernet MAC on Airoha EN7581 SoCs
          - Add driver for Renesas Ethernet-TSN devices
          - Google cloud vNIC:
             - flow steering support
          - Microsoft vNIC:
             - support page sizes other than 4KB on ARM64
          - vmware vNIC:
             - support latency measurement (update to version 9)
          - VirtIO net:
             - support for Byte Queue Limits
             - support configuring thresholds for automatic IRQ moderation
             - support for AF_XDP Rx zero-copy
          - Synopsys (stmmac):
             - support for STM32MP13 SoC
             - let platforms select the right PCS implementation
          - TI:
             - icssg-prueth: add multicast filtering support
             - icssg-prueth: enable PTP timestamping and PPS
          - Renesas:
             - ravb: improve Rx performance 30-400% by using page pool,
               theaded NAPI and timer-based IRQ coalescing
             - ravb: add MII support for R-Car V4M
          - Cadence (macb):
             - macb: add ARP support to Wake-On-LAN
          - Cortina:
             - use phylib for RX and TX pause configuration
    
       - Ethernet switches:
          - nVidia/Mellanox:
             - support configuration of multipath hash seed
             - report more accurate max MTU
             - use page_pool to improve Rx performance
          - MediaTek:
             - mt7530: add support for bridge port isolation
          - Qualcomm:
             - qca8k: add support for bridge port isolation
          - Microchip:
             - lan9371/2: add 100BaseTX PHY support
          - NXP:
             - vsc73xx: implement VLAN operations
    
       - Ethernet PHYs:
          - aquantia: enable support for aqr115c
          - aquantia: add support for PHY LEDs
          - realtek: add support for rtl8224 2.5Gbps PHY
          - xpcs: add memory-mapped device support
          - add BroadR-Reach link mode and support in Broadcom's PHY driver
    
       - CAN:
          - add document for ISO 15765-2 protocol support
          - mcp251xfd: workaround for erratum DS80000789E, use timestamps to
            catch when device returns incorrect FIFO status
    
       - WiFi:
          - mac80211/cfg80211:
             - parse Transmit Power Envelope (TPE) data in mac80211 instead
               of in drivers
             - improvements for 6 GHz regulatory flexibility
             - multi-link improvements
             - support multiple radios per wiphy
             - remove DEAUTH_NEED_MGD_TX_PREP flag
          - Intel (iwlwifi):
             - bump FW API to 91 for BZ/SC devices
             - report 64-bit radiotap timestamp
             - enable P2P low latency by default
             - handle Transmit Power Envelope (TPE) advertised by AP
             - remove support for older FW for new devices
             - fast resume (keeping the device configured)
             - mvm: re-enable Multi-Link Operation (MLO)
             - aggregation (A-MSDU) optimizations
          - MediaTek (mt76):
             - mt7925 Multi-Link Operation (MLO) support
          - Qualcomm (ath10k):
             - LED support for various chipsets
          - Qualcomm (ath12k):
             - remove unsupported Tx monitor handling
             - support channel 2 in 6 GHz band
             - support Spatial Multiplexing Power Save (SMPS) in 6 GHz band
             - supprt multiple BSSID (MBSSID) and Enhanced Multi-BSSID
               Advertisements (EMA)
             - support dynamic VLAN
             - add panic handler for resetting the firmware state
             - DebugFS support for datapath statistics
             - WCN7850: support for Wake on WLAN
          - Microchip (wilc1000):
             - read MAC address during probe to make it visible to user space
             - suspend/resume improvements
          - TI (wl18xx):
             - support newer firmware versions
          - RealTek (rtw89):
             - preparation for RTL8852BE-VT support
             - Wake on WLAN support for WiFi 6 chips
             - 36-bit PCI DMA support
          - RealTek (rtlwifi):
             - RTL8192DU support
          - Broadcom (brcmfmac):
             - Management Frame Protection support (to enable WPA3)
    
       - Bluetooth:
          - qualcomm: use the power sequencer for QCA6390
          - btusb: mediatek: add ISO data transmission functions
          - hci_bcm4377: add BCM4388 support
          - btintel: add support for BlazarU core
          - btintel: add support for Whale Peak2
          - btnxpuart: add support for AW693 A1 chipset
          - btnxpuart: add support for IW615 chipset
          - btusb: add Realtek RTL8852BE support ID 0x13d3:0x3591"
    
    * tag 'net-next-6.11' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next: (1589 commits)
      eth: fbnic: Fix spelling mistake "tiggerring" -> "triggering"
      tcp: Replace strncpy() with strscpy()
      wifi: ath12k: fix build vs old compiler
      tcp: Don't access uninit tcp_rsk(req)->ao_keyid in tcp_create_openreq_child().
      eth: fbnic: Write the TCAM tables used for RSS control and Rx to host
      eth: fbnic: Add L2 address programming
      eth: fbnic: Add basic Rx handling
      eth: fbnic: Add basic Tx handling
      eth: fbnic: Add link detection
      eth: fbnic: Add initial messaging to notify FW of our presence
      eth: fbnic: Implement Rx queue alloc/start/stop/free
      eth: fbnic: Implement Tx queue alloc/start/stop/free
      eth: fbnic: Allocate a netdevice and napi vectors with queues
      eth: fbnic: Add FW communication mechanism
      eth: fbnic: Add message parsing for FW messages
      eth: fbnic: Add register init to set PCIe/Ethernet device config
      eth: fbnic: Allocate core device specific structures and devlink interface
      eth: fbnic: Add scaffolding for Meta's NIC driver
      PCI: Add Meta Platforms vendor ID
      net/sched: cls_flower: propagate tca[TCA_OPTIONS] to NL_REQ_ATTR_CHECK
      ...
    51835949