# git rev-parse -q --verify fcc79e1714e8c2b8e216dc3149812edd37884eef^{commit} fcc79e1714e8c2b8e216dc3149812edd37884eef already have revision, skipping fetch # git checkout -q -f -B kisskb fcc79e1714e8c2b8e216dc3149812edd37884eef # git clean -qxdf # < git log -1 # commit fcc79e1714e8c2b8e216dc3149812edd37884eef # Merge: 6e95ef0258ff dd7207838d38 # Author: Linus Torvalds # Date: Thu Nov 21 08:28:08 2024 -0800 # # Merge tag 'net-next-6.13' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next # # Pull networking updates from Paolo Abeni: # "The most significant set of changes is the per netns RTNL. The new # behavior is disabled by default, regression risk should be contained. # # Notably the new config knob PTP_1588_CLOCK_VMCLOCK will inherit its # default value from PTP_1588_CLOCK_KVM, as the first is intended to be # a more reliable replacement for the latter. # # Core: # # - Started a very large, in-progress, effort to make the RTNL lock # scope per network-namespace, thus reducing the lock contention # significantly in the containerized use-case, comprising: # - RCU-ified some relevant slices of the FIB control path # - introduce basic per netns locking helpers # - namespacified the IPv4 address hash table # - remove rtnl_register{,_module}() in favour of # rtnl_register_many() # - refactor rtnl_{new,del,set}link() moving as much validation as # possible out of RTNL lock # - convert all phonet doit() and dumpit() handlers to RCU # - convert IPv4 addresses manipulation to per-netns RTNL # - convert virtual interface creation to per-netns RTNL # the per-netns lock infrastructure is guarded by the # CONFIG_DEBUG_NET_SMALL_RTNL knob, disabled by default ad interim. # # - Introduce NAPI suspension, to efficiently switching between busy # polling (NAPI processing suspended) and normal processing. # # - Migrate the IPv4 routing input, output and control path from direct # ToS usage to DSCP macros. This is a work in progress to make ECN # handling consistent and reliable. # # - Add drop reasons support to the IPv4 rotue input path, allowing # better introspection in case of packets drop. # # - Make FIB seqnum lockless, dropping RTNL protection for read access. # # - Make inet{,v6} addresses hashing less predicable. # # - Allow providing timestamp OPT_ID via cmsg, to correlate TX packets # and timestamps # # Things we sprinkled into general kernel code: # # - Add small file operations for debugfs, to reduce the struct ops # size. # # - Refactoring and optimization for the implementation of page_frag # API, This is a preparatory work to consolidate the page_frag # implementation. # # Netfilter: # # - Optimize set element transactions to reduce memory consumption # # - Extended netlink error reporting for attribute parser failure. # # - Make legacy xtables configs user selectable, giving users the # option to configure iptables without enabling any other config. # # - Address a lot of false-positive RCU issues, pointed by recent CI # improvements. # # BPF: # # - Put xsk sockets on a struct diet and add various cleanups. Overall, # this helps to bump performance by 12% for some workloads. # # - Extend BPF selftests to increase coverage of XDP features in # combination with BPF cpumap. # # - Optimize and homogenize bpf_csum_diff helper for all archs and also # add a batch of new BPF selftests for it. # # - Extend netkit with an option to delegate skb->{mark,priority} # scrubbing to its BPF program. # # - Make the bpf_get_netns_cookie() helper available also to tc(x) BPF # programs. # # Protocols: # # - Introduces 4-tuple hash for connected udp sockets, speeding-up # significantly connected sockets lookup. # # - Add a fastpath for some TCP timers that usually expires after # close, the socket lock contention. # # - Add inbound and outbound xfrm state caches to speed up state # lookups. # # - Avoid sending MPTCP advertisements on stale subflows, reducing # risks on loosing them. # # - Make neighbours table flushing more scalable, maintaining per # device neigh lists. # # Driver API: # # - Introduce a unified interface to configure transmission H/W # shaping, and expose it to user-space via generic-netlink. # # - Add support for per-NAPI config via netlink. This makes napi # configuration persistent across queues removal and re-creation. # Requires driver updates, currently supported drivers are: # nVidia/Mellanox mlx4 and mlx5, Broadcom brcm and Intel ice. # # - Add ethtool support for writing SFP / PHY firmware blocks. # # - Track RSS context allocation from ethtool core. # # - Implement support for mirroring to DSA CPU port, via TC mirror # offload. # # - Consolidate FDB updates notification, to avoid duplicates on # device-specific entries. # # - Expose DPLL clock quality level to the user-space. # # - Support master-slave PHY config via device tree. # # Tests and tooling: # # - forwarding: introduce deferred commands, to simplify the cleanup # phase # # Drivers: # # - Updated several drivers - Amazon vNic, Google vNic, Microsoft vNic, # Intel e1000e and Broadcom Tigon3 - to use netdev-genl to link the # IRQs and queues to NAPI IDs, allowing busy polling and better # introspection. # # - Ethernet high-speed NICs: # - nVidia/Mellanox: # - mlx5: # - a large refactor to implement support for cross E-Switch # scheduling # - refactor H/W conter management to let it scale better # - H/W GRO cleanups # - Intel (100G, ice):: # - add support for ethtool reset # - implement support for per TX queue H/W shaping # - AMD/Solarflare: # - implement per device queue stats support # - Broadcom (bnxt): # - improve wildcard l4proto on IPv4/IPv6 ntuple rules # - Marvell Octeon: # - Add representor support for each Resource Virtualization Unit # (RVU) device. # - Hisilicon: # - add support for the BMC Gigabit Ethernet # - IBM (EMAC): # - driver cleanup and modernization # - Cisco (VIC): # - raise the queues number limit to 256 # # - Ethernet virtual: # - Google vNIC: # - implement page pool support # - macsec: # - inherit lower device's features and TSO limits when # offloading # - virtio_net: # - enable premapped mode by default # - support for XDP socket(AF_XDP) zerocopy TX # - wireguard: # - set the TSO max size to be GSO_MAX_SIZE, to aggregate larger # packets. # # - Ethernet NICs embedded and virtual: # - Broadcom ASP: # - enable software timestamping # - Freescale: # - add enetc4 PF driver # - MediaTek: Airoha SoC: # - implement BQL support # - RealTek r8169: # - enable TSO by default on r8168/r8125 # - implement extended ethtool stats # - Renesas AVB: # - enable TX checksum offload # - Synopsys (stmmac): # - support header splitting for vlan tagged packets # - move common code for DWMAC4 and DWXGMAC into a separate FPE # module. # - add dwmac driver support for T-HEAD TH1520 SoC # - Synopsys (xpcs): # - driver refactor and cleanup # - TI: # - icssg_prueth: add VLAN offload support # - Xilinx emaclite: # - add clock support # # - Ethernet switches: # - Microchip: # - implement support for the lan969x Ethernet switch family # - add LAN9646 switch support to KSZ DSA driver # # - Ethernet PHYs: # - Marvel: 88q2x: enable auto negotiation # - Microchip: add support for LAN865X Rev B1 and LAN867X Rev C1/C2 # # - PTP: # - Add support for the Amazon virtual clock device # - Add PtP driver for s390 clocks # # - WiFi: # - mac80211 # - EHT 1024 aggregation size for transmissions # - new operation to indicate that a new interface is to be added # - support radio separation of multi-band devices # - move wireless extension spy implementation to libiw # - Broadcom: # - brcmfmac: optional LPO clock support # - Microchip: # - add support for Atmel WILC3000 # - Qualcomm (ath12k): # - firmware coredump collection support # - add debugfs support for a multitude of statistics # - Qualcomm (ath5k): # - Arcadyan ARV45XX AR2417 & Gigaset SX76[23] AR241[34]A support # - Realtek: # - rtw88: 8821au and 8812au USB adapters support # - rtw89: add thermal protection # - rtw89: fine tune BT-coexsitence to improve user experience # - rtw89: firmware secure boot for WiFi 6 chip # # - Bluetooth # - add Qualcomm WCN785x support for ids Foxconn 0xe0fc/0xe0f3 and # 0x13d3:0x3623 # - add Realtek RTL8852BE support for id Foxconn 0xe123 # - add MediaTek MT7920 support for wireless module ids # - btintel_pcie: add handshake between driver and firmware # - btintel_pcie: add recovery mechanism # - btnxpuart: add GPIO support to power save feature" # # * tag 'net-next-6.13' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next: (1475 commits) # mm: page_frag: fix a compile error when kernel is not compiled # Documentation: tipc: fix formatting issue in tipc.rst # selftests: nic_performance: Add selftest for performance of NIC driver # selftests: nic_link_layer: Add selftest case for speed and duplex states # selftests: nic_link_layer: Add link layer selftest for NIC driver # bnxt_en: Add FW trace coredump segments to the coredump # bnxt_en: Add a new ethtool -W dump flag # bnxt_en: Add 2 parameters to bnxt_fill_coredump_seg_hdr() # bnxt_en: Add functions to copy host context memory # bnxt_en: Do not free FW log context memory # bnxt_en: Manage the FW trace context memory # bnxt_en: Allocate backing store memory for FW trace logs # bnxt_en: Add a 'force' parameter to bnxt_free_ctx_mem() # bnxt_en: Refactor bnxt_free_ctx_mem() # bnxt_en: Add mem_valid bit to struct bnxt_ctx_mem_type # bnxt_en: Update firmware interface spec to 1.10.3.85 # selftests/bpf: Add some tests with sockmap SK_PASS # bpf: fix recursive lock when verdict program return SK_PASS # wireguard: device: support big tcp GSO # wireguard: selftests: load nf_conntrack if not present # ... # < /opt/cross/kisskb/korg/gcc-8.1.0-nolibc/mips-linux/bin/mips-linux-gcc --version # < /opt/cross/kisskb/korg/gcc-8.1.0-nolibc/mips-linux/bin/mips-linux-ld --version # < git log --format=%s --max-count=1 fcc79e1714e8c2b8e216dc3149812edd37884eef # make -s -j 160 ARCH=mips O=/kisskb/build/linus_32r6_defconfig_mips-gcc8.1 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-8.1.0-nolibc/mips-linux/bin/mips-linux- 32r6_defconfig Using /kisskb/src/arch/mips/configs/generic_defconfig as base Merging /kisskb/src/arch/mips/configs/generic/32r6.config Merging /kisskb/src/arch/mips/configs/generic/eb.config Merging /kisskb/src/arch/mips/configs/generic/board-boston.config Merging /kisskb/src/arch/mips/configs/generic/board-litex.config Merging /kisskb/src/arch/mips/configs/generic/board-marduk.config Merging /kisskb/src/arch/mips/configs/generic/board-ranchu.config Merging /kisskb/src/arch/mips/configs/generic/board-sead-3.config Merging /kisskb/src/arch/mips/configs/generic/board-virt.config # < make -s -j 160 ARCH=mips O=/kisskb/build/linus_32r6_defconfig_mips-gcc8.1 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-8.1.0-nolibc/mips-linux/bin/mips-linux- help # make -s -j 160 ARCH=mips O=/kisskb/build/linus_32r6_defconfig_mips-gcc8.1 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-8.1.0-nolibc/mips-linux/bin/mips-linux- olddefconfig # make -s -j 160 ARCH=mips O=/kisskb/build/linus_32r6_defconfig_mips-gcc8.1 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-8.1.0-nolibc/mips-linux/bin/mips-linux- /kisskb/src/arch/mips/boot/dts/img/boston.dts:128.17-178.5: Warning (interrupt_provider): /pci@14000000/pci2_root@0,0: '#interrupt-cells' found, but node is not an interrupt provider /kisskb/src/arch/mips/boot/dts/img/boston.dts:136.23-177.6: Warning (interrupt_provider): /pci@14000000/pci2_root@0,0/eg20t_bridge@1,0,0: '#interrupt-cells' found, but node is not an interrupt provider arch/mips/boot/dts/img/boston.dtb: Warning (interrupt_map): Failed prerequisite 'interrupt_provider' Completed OK # rm -rf /kisskb/build/linus_32r6_defconfig_mips-gcc8.1 # Build took: 0:01:34.074339