Commit 89ed67e
committed
Merge tag 'net-next-6.7' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next
Pull networking updates from Jakub Kicinski:
"Core & protocols:
- Support usec resolution of TCP timestamps, enabled selectively by a
route attribute.
- Defer regular TCP ACK while processing socket backlog, try to send
a cumulative ACK at the end. Increase single TCP flow performance
on a 200Gbit NIC by 20% (100Gbit -> 120Gbit).
- The Fair Queuing (FQ) packet scheduler:
- add built-in 3 band prio / WRR scheduling
- support bypass if the qdisc is mostly idle (5% speed up for TCP RR)
- improve inactive flow reporting
- optimize the layout of structures for better cache locality
- Support TCP Authentication Option (RFC 5925, TCP-AO), a more modern
replacement for the old MD5 option.
- Add more retransmission timeout (RTO) related statistics to
TCP_INFO.
- Support sending fragmented skbs over vsock sockets.
- Make sure we send SIGPIPE for vsock sockets if socket was
shutdown().
- Add sysctl for ignoring lower limit on lifetime in Router
Advertisement PIO, based on an in-progress IETF draft.
- Add sysctl to control activation of TCP ping-pong mode.
- Add sysctl to make connection timeout in MPTCP configurable.
- Support rcvlowat and notsent_lowat on MPTCP sockets, to help apps
limit the number of wakeups.
- Support netlink GET for MDB (multicast forwarding), allowing user
space to request a single MDB entry instead of dumping the entire
table.
- Support selective FDB flushing in the VXLAN tunnel driver.
- Allow limiting learned FDB entries in bridges, prevent OOM attacks.
- Allow controlling via configfs netconsole targets which were
created via the kernel cmdline at boot, rather than via configfs at
runtime.
- Support multiple PTP timestamp event queue readers with different
filters.
- MCTP over I3C.
BPF:
- Add new veth-like netdevice where BPF program defines the logic of
the xmit routine. It can operate in L3 and L2 mode.
- Support exceptions - allow asserting conditions which should never
be true but are hard for the verifier to infer. With some extra
flexibility around handling of the exit / failure:
https://lwn.net/Articles/938435/
- Add support for local per-cpu kptr, allow allocating and storing
per-cpu objects in maps. Access to those objects operates on the
value for the current CPU.
This allows to deprecate local one-off implementations of per-CPU
storage like BPF_MAP_TYPE_PERCPU_CGROUP_STORAGE maps.
- Extend cgroup BPF sockaddr hooks for UNIX sockets. The use case is
for systemd to re-implement the LogNamespace feature which allows
running multiple instances of systemd-journald to process the logs
of different services.
- Enable open-coded task_vma iteration, after maple tree conversion
made it hard to directly walk VMAs in tracing programs.
- Add open-coded task, css_task and css iterator support. One of the
use cases is customizable OOM victim selection via BPF.
- Allow source address selection with bpf_*_fib_lookup().
- Add ability to pin BPF timer to the current CPU.
- Prevent creation of infinite loops by combining tail calls and
fentry/fexit programs.
- Add missed stats for kprobes to retrieve the number of missed
kprobe executions and subsequent executions of BPF programs.
- Inherit system settings for CPU security mitigations.
- Add BPF v4 CPU instruction support for arm32 and s390x.
Changes to common code:
- overflow: add DEFINE_FLEX() for on-stack definition of structs with
flexible array members.
- Process doc update with more guidance for reviewers.
Driver API:
- Simplify locking in WiFi (cfg80211 and mac80211 layers), use wiphy
mutex in most places and remove a lot of smaller locks.
- Create a common DPLL configuration API. Allow configuring and
querying state of PLL circuits used for clock syntonization, in
network time distribution.
- Unify fragmented and full page allocation APIs in page pool code.
Let drivers be ignorant of PAGE_SIZE.
- Rework PHY state machine to avoid races with calls to phy_stop().
- Notify DSA drivers of MAC address changes on user ports, improve
correctness of offloads which depend on matching port MAC
addresses.
- Allow antenna control on injected WiFi frames.
- Reduce the number of variants of napi_schedule().
- Simplify error handling when composing devlink health messages.
Misc:
- A lot of KCSAN data race "fixes", from Eric.
- A lot of __counted_by() annotations, from Kees.
- A lot of strncpy -> strscpy and printf format fixes.
- Replace master/slave terminology with conduit/user in DSA drivers.
- Handful of KUnit tests for netdev and WiFi core.
Removed:
- AppleTalk COPS.
- AppleTalk ipddp.
- TI AR7 CPMAC Ethernet driver.
Drivers:
- Ethernet high-speed NICs:
- Intel (100G, ice, idpf):
- add a driver for the Intel E2000 IPUs
- make CRC/FCS stripping configurable
- cross-timestamping for E823 devices
- basic support for E830 devices
- use aux-bus for managing client drivers
- i40e: report firmware versions via devlink
- nVidia/Mellanox:
- support 4-port NICs
- increase max number of channels to 256
- optimize / parallelize SF creation flow
- Broadcom (bnxt):
- enhance NIC temperature reporting
- support PAM4 speeds and lane configuration
- Marvell OcteonTX2:
- PTP pulse-per-second output support
- enable hardware timestamping for VFs
- Solarflare/AMD:
- conntrack NAT offload and offload for tunnels
- Wangxun (ngbe/txgbe):
- expose HW statistics
- Pensando/AMD:
- support PCI level reset
- narrow down the condition under which skbs are linearized
- Netronome/Corigine (nfp):
- support CHACHA20-POLY1305 crypto in IPsec offload
- Ethernet NICs embedded, slower, virtual:
- Synopsys (stmmac):
- add Loongson-1 SoC support
- enable use of HW queues with no offload capabilities
- enable PPS input support on all 5 channels
- increase TX coalesce timer to 5ms
- RealTek USB (r8152): improve efficiency of Rx by using GRO frags
- xen: support SW packet timestamping
- add drivers for implementations based on TI's PRUSS (AM64x EVM)
- nVidia/Mellanox Ethernet datacenter switches:
- avoid poor HW resource use on Spectrum-4 by better block
selection for IPv6 multicast forwarding and ordering of blocks
in ACL region
- Ethernet embedded switches:
- Microchip:
- support configuring the drive strength for EMI compliance
- ksz9477: partial ACL support
- ksz9477: HSR offload
- ksz9477: Wake on LAN
- Realtek:
- rtl8366rb: respect device tree config of the CPU port
- Ethernet PHYs:
- support Broadcom BCM5221 PHYs
- TI dp83867: support hardware LED blinking
- CAN:
- add support for Linux-PHY based CAN transceivers
- at91_can: clean up and use rx-offload helpers
- WiFi:
- MediaTek (mt76):
- new sub-driver for mt7925 USB/PCIe devices
- HW wireless <> Ethernet bridging in MT7988 chips
- mt7603/mt7628 stability improvements
- Qualcomm (ath12k):
- WCN7850:
- enable 320 MHz channels in 6 GHz band
- hardware rfkill support
- enable IEEE80211_HW_SINGLE_SCAN_ON_ALL_BANDS to
make scan faster
- read board data variant name from SMBIOS
- QCN9274: mesh support
- RealTek (rtw89):
- TDMA-based multi-channel concurrency (MCC)
- Silicon Labs (wfx):
- Remain-On-Channel (ROC) support
- Bluetooth:
- ISO: many improvements for broadcast support
- mark BCM4378/BCM4387 as BROKEN_LE_CODED
- add support for QCA2066
- btmtksdio: enable Bluetooth wakeup from suspend"
* tag 'net-next-6.7' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next: (1816 commits)
net: pcs: xpcs: Add 2500BASE-X case in get state for XPCS drivers
net: bpf: Use sockopt_lock_sock() in ip_sock_set_tos()
net: mana: Use xdp_set_features_flag instead of direct assignment
vxlan: Cleanup IFLA_VXLAN_PORT_RANGE entry in vxlan_get_size()
iavf: delete the iavf client interface
iavf: add a common function for undoing the interrupt scheme
iavf: use unregister_netdev
iavf: rely on netdev's own registered state
iavf: fix the waiting time for initial reset
iavf: in iavf_down, don't queue watchdog_task if comms failed
iavf: simplify mutex_trylock+sleep loops
iavf: fix comments about old bit locks
doc/netlink: Update schema to support cmd-cnt-name and cmd-max-name
tools: ynl: introduce option to process unknown attributes or types
ipvlan: properly track tx_errors
netdevsim: Block until all devices are released
nfp: using napi_build_skb() to replace build_skb()
net: dsa: microchip: ksz9477: Fix spelling mistake "Enery" -> "Energy"
net: dsa: microchip: Ensure Stable PME Pin State for Wake-on-LAN
net: dsa: microchip: Refactor switch shutdown routine for WoL preparation
...File tree
1,865 files changed
+122625
-34372
lines changed- Documentation
- admin-guide/sysctl
- bpf
- libbpf
- standardization
- devicetree/bindings
- arm/mediatek
- i3c
- mfd
- net
- dsa
- soc/mediatek
- driver-api
- 80211
- netlink
- specs
- networking
- device_drivers
- appletalk
- ethernet
- intel
- mellanox/mlx5
- devlink
- dsa
- process
- userspace-api/netlink
- arch
- arm64
- boot/dts/marvell
- net
- arm/net
- s390/net
- x86/net
- drivers
- atm
- bluetooth
- dpll
- i3c
- infiniband
- hw/mlx5
- ulp/ipoib
- net
- appletalk
- bonding
- can
- dev
- sja1000
- usb/etas_es58x
- dsa
- b53
- hirschmann
- microchip
- mv88e6xxx
- ocelot
- qca
- realtek
- sja1105
- xrs700x
- ethernet
- 8390
- actions
- aeroflex
- allwinner
- altera
- amazon/ena
- amd
- pds_core
- xgbe
- apm
- xgene-v2
- xgene
- apple
- arc
- asix
- atheros
- atl1c
- atlx
- broadcom
- asp2
- bnxt
- genet
- brocade/bna
- cadence
- calxeda
- cavium
- liquidio
- octeon
- chelsio
- cxgb3
- cxgb4vf
- cxgb4
- inline_crypto
- ch_ktls
- chtls
- cirrus
- cortina
- davicom
- dec/tulip
- engleder
- ezchip
- faraday
- freescale
- enetc
- fman
- fs_enet
- google/gve
- hisilicon
- hns3
- hns3_common
- hns3pf
- hns
- huawei/hinic
- i825xx
- ibm
- ehea
- emac
- intel
- e1000
- fm10k
- i40e
- iavf
- ice
- idpf
- igbvf
- igb
- igc
- ixgbe
- litex
- marvell
- mvpp2
- octeon_ep
- octeontx2
- af
- nic
- mediatek
- mellanox
- mlx4
- mlx5/core
- diag
- en_accel
- en
- esw
- ipoib
- lag
- lib
- sf
- dev
- steering
- mlxbf_gige
- mlxsw
- micrel
- microchip
- lan966x
- sparx5
- vcap
- microsoft/mana
- moxa
- mscc
- natsemi
- netronome/nfp
- crypto
- nfd3
- nfdk
- nfpcore
- ni
- nxp
- pensando/ionic
- qlogic
- qede
- qed
- qualcomm/emac
- realtek
- renesas
- samsung/sxgbe
- seeq
- sfc
- siena
- sgi
- smsc
- socionext
- stmicro/stmmac
- sunplus
- sun
- ti
- icssg
- toshiba
- tundra
- via
- wangxun
- libwx
- ngbe
- txgbe
- wiznet
- xilinx
- xscale
- fjes
- hamradio
- hyperv
- ipa
- ipvlan
- mctp
- mdio
- netdevsim
- pcs
- phy
- ppp
- usb
- vxlan
- wan
- wireless
- ath
- ar5523
- ath10k
- ath11k
- ath12k
- ath5k
- ath6kl
- ath9k
- carl9170
- wcn36xx
- wil6210
- atmel
- broadcom
- b43
- brcm80211/brcmfmac
- intel
- ipw2x00
- iwlegacy
- iwlwifi
- cfg
- dvm
- fw
- api
- mei
- mvm
- pcie
- queue
- intersil
- hostap
- p54
- legacy
- marvell/mwifiex
- mediatek
- mt7601u
- mt76
- mt7603
- mt7615
- mt7915
- mt7921
- mt7925
- mt7996
- microchip/wilc1000
- purelifi/plfxlc
- quantenna/qtnfmac
- ralink/rt2x00
- realtek
- rtl8xxxu
- rtlwifi
- rtl8188ee
- rtl8192ce
- rtl8192cu
- rtl8192c
- rtl8192de
- rtl8192ee
- rtl8192se
- rtl8723ae
- rtl8723be
- rtl8821ae
- rtw88
- rtw89
- silabs/wfx
- st/cw1200
- ti
- wl1251
- wl12xx
- wl18xx
- wlcore
- virtual
- wwan
- iosm
- t7xx
- xen-netback
- ptp
- s390/net
- ssb
- staging
- qlge
- rtl8723bs/os_dep
- vhost
- include
- linux
- avf
- can
- ceph
- dsa
- i3c
- mlx5
- pds
- soc/mediatek
- net
- bluetooth
- mana
- netfilter
- netns
- page_pool
- tc_act
- trace/events
- uapi/linux
- kernel
- bpf
- cgroup
- time
- trace
- lib
- mm
- kasan
- net
- appletalk
- atm
- ax25
- bluetooth
- bridge
- can
- j1939
- ceph
- core
- dccp
- devlink
- dsa
- ethtool
- handshake
- ipv4
- netfilter
- ipv6
- netfilter
- l2tp
- mac80211
- tests
- mptcp
- netfilter
- ipvs
- netlink
- netrom
- openvswitch
- packet
- rose
- sched
- sctp
- smc
- tipc
- tls
- unix
- vmw_vsock
- wireless
- tests
- x25
- xdp
- xfrm
- samples/bpf
- tools
- bpf/bpftool
- Documentation
- bash-completion
- include/uapi/linux
- lib/bpf
- net/ynl
- generated
- lib
- samples
- testing
- selftests
- bpf
- bpf_testmod
- map_tests
- prog_tests
- progs
- drivers/net/netdevsim
- netfilter
- net
- af_unix
- forwarding
- mptcp
- ptp
- tc-testing
- plugin-lib
- scripts
- tc-tests
- actions
- filters
- infra
- qdiscs
- vsock
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
1,865 files changed
+122625
-34372
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
71 | 71 | | |
72 | 72 | | |
73 | 73 | | |
| 74 | + | |
74 | 75 | | |
75 | 76 | | |
76 | 77 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
56 | 56 | | |
57 | 57 | | |
58 | 58 | | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
59 | 69 | | |
60 | 70 | | |
61 | 71 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
113 | 113 | | |
114 | 114 | | |
115 | 115 | | |
116 | | - | |
| 116 | + | |
117 | 117 | | |
118 | 118 | | |
119 | 119 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
283 | 283 | | |
284 | 284 | | |
285 | 285 | | |
| 286 | + | |
| 287 | + | |
| 288 | + | |
| 289 | + | |
| 290 | + | |
| 291 | + | |
| 292 | + | |
| 293 | + | |
286 | 294 | | |
287 | 295 | | |
288 | 296 | | |
| |||
Lines changed: 1 addition & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
22 | 22 | | |
23 | 23 | | |
24 | 24 | | |
| 25 | + | |
25 | 26 | | |
26 | 27 | | |
27 | 28 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
55 | 55 | | |
56 | 56 | | |
57 | 57 | | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
58 | 64 | | |
59 | 65 | | |
60 | 66 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
49 | 49 | | |
50 | 50 | | |
51 | 51 | | |
| 52 | + | |
| 53 | + | |
52 | 54 | | |
53 | 55 | | |
54 | 56 | | |
| |||
Lines changed: 2 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
158 | 158 | | |
159 | 159 | | |
160 | 160 | | |
| 161 | + | |
| 162 | + | |
161 | 163 | | |
162 | 164 | | |
163 | 165 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
53 | 53 | | |
54 | 54 | | |
55 | 55 | | |
56 | | - | |
| 56 | + | |
57 | 57 | | |
58 | 58 | | |
59 | 59 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
78 | 78 | | |
79 | 79 | | |
80 | 80 | | |
| 81 | + | |
81 | 82 | | |
82 | 83 | | |
83 | 84 | | |
| |||
0 commit comments