mirror of
https://gitee.com/bianbu-linux/linux-6.6
synced 2025-04-24 14:07:52 -04:00
Core: - bpf: - allow bpf programs calling kernel functions (initially to reuse TCP congestion control implementations) - enable task local storage for tracing programs - remove the need to store per-task state in hash maps, and allow tracing programs access to task local storage previously added for BPF_LSM - add bpf_for_each_map_elem() helper, allowing programs to walk all map elements in a more robust and easier to verify fashion - sockmap: support UDP and cross-protocol BPF_SK_SKB_VERDICT redirection - lpm: add support for batched ops in LPM trie - add BTF_KIND_FLOAT support - mostly to allow use of BTF on s390 which has floats in its headers files - improve BPF syscall documentation and extend the use of kdoc parsing scripts we already employ for bpf-helpers - libbpf, bpftool: support static linking of BPF ELF files - improve support for encapsulation of L2 packets - xdp: restructure redirect actions to avoid a runtime lookup, improving performance by 4-8% in microbenchmarks - xsk: build skb by page (aka generic zerocopy xmit) - improve performance of software AF_XDP path by 33% for devices which don't need headers in the linear skb part (e.g. virtio) - nexthop: resilient next-hop groups - improve path stability on next-hops group changes (incl. offload for mlxsw) - ipv6: segment routing: add support for IPv4 decapsulation - icmp: add support for RFC 8335 extended PROBE messages - inet: use bigger hash table for IP ID generation - tcp: deal better with delayed TX completions - make sure we don't give up on fast TCP retransmissions only because driver is slow in reporting that it completed transmitting the original - tcp: reorder tcp_congestion_ops for better cache locality - mptcp: - add sockopt support for common TCP options - add support for common TCP msg flags - include multiple address ids in RM_ADDR - add reset option support for resetting one subflow - udp: GRO L4 improvements - improve 'forward' / 'frag_list' co-existence with UDP tunnel GRO, allowing the first to take place correctly even for encapsulated UDP traffic - micro-optimize dev_gro_receive() and flow dissection, avoid retpoline overhead on VLAN and TEB GRO - use less memory for sysctls, add a new sysctl type, to allow using u8 instead of "int" and "long" and shrink networking sysctls - veth: allow GRO without XDP - this allows aggregating UDP packets before handing them off to routing, bridge, OvS, etc. - allow specifing ifindex when device is moved to another namespace - netfilter: - nft_socket: add support for cgroupsv2 - nftables: add catch-all set element - special element used to define a default action in case normal lookup missed - use net_generic infra in many modules to avoid allocating per-ns memory unnecessarily - xps: improve the xps handling to avoid potential out-of-bound accesses and use-after-free when XPS change race with other re-configuration under traffic - add a config knob to turn off per-cpu netdev refcnt to catch underflows in testing Device APIs: - add WWAN subsystem to organize the WWAN interfaces better and hopefully start driving towards more unified and vendor- -independent APIs - ethtool: - add interface for reading IEEE MIB stats (incl. mlx5 and bnxt support) - allow network drivers to dump arbitrary SFP EEPROM data, current offset+length API was a poor fit for modern SFP which define EEPROM in terms of pages (incl. mlx5 support) - act_police, flow_offload: add support for packet-per-second policing (incl. offload for nfp) - psample: add additional metadata attributes like transit delay for packets sampled from switch HW (and corresponding egress and policy-based sampling in the mlxsw driver) - dsa: improve support for sandwiched LAGs with bridge and DSA - netfilter: - flowtable: use direct xmit in topologies with IP forwarding, bridging, vlans etc. - nftables: counter hardware offload support - Bluetooth: - improvements for firmware download w/ Intel devices - add support for reading AOSP vendor capabilities - add support for virtio transport driver - mac80211: - allow concurrent monitor iface and ethernet rx decap - set priority and queue mapping for injected frames - phy: add support for Clause-45 PHY Loopback - pci/iov: add sysfs MSI-X vector assignment interface to distribute MSI-X resources to VFs (incl. mlx5 support) New hardware/drivers: - dsa: mv88e6xxx: add support for Marvell mv88e6393x - 11-port Ethernet switch with 8x 1-Gigabit Ethernet and 3x 10-Gigabit interfaces. - dsa: support for legacy Broadcom tags used on BCM5325, BCM5365 and BCM63xx switches - Microchip KSZ8863 and KSZ8873; 3x 10/100Mbps Ethernet switches - ath11k: support for QCN9074 a 802.11ax device - Bluetooth: Broadcom BCM4330 and BMC4334 - phy: Marvell 88X2222 transceiver support - mdio: add BCM6368 MDIO mux bus controller - r8152: support RTL8153 and RTL8156 (USB Ethernet) chips - mana: driver for Microsoft Azure Network Adapter (MANA) - Actions Semi Owl Ethernet MAC - can: driver for ETAS ES58X CAN/USB interfaces Pure driver changes: - add XDP support to: enetc, igc, stmmac - add AF_XDP support to: stmmac - virtio: - page_to_skb() use build_skb when there's sufficient tailroom (21% improvement for 1000B UDP frames) - support XDP even without dedicated Tx queues - share the Tx queues with the stack when necessary - mlx5: - flow rules: add support for mirroring with conntrack, matching on ICMP, GTP, flex filters and more - support packet sampling with flow offloads - persist uplink representor netdev across eswitch mode changes - allow coexistence of CQE compression and HW time-stamping - add ethtool extended link error state reporting - ice, iavf: support flow filters, UDP Segmentation Offload - dpaa2-switch: - move the driver out of staging - add spanning tree (STP) support - add rx copybreak support - add tc flower hardware offload on ingress traffic - ionic: - implement Rx page reuse - support HW PTP time-stamping - octeon: support TC hardware offloads - flower matching on ingress and egress ratelimitting. - stmmac: - add RX frame steering based on VLAN priority in tc flower - support frame preemption (FPE) - intel: add cross time-stamping freq difference adjustment - ocelot: - support forwarding of MRP frames in HW - support multiple bridges - support PTP Sync one-step timestamping - dsa: mv88e6xxx, dpaa2-switch: offload bridge port flags like learning, flooding etc. - ipa: add IPA v4.5, v4.9 and v4.11 support (Qualcomm SDX55, SM8350, SC7280 SoCs) - mt7601u: enable TDLS support - mt76: - add support for 802.3 rx frames (mt7915/mt7615) - mt7915 flash pre-calibration support - mt7921/mt7663 runtime power management fixes Signed-off-by: Jakub Kicinski <kuba@kernel.org> -----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEE6jPA+I1ugmIBA4hXMUZtbf5SIrsFAmCKFPIACgkQMUZtbf5S Irtw0g/+NA8bWdHNgG4H5rya0pv2z3IieLRmSdDfKRQQXcJpklawc5MKVVaTee/Q 5/QqgPdCsu1LAU6JXBKsKmyDDaMlQKdWuKbOqDSiAQKoMesZStTEHf9d851ZzgxA Cdb6O7BD3lBl/IN+oxNG+KcmD1LKquTPKGySq2mQtEdLO12ekAsranzmj4voKffd q9tBShpXQ7Dq77DLYfiQXVCvsizNcbbJFuxX0o9Lpb9+61ZyYAbogZSa9ypiZZwR I/9azRBtJg7UV1aD/cLuAfy66Qh7t63+rCxVazs5Os8jVO26P/jQdisnnOe/x+p9 wYEmKm3GSu0V4SAPxkWW+ooKusflCeqDoMIuooKt6kbP6BRj540veGw3Ww/m5YFr 7pLQkTSP/tSjuGQIdBE1LOP5LBO8DZeC8Kiop9V0fzAW9hFSZbEq25WW0bPj8QQO zA4Z7yWlslvxcfY2BdJX3wD8klaINkl/8fDWZFFsBdfFX2VeLtm7Xfduw34BJpvU rYT3oWr6PhtkPAKR32SUcemSfeWgIVU41eSshzRz3kez1NngBUuLlSGGSEaKbes5 pZVt6pYFFVByyf6MTHFEoQvafZfEw04JILZpo4R5V8iTHzom0kD3Py064sBiXEw2 B6t+OW4qgcxGblpFkK2lD4kR2s1TPUs0ckVO6sAy1x8q60KKKjY= =vcbA -----END PGP SIGNATURE----- Merge tag 'net-next-5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next Pull networking updates from Jakub Kicinski: "Core: - bpf: - allow bpf programs calling kernel functions (initially to reuse TCP congestion control implementations) - enable task local storage for tracing programs - remove the need to store per-task state in hash maps, and allow tracing programs access to task local storage previously added for BPF_LSM - add bpf_for_each_map_elem() helper, allowing programs to walk all map elements in a more robust and easier to verify fashion - sockmap: support UDP and cross-protocol BPF_SK_SKB_VERDICT redirection - lpm: add support for batched ops in LPM trie - add BTF_KIND_FLOAT support - mostly to allow use of BTF on s390 which has floats in its headers files - improve BPF syscall documentation and extend the use of kdoc parsing scripts we already employ for bpf-helpers - libbpf, bpftool: support static linking of BPF ELF files - improve support for encapsulation of L2 packets - xdp: restructure redirect actions to avoid a runtime lookup, improving performance by 4-8% in microbenchmarks - xsk: build skb by page (aka generic zerocopy xmit) - improve performance of software AF_XDP path by 33% for devices which don't need headers in the linear skb part (e.g. virtio) - nexthop: resilient next-hop groups - improve path stability on next-hops group changes (incl. offload for mlxsw) - ipv6: segment routing: add support for IPv4 decapsulation - icmp: add support for RFC 8335 extended PROBE messages - inet: use bigger hash table for IP ID generation - tcp: deal better with delayed TX completions - make sure we don't give up on fast TCP retransmissions only because driver is slow in reporting that it completed transmitting the original - tcp: reorder tcp_congestion_ops for better cache locality - mptcp: - add sockopt support for common TCP options - add support for common TCP msg flags - include multiple address ids in RM_ADDR - add reset option support for resetting one subflow - udp: GRO L4 improvements - improve 'forward' / 'frag_list' co-existence with UDP tunnel GRO, allowing the first to take place correctly even for encapsulated UDP traffic - micro-optimize dev_gro_receive() and flow dissection, avoid retpoline overhead on VLAN and TEB GRO - use less memory for sysctls, add a new sysctl type, to allow using u8 instead of "int" and "long" and shrink networking sysctls - veth: allow GRO without XDP - this allows aggregating UDP packets before handing them off to routing, bridge, OvS, etc. - allow specifing ifindex when device is moved to another namespace - netfilter: - nft_socket: add support for cgroupsv2 - nftables: add catch-all set element - special element used to define a default action in case normal lookup missed - use net_generic infra in many modules to avoid allocating per-ns memory unnecessarily - xps: improve the xps handling to avoid potential out-of-bound accesses and use-after-free when XPS change race with other re-configuration under traffic - add a config knob to turn off per-cpu netdev refcnt to catch underflows in testing Device APIs: - add WWAN subsystem to organize the WWAN interfaces better and hopefully start driving towards more unified and vendor- independent APIs - ethtool: - add interface for reading IEEE MIB stats (incl. mlx5 and bnxt support) - allow network drivers to dump arbitrary SFP EEPROM data, current offset+length API was a poor fit for modern SFP which define EEPROM in terms of pages (incl. mlx5 support) - act_police, flow_offload: add support for packet-per-second policing (incl. offload for nfp) - psample: add additional metadata attributes like transit delay for packets sampled from switch HW (and corresponding egress and policy-based sampling in the mlxsw driver) - dsa: improve support for sandwiched LAGs with bridge and DSA - netfilter: - flowtable: use direct xmit in topologies with IP forwarding, bridging, vlans etc. - nftables: counter hardware offload support - Bluetooth: - improvements for firmware download w/ Intel devices - add support for reading AOSP vendor capabilities - add support for virtio transport driver - mac80211: - allow concurrent monitor iface and ethernet rx decap - set priority and queue mapping for injected frames - phy: add support for Clause-45 PHY Loopback - pci/iov: add sysfs MSI-X vector assignment interface to distribute MSI-X resources to VFs (incl. mlx5 support) New hardware/drivers: - dsa: mv88e6xxx: add support for Marvell mv88e6393x - 11-port Ethernet switch with 8x 1-Gigabit Ethernet and 3x 10-Gigabit interfaces. - dsa: support for legacy Broadcom tags used on BCM5325, BCM5365 and BCM63xx switches - Microchip KSZ8863 and KSZ8873; 3x 10/100Mbps Ethernet switches - ath11k: support for QCN9074 a 802.11ax device - Bluetooth: Broadcom BCM4330 and BMC4334 - phy: Marvell 88X2222 transceiver support - mdio: add BCM6368 MDIO mux bus controller - r8152: support RTL8153 and RTL8156 (USB Ethernet) chips - mana: driver for Microsoft Azure Network Adapter (MANA) - Actions Semi Owl Ethernet MAC - can: driver for ETAS ES58X CAN/USB interfaces Pure driver changes: - add XDP support to: enetc, igc, stmmac - add AF_XDP support to: stmmac - virtio: - page_to_skb() use build_skb when there's sufficient tailroom (21% improvement for 1000B UDP frames) - support XDP even without dedicated Tx queues - share the Tx queues with the stack when necessary - mlx5: - flow rules: add support for mirroring with conntrack, matching on ICMP, GTP, flex filters and more - support packet sampling with flow offloads - persist uplink representor netdev across eswitch mode changes - allow coexistence of CQE compression and HW time-stamping - add ethtool extended link error state reporting - ice, iavf: support flow filters, UDP Segmentation Offload - dpaa2-switch: - move the driver out of staging - add spanning tree (STP) support - add rx copybreak support - add tc flower hardware offload on ingress traffic - ionic: - implement Rx page reuse - support HW PTP time-stamping - octeon: support TC hardware offloads - flower matching on ingress and egress ratelimitting. - stmmac: - add RX frame steering based on VLAN priority in tc flower - support frame preemption (FPE) - intel: add cross time-stamping freq difference adjustment - ocelot: - support forwarding of MRP frames in HW - support multiple bridges - support PTP Sync one-step timestamping - dsa: mv88e6xxx, dpaa2-switch: offload bridge port flags like learning, flooding etc. - ipa: add IPA v4.5, v4.9 and v4.11 support (Qualcomm SDX55, SM8350, SC7280 SoCs) - mt7601u: enable TDLS support - mt76: - add support for 802.3 rx frames (mt7915/mt7615) - mt7915 flash pre-calibration support - mt7921/mt7663 runtime power management fixes" * tag 'net-next-5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next: (2451 commits) net: selftest: fix build issue if INET is disabled net: netrom: nr_in: Remove redundant assignment to ns net: tun: Remove redundant assignment to ret net: phy: marvell: add downshift support for M88E1240 net: dsa: ksz: Make reg_mib_cnt a u8 as it never exceeds 255 net/sched: act_ct: Remove redundant ct get and check icmp: standardize naming of RFC 8335 PROBE constants bpf, selftests: Update array map tests for per-cpu batched ops bpf: Add batched ops support for percpu array bpf: Implement formatted output helpers with bstr_printf seq_file: Add a seq_bprintf function sfc: adjust efx->xdp_tx_queue_count with the real number of initialized queues net:nfc:digital: Fix a double free in digital_tg_recv_dep_req net: fix a concurrency bug in l2tp_tunnel_register() net/smc: Remove redundant assignment to rc mpls: Remove redundant assignment to err llc2: Remove redundant assignment to rc net/tls: Remove redundant initialization of record rds: Remove redundant assignment to nr_sig dt-bindings: net: mdio-gpio: add compatible for microchip,mdio-smi0 ... |
||
---|---|---|
.. | ||
gpio | ||
media | ||
txx9 | ||
x86 | ||
ad5449.h | ||
ad5755.h | ||
ad5761.h | ||
ad7266.h | ||
ad7791.h | ||
ad7793.h | ||
ad7887.h | ||
adau17x1.h | ||
adp5588.h | ||
adp8860.h | ||
adp8870.h | ||
ads7828.h | ||
ams-delta-fiq.h | ||
apds990x.h | ||
arm-ux500-pm.h | ||
asoc-imx-ssi.h | ||
asoc-kirkwood.h | ||
asoc-mx27vis.h | ||
asoc-palm27x.h | ||
asoc-s3c.h | ||
asoc-s3c24xx_simtec.h | ||
asoc-ti-mcbsp.h | ||
asoc-ux500-msp.h | ||
ata-pxa.h | ||
ata-samsung_cf.h | ||
atmel.h | ||
b53.h | ||
bcmgenet.h | ||
bd6107.h | ||
bh1770glc.h | ||
brcmfmac.h | ||
clk-da8xx-cfgchip.h | ||
clk-davinci-pll.h | ||
clk-fch.h | ||
clk-s3c2410.h | ||
cpuidle-exynos.h | ||
cros_ec_chardev.h | ||
cros_ec_commands.h | ||
cros_ec_proto.h | ||
cros_ec_sensorhub.h | ||
cros_usbpd_notify.h | ||
crypto-ux500.h | ||
cyttsp4.h | ||
davinci-cpufreq.h | ||
davinci_asp.h | ||
dma-dw.h | ||
dma-ep93xx.h | ||
dma-hsu.h | ||
dma-imx-sdma.h | ||
dma-imx.h | ||
dma-iop32x.h | ||
dma-mcf-edma.h | ||
dma-mmp_tdma.h | ||
dma-mv_xor.h | ||
dma-s3c24xx.h | ||
dma-ste-dma40.h | ||
dmtimer-omap.h | ||
ds620.h | ||
dsa.h | ||
edma.h | ||
elm.h | ||
emif_plat.h | ||
eth-ep93xx.h | ||
eth_ixp4xx.h | ||
fb-s3c2410.h | ||
g762.h | ||
gpio-ath79.h | ||
gpio-davinci.h | ||
gpio-dwapb.h | ||
gpio-htc-egpio.h | ||
gpio-omap.h | ||
gpio_backlight.h | ||
gpmc-omap.h | ||
gsc_hwmon.h | ||
hirschmann-hellcreek.h | ||
hsmmc-omap.h | ||
hwmon-s3c.h | ||
i2c-davinci.h | ||
i2c-gpio.h | ||
i2c-imx.h | ||
i2c-mux-gpio.h | ||
i2c-mux-reg.h | ||
i2c-ocores.h | ||
i2c-omap.h | ||
i2c-pca-platform.h | ||
i2c-pxa.h | ||
i2c-s3c2410.h | ||
i2c-xiic.h | ||
ina2xx.h | ||
intel-mid_wdt.h | ||
invensense_mpu6050.h | ||
iommu-omap.h | ||
irda-pxaficp.h | ||
irda-sa11x0.h | ||
isl9305.h | ||
itco_wdt.h | ||
keyboard-pxa930_rotary.h | ||
keyboard-spear.h | ||
keypad-ep93xx.h | ||
keypad-nomadik-ske.h | ||
keypad-omap.h | ||
keypad-pxa27x.h | ||
keyscan-davinci.h | ||
lcd-mipid.h | ||
leds-lm355x.h | ||
leds-lm3642.h | ||
leds-lp55xx.h | ||
leds-omap.h | ||
leds-s3c24xx.h | ||
lm3630a_bl.h | ||
lm3639_bl.h | ||
lm8323.h | ||
lp855x.h | ||
lp8727.h | ||
lp8755.h | ||
ltc4245.h | ||
lv5207lp.h | ||
max197.h | ||
max732x.h | ||
max3421-hcd.h | ||
max6639.h | ||
max6697.h | ||
mcs.h | ||
mdio-bcm-unimac.h | ||
mdio-gpio.h | ||
mfd-mcp-sa11x0.h | ||
microchip-ksz.h | ||
mlxcpld.h | ||
mlxreg.h | ||
mmc-davinci.h | ||
mmc-esdhc-imx.h | ||
mmc-esdhc-mcf.h | ||
mmc-mxcmmc.h | ||
mmc-omap.h | ||
mmc-pxamci.h | ||
mmc-s3cmci.h | ||
mmc-sdhci-s3c.h | ||
mmp_audio.h | ||
mmp_dma.h | ||
mouse-pxa930_trkball.h | ||
mtd-davinci-aemif.h | ||
mtd-davinci.h | ||
mtd-nand-omap2.h | ||
mtd-nand-pxa3xx.h | ||
mtd-nand-s3c2410.h | ||
mtd-orion_nand.h | ||
mv88e6xxx.h | ||
mv_usb.h | ||
net-cw1200.h | ||
nfcmrvl.h | ||
ntc_thermistor.h | ||
omap-twl4030.h | ||
omap-wd-timer.h | ||
omap1_bl.h | ||
omapdss.h | ||
pca953x.h | ||
pcf857x.h | ||
pcmcia-pxa2xx_viper.h | ||
phy-da8xx-usb.h | ||
pinctrl-single.h | ||
pm33xx.h | ||
pxa2xx_udc.h | ||
pxa_sdhci.h | ||
regulator-haptic.h | ||
rtc-ds2404.h | ||
rtc-v3020.h | ||
s3c-hsotg.h | ||
s3c-hsudc.h | ||
sa11x0-serial.h | ||
sc18is602.h | ||
sdhci-pic32.h | ||
serial-omap.h | ||
serial-sccnxp.h | ||
sgi-w1.h | ||
shmob_drm.h | ||
sht3x.h | ||
shtc1.h | ||
si5351.h | ||
simplefb.h | ||
spi-ath79.h | ||
spi-clps711x.h | ||
spi-davinci.h | ||
spi-ep93xx.h | ||
spi-mt65xx.h | ||
spi-omap2-mcspi.h | ||
spi-s3c64xx.h | ||
ssm2518.h | ||
st33zp24.h | ||
st_sensors_pdata.h | ||
syscon.h | ||
tda9950.h | ||
ti-aemif.h | ||
ti-prm.h | ||
ti-sysc.h | ||
timer-ixp4xx.h | ||
touchscreen-s3c2410.h | ||
tsc2007.h | ||
tsl2563.h | ||
tsl2772.h | ||
uio_dmem_genirq.h | ||
uio_pruss.h | ||
usb-davinci.h | ||
usb-ehci-orion.h | ||
usb-musb-ux500.h | ||
usb-ohci-pxa27x.h | ||
usb-ohci-s3c2410.h | ||
usb-omap.h | ||
usb-omap1.h | ||
usb-pxa3xx-ulpi.h | ||
usb-s3c2410_udc.h | ||
usb3503.h | ||
ux500_wdt.h | ||
video-ep93xx.h | ||
video-imxfb.h | ||
video-mx3fb.h | ||
video-pxafb.h | ||
video_s3c.h | ||
voltage-omap.h | ||
wan_ixp4xx_hss.h | ||
wilco-ec.h | ||
wiznet.h | ||
wkup_m3.h | ||
xilinx-ll-temac.h | ||
xtalk-bridge.h | ||
zforce_ts.h |