From patchwork Thu Mar 25 00:47:44 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: David Miller X-Patchwork-Id: 12162605 X-Patchwork-Delegate: kuba@kernel.org Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-18.8 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,INCLUDES_PULL_REQUEST, MAILING_LIST_MULTI,MENTIONS_GIT_HOSTING,SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id A27DDC433C1 for ; Thu, 25 Mar 2021 00:48:54 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 602FC61A19 for ; Thu, 25 Mar 2021 00:48:54 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S239399AbhCYAsX (ORCPT ); Wed, 24 Mar 2021 20:48:23 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:43140 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S239376AbhCYArw (ORCPT ); Wed, 24 Mar 2021 20:47:52 -0400 Received: from mail.monkeyblade.net (shards.monkeyblade.net [IPv6:2620:137:e000::1:9]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 80009C06174A; Wed, 24 Mar 2021 17:47:52 -0700 (PDT) Received: from localhost (unknown [IPv6:2601:601:9f00:477::3d5]) by mail.monkeyblade.net (Postfix) with ESMTPSA id 4EADA4D248D98; Wed, 24 Mar 2021 17:47:49 -0700 (PDT) Date: Wed, 24 Mar 2021 17:47:44 -0700 (PDT) Message-Id: <20210324.174744.896576515419596772.davem@davemloft.net> To: torvalds@linux-foundation.org CC: netdev@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [GIT] Networking From: David Miller X-Mailer: Mew version 6.8 on Emacs 27.1 Mime-Version: 1.0 X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.6.2 (mail.monkeyblade.net [0.0.0.0]); Wed, 24 Mar 2021 17:47:49 -0700 (PDT) Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org Various fixes, all over: 1) Fix overflow in ptp_qoriq_adjfine(), from Yangbo Lu. 2) Always store the rx queue mapping in veth, from Maciej Fijalkowski. 3) Don't allow vmlinux btf in map_create, from Alexei Starovoitov. 4) Fix memory leak in octeontx2-af from Colin Ian King. 5) Use kvalloc in bpf x86 JIT for storing jit'd addresses, from Yonghong Song. 6) Fix tx ptp stats in mlx5, from Aya Levin. 7) Check correct ip version in tun decap, fropm Roi Dayan. 8) Fix rate calculation in mlx5 E-Switch code, from arav Pandit. 9) Work item memork leak in mlx5, from Shay Drory. 10) Fix ip6ip6 tunnel crash with bpf, from Daniel Borkmann. 11) Lack of preemptrion awareness in macvlan, from Eric Dumazet. 12) Fix data race in pxa168_eth, from Pavel Andrianov. 13) Range validate stab in red_check_params(), from Eric Dumazet. 14) Inherit vlan filtering setting properly in b53 driver, from Florian Fainelli. 15) Fix rtnl locking in igc driver, from Sasha Neftin. 16) Pause handling fixes in igc driver, from Muhammad Husaini Zulkifli. 17) Missing rtnl locking in e1000_reset_task, from Vitaly Lifshits. 18) Use after free in qlcnic, from Lv Yunlong. 19) fix crash in fritzpci mISDN, from Tong Zhang. 20) Premature rx buffer reuse in igb, from Li RongQing. 21) Missing termination of ip[a driver message handler arrays, from Alex Elder. 22) Fix race between "x25_close" and "x25_xmit"/"x25_rx" in hdlc_x25 driver, from Xie He. 23) Use after free in c_can_pci_remove(), from Tong Zhang. 24) Uninitialized variable use in nl80211, from Jarod Wilson. 25) Off by one size calc in bpf verifier, from Piotr Krysiuk. 26) Use delayed work instead of deferrable for flowtable GC, from Yinjun Zhang. 27) Fix infinite loop in NPC unmap of octeontx2 driver, from Hariprasad Kelam. 28) Fix being unable to change MTU of dwmac-sun8i devices due to lack of fifo sizes, from Corentin Labbe. 29) DMA use after free in r8169 with WoL, fom Heiner Kallweit. 30) Mismatched prototypes in isdn-capi, from Arnd Bergmann. 31) Fix psample UAPI breakage, from Ido Schimmel. Please pull, thanks a lot! The following changes since commit 05a59d79793d482f628a31753c671f2e92178a21: Merge git://git.kernel.org:/pub/scm/linux/kernel/git/netdev/net (2021-03-09 17:15:56 -0800) are available in the Git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net.git for you to fetch changes up to e43accba9b071dcd106b5e7643b1b106a158cbb1: psample: Fix user API breakage (2021-03-24 16:44:31 -0700) ---------------------------------------------------------------- Alaa Hleihel (1): net/mlx5e: Allow to match on MPLS parameters only for MPLS over UDP Alex Elder (2): net: ipa: terminate message handler arrays net: ipa: fix init header command validation Alexander Lobakin (1): flow_dissector: fix byteorder of dissected ICMP ID Alexander Ovechkin (1): tcp: relookup sock for RST+ACK packets handled by obsolete req sock Alexei Starovoitov (4): bpf: Dont allow vmlinux BTF to be used in map_create and prog_load. ftrace: Fix modify_ftrace_direct. bpf: Fix fexit trampoline. selftest/bpf: Add a test to check trampoline freeing logic. Andre Guedes (1): igc: Fix igc_ptp_rx_pktstamp() Andrii Nakryiko (1): Merge branch 'libbpf: Fix BTF dump of pointer-to-array-of-struct' Angelo Dureghello (1): can: flexcan: flexcan_chip_freeze(): fix chip freeze for missing bitrate Arnd Bergmann (2): isdn: capi: fix mismatched prototypes ch_ktls: fix enum-conversion warning Aya Levin (4): net/mlx5e: Accumulate port PTP TX stats with other channels stats net/mlx5e: Set PTP channel pointer explicitly to NULL net/mlx5: Fix turn-off PPS command net/mlx5e: Fix error path for ethtool set-priv-flag Bhaskar Chowdhury (2): sch_red: Fix a typo docs: networking: Fix a typo Brian Norris (1): mac80211: Allow HE operation to be longer than expected. Carlos Llamas (1): selftests/net: fix warnings on reuseaddr_ports_exhausted Christophe Leroy (1): net: marvell: Remove reference to CONFIG_MV64X60 Colin Ian King (1): octeontx2-af: Fix memory leak of object buf Corentin Labbe (1): net: stmmac: dwmac-sun8i: Provide TX and RX fifo sizes Dan Carpenter (1): mptcp: fix bit MPTCP_PUSH_PENDING tests Daniel Borkmann (2): net: Consolidate common blackhole dst ops net, bpf: Fix ip6ip6 crash with collect_md populated skbs Daniel Phan (1): mac80211: Check crypto_aead_encrypt for errors David Brazdil (1): selinux: vsock: Set SID for socket returned by accept() David S. Miller (19): Merge branch 'ip6ip6-crash' Merge git://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf Merge tag 'mlx5-fixes-2021-03-10' of git://git.kernel.org/pub/scm/linux/kernel/git/saeed/linux Merge branch '1GbE' of git://git.kernel.org/pub/scm/linux/kernel/git/tnguy/net-queue Merge branch 'htb-fixes' Revert "net: bonding: fix error return code of bond_neigh_init()" Merge branch '100GbE' of git://git.kernel.org/pub/scm/linux/kernel/git /tnguy/net-queue Merge tag 'linux-can-fixes-for-5.12-20210316' of git://git.kernel.org/pub/scm/linux/kernel/git/mkl/linux-can Merge branch 'nfp-fixes' Merge tag 'mac80211-for-net-2021-03-17' of git://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211 Merge git://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf Merge branch 'octeontx2-fixes' Merge git://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf Merge branch '1GbE' of git://git.kernel.org/pub/scm/linux/kernel/git/tnguy/net-queue Merge git://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf Merge branch 'pa-fox-validation' Merge tag 'linux-can-fixes-for-5.12-20210320' of git://git.kernel.org/pub/scm/linux/kernel/git/mkl/linux-can Merge tag 'mlx5-fixes-2021-03-22' of git://git.kernel.org/pub/scm/linux/kernel/git/saeed/linux math: Export mul_u64_u64_div_u64 Davide Caratti (1): mptcp: fix ADD_ADDR HMAC in case port is specified Dima Chumak (1): net/mlx5e: Offload tuple rewrite for non-CT flows Dinghao Liu (1): e1000e: Fix error handling in e1000_set_d0_lplu_state_82571 Dylan Hung (1): ftgmac100: Restart MAC HW once Eric Dumazet (4): macvlan: macvlan_count_rx() needs to be aware of preemption net: sched: validate stab values net: qrtr: fix a kernel-infoleak in qrtr_recvmsg() tipc: better validate user input in tipc_nl_retrieve_key() Eva Dengler (1): devlink: fix typo in documentation Florian Fainelli (4): net: dsa: b53: VLAN filtering is global to all users net: dsa: bcm_sf2: Qualify phydev->dev_flags based on port net: phy: broadcom: Add power down exit reset state delay net: phy: broadcom: Fix RGMII delays for BCM50160 and BCM50610M Florian Westphal (1): netfilter: ctnetlink: fix dump of the expect mask attribute Geert Uytterhoeven (1): net: broadcom: BCM4908_ENET should not default to y, unconditionally Geetha sowjanya (2): octeontx2-af: Fix irq free in rvu teardown octeontx2-pf: Clear RSS enable flag on interace down Geoff Levand (1): MAINTAINERS: Update Spidernet network driver George McCollister (1): net: dsa: don't assign an error value to tag_ops Georgi Valkov (1): libbpf: Fix INSTALL flag order Hangbin Liu (2): selftests/bpf: Set gopt opt_class to 0 if get tunnel opt failed selftests: forwarding: vxlan_bridge_1d: Fix vxlan ecn decapsulate value Hariprasad Kelam (1): octeontx2-af: fix infinite loop in unmapping NPC counter Hayes Wang (1): r8152: limit the RX buffer size of RTL8153A for USB 2.0 Heiner Kallweit (1): r8169: fix DMA being used after buffer free if WoL is enabled Huy Nguyen (1): net/mlx5: Add back multicast stats for uplink representor Ido Schimmel (2): drop_monitor: Perform cleanup upon probe registration failure psample: Fix user API breakage Ilya Lipnitskiy (1): net: dsa: mt7530: setup core clock even in TRGMII mode Jakub Kicinski (1): ipv6: weaken the v4mapped source check Jarod Wilson (1): wireless/nl80211: fix wdev_id may be used uninitialized Jean-Philippe Brucker (2): libbpf: Fix BTF dump of pointer-to-array-of-struct selftests/bpf: Add selftest for pointer-to-array-of-struct BTF dump Jesper Dangaard Brouer (2): bpf: BPF-helper for MTU checking add length input selftests/bpf: Tests using bpf_check_mtu BPF-helper input mtu_len param Jesse Brandeburg (1): igb: check timestamp validity Jimmy Assarsson (2): can: kvaser_pciefd: Always disable bus load reporting can: kvaser_usb: Add support for USBcan Pro 4xHS Jiri Bohac (1): net: check all name nodes in __dev_alloc_name Johan Hovold (1): net: cdc-phonet: fix data-interface release on probe failure Johannes Berg (3): mac80211: fix rate mask reset mac80211: minstrel_ht: remove unused variable 'mg' nl80211: fix locking for wireless device netns change Jonathan Neuschäfer (1): MAINTAINERS: Combine "QLOGIC QLGE 10Gb ETHERNET DRIVER" sections into one Karthikeyan Kathirvel (1): mac80211: choose first enabled channel for monitor Kumar Kartikeya Dwivedi (1): libbpf: Use SOCK_CLOEXEC when opening the netlink socket Li RongQing (1): igb: avoid premature Rx buffer reuse Lijun Pan (1): ibmvnic: update MAINTAINERS Louis Peens (3): nfp: flower: fix unsupported pre_tunnel flows nfp: flower: add ipv6 bit to pre_tunnel control message nfp: flower: fix pre_tun mask id allocation Ludovic Senecaux (1): netfilter: conntrack: Fix gre tunneling over ipv6 Lv Yunlong (1): net/qlcnic: Fix a use after free in qlcnic_83xx_get_minidump_template Maciej Fijalkowski (4): veth: Store queue_mapping independently of XDP prog presence i40e: move headroom initialization to i40e_configure_rx_ring ice: move headroom initialization to ice_setup_rx_ctx ixgbe: move headroom initialization to ixgbe_configure_rx_ring Magnus Karlsson (1): ice: fix napi work done reporting in xsk path Maor Dickman (2): net/mlx5e: Don't match on Geneve options in case option masks are all zero net/mlx5: Disable VF tunnel TX offload if ignore_flow_level isn't supported Maor Gottlieb (2): net/mlx5: Set QP timestamp mode to default RDMA/mlx5: Fix timestamp default mode Marc Kleine-Budde (3): can: isotp: isotp_setsockopt(): only allow to set low level TX flags for CAN-FD can: isotp: TX-path: ensure that CAN frame flags are initialized can: peak_usb: Revert "can: peak_usb: add forgotten supported devices" Marcelo Ricardo Leitner (1): net/sched: act_ct: clear post_ct if doing ct_clear Mark Tomlinson (3): Revert "netfilter: x_tables: Update remaining dereference to RCU" Revert "netfilter: x_tables: Switch synchronization to RCU" netfilter: x_tables: Use correct memory barriers. Markus Theil (1): mac80211: fix double free in ibss_leave Martin Willi (1): can: dev: Move device back to init netns on owning netns delete Mat Martineau (2): selftests: mptcp: Restore packet capture option in join tests mptcp: Change mailing list address Maxim Mikityanskiy (5): net/mlx5e: When changing XDP program without reset, take refs for XSK RQs net/mlx5e: Revert parameters on errors when changing PTP state without reset sch_htb: Fix select_queue for non-offload mode sch_htb: Fix offload cleanup in htb_destroy on htb_init failure net/mlx5e: Fix division by 0 in mlx5e_select_queue Mian Yousaf Kaukab (1): netsec: restore phy power state after controller reset Muhammad Husaini Zulkifli (2): igc: Fix Pause Frame Advertising igc: Fix Supported Pause Frame Link Setting Namhyung Kim (1): libbpf: Fix error path in bpf_object__elf_init() Oliver Hartkopp (1): can: isotp: tx-path: zero initialize outgoing CAN frames Ong Boon Leong (1): net: phylink: Fix phylink_err() function name error in phylink_major_config Pablo Neira Ayuso (3): netfilter: nftables: report EOPNOTSUPP on unsupported flowtable flags netfilter: nftables: allow to update flowtable flags netfilter: nftables: skip hook overlap logic if flowtable is stale Parav Pandit (3): net/mlx5e: E-switch, Fix rate calculation division net/mlx5: SF, Correct vhca context size net/mlx5: SF, do not use ecpu bit for vhca state processing Pavel Andrianov (1): net: pxa168_eth: Fix a potential data race in pxa168_eth_remove Piotr Krysiuk (5): bpf: Prohibit alu ops for pointer types not defining ptr_limit bpf: Fix off-by-one for area size in creating mask to left bpf: Simplify alu_limit masking for pointer arithmetic bpf: Add sanity check for upper ptr_limit bpf, selftests: Fix up some test_verifier cases for unprivileged Rafał Miłecki (1): net: dsa: bcm_sf2: use 2 Gbps IMP port link on BCM4908 Rakesh Babu (1): octeontx2-af: Formatting debugfs entry rsrc_alloc. Robert Hancock (1): net: axienet: Fix probe error cleanup Roi Dayan (2): net/mlx5e: Check correct ip_version in decapsulation route resolution net/mlx5e: Fix error flow in change profile Sasha Neftin (1): igc: reinit_locked() should be called with rtnl_lock Shannon Nelson (1): ionic: linearize tso skb with too many frags Shay Drory (2): net/mlx5: SF: Fix memory leak of work item net/mlx5: SF: Fix error flow of SFs allocation flow Stanislav Fomichev (1): bpf: Use NOP_ATOMIC5 instead of emit_nops(&prog, 5) for BPF_TRAMP_F_CALL_ORIG Stephane Grosjean (1): can: peak_usb: add forgotten supported devices Subbaraya Sundeep (4): octeontx2-pf: Do not modify number of rules octeontx2-af: Remove TOS field from MKEX TX octeontx2-af: Return correct CGX RX fifo size octeontx2-af: Fix uninitialized variable warning Tal Lossos (1): bpf: Change inode_storage's lookup_elem return value from NULL to -EBADF Tariq Toukan (2): net/mlx5e: Enforce minimum value check for ICOSQ size net/mlx5e: RX, Mind the MPWQE gaps when calculating offsets Tom Seewald (2): e1000e: Fix duplicate include guard igb: Fix duplicate include guard Tong Zhang (4): mISDN: fix crash in fritzpci net: arcnet: com20020 fix error handling can: c_can_pci: c_can_pci_remove(): fix use-after-free can: c_can: move runtime PM enable/disable to c_can_platform Tonghao Zhang (1): net: sock: simplify tw proto registration Torin Cooper-Bennun (2): can: m_can: m_can_do_rx_poll(): fix extraneous msg loss warning can: m_can: m_can_rx_peripheral(): fix RX being blocked by errors Vitaly Lifshits (1): e1000e: add rtnl_lock() to e1000_reset_task Vladimir Oltean (2): net: ipconfig: ic_dev can be NULL in ic_close_devs net: bridge: don't notify switchdev for local FDB addresses Wei Wang (2): ipv6: fix suspecious RCU usage warning net: fix race between napi kthread mode and busy poll Xie He (1): net: hdlc_x25: Prevent racing between "x25_close" and "x25_xmit"/"x25_rx" Xin Long (1): sctp: move sk_route_caps check and set into sctp_outq_flush_transports Yangbo Lu (1): ptp_qoriq: fix overflow in ptp_qoriq_adjfine() u64 calcalation Yevgeny Kliteynik (1): net/mlx5: DR, Fix potential shift wrapping of 32-bit value in STEv1 getter Yinjun Zhang (1): netfilter: flowtable: Make sure GC works periodically in idle system Yonghong Song (2): bpf: Don't do bpf_cgroup_storage_set() for kuprobe/tp programs bpf, x86: Use kvmalloc_array instead kmalloc_array in bpf_jit_comp Zenghui Yu (1): docs: net: ena: Fix ena_start_xmit() function name typo Zqiang (1): bpf: Fix umd memory leak in copy_process() liuyacan (1): net: correct sk_acceptq_is_full() wenxu (2): net/sched: act_api: fix miss set post_ct for ovs after do conntrack in act_ct net/sched: cls_flower: fix only mask bit check in the validate_ct_state Documentation/networking/device_drivers/ethernet/amazon/ena.rst | 2 +- Documentation/networking/devlink/devlink-dpipe.rst | 2 +- Documentation/networking/devlink/devlink-port.rst | 4 +- Documentation/networking/xfrm_device.rst | 2 +- MAINTAINERS | 15 ++-- arch/x86/net/bpf_jit_comp.c | 31 ++++++-- drivers/infiniband/hw/mlx5/qp.c | 18 ++++- drivers/isdn/capi/kcapi.c | 4 +- drivers/isdn/hardware/mISDN/mISDNipac.c | 2 +- drivers/net/arcnet/com20020-pci.c | 34 +++++---- drivers/net/bonding/bond_main.c | 8 +- drivers/net/can/c_can/c_can.c | 24 +----- drivers/net/can/c_can/c_can_pci.c | 3 +- drivers/net/can/c_can/c_can_platform.c | 6 +- drivers/net/can/dev/netlink.c | 1 + drivers/net/can/flexcan.c | 8 +- drivers/net/can/kvaser_pciefd.c | 4 + drivers/net/can/m_can/m_can.c | 5 +- drivers/net/can/usb/Kconfig | 1 + drivers/net/can/usb/kvaser_usb/kvaser_usb_core.c | 4 +- drivers/net/dsa/b53/b53_common.c | 14 ++-- drivers/net/dsa/bcm_sf2.c | 11 ++- drivers/net/dsa/mt7530.c | 52 ++++++------- drivers/net/ethernet/broadcom/Kconfig | 2 +- drivers/net/ethernet/chelsio/inline_crypto/ch_ktls/chcr_ktls.c | 2 +- drivers/net/ethernet/faraday/ftgmac100.c | 1 + drivers/net/ethernet/intel/e1000e/82571.c | 2 + drivers/net/ethernet/intel/e1000e/hw.h | 6 +- drivers/net/ethernet/intel/e1000e/netdev.c | 6 +- drivers/net/ethernet/intel/i40e/i40e_main.c | 13 ++++ drivers/net/ethernet/intel/i40e/i40e_txrx.c | 12 --- drivers/net/ethernet/intel/ice/ice_base.c | 24 +++++- drivers/net/ethernet/intel/ice/ice_txrx.c | 17 ----- drivers/net/ethernet/intel/ice/ice_xsk.c | 10 +-- drivers/net/ethernet/intel/igb/e1000_hw.h | 6 +- drivers/net/ethernet/intel/igb/igb.h | 4 +- drivers/net/ethernet/intel/igb/igb_main.c | 33 +++++--- drivers/net/ethernet/intel/igb/igb_ptp.c | 31 ++++++-- drivers/net/ethernet/intel/igc/igc.h | 2 +- drivers/net/ethernet/intel/igc/igc_ethtool.c | 7 +- drivers/net/ethernet/intel/igc/igc_main.c | 9 +++ drivers/net/ethernet/intel/igc/igc_ptp.c | 72 ++++++++++-------- drivers/net/ethernet/intel/ixgbe/ixgbe_main.c | 3 +- drivers/net/ethernet/marvell/Kconfig | 4 +- drivers/net/ethernet/marvell/mv643xx_eth.c | 2 +- drivers/net/ethernet/marvell/octeontx2/af/npc_profile.h | 2 - drivers/net/ethernet/marvell/octeontx2/af/rvu.c | 6 +- drivers/net/ethernet/marvell/octeontx2/af/rvu.h | 1 + drivers/net/ethernet/marvell/octeontx2/af/rvu_cgx.c | 18 ++++- drivers/net/ethernet/marvell/octeontx2/af/rvu_debugfs.c | 57 ++++++++------ drivers/net/ethernet/marvell/octeontx2/af/rvu_nix.c | 2 +- drivers/net/ethernet/marvell/octeontx2/af/rvu_npc.c | 2 +- drivers/net/ethernet/marvell/octeontx2/nic/otx2_flows.c | 4 +- drivers/net/ethernet/marvell/octeontx2/nic/otx2_pf.c | 5 ++ drivers/net/ethernet/marvell/pxa168_eth.c | 2 +- drivers/net/ethernet/mellanox/mlx5/core/en.h | 7 +- drivers/net/ethernet/mellanox/mlx5/core/en/tc_ct.c | 3 +- drivers/net/ethernet/mellanox/mlx5/core/en/tc_tun.c | 8 +- drivers/net/ethernet/mellanox/mlx5/core/en/tc_tun_encap.c | 3 +- drivers/net/ethernet/mellanox/mlx5/core/en/tc_tun_geneve.c | 4 + drivers/net/ethernet/mellanox/mlx5/core/en_ethtool.c | 11 ++- drivers/net/ethernet/mellanox/mlx5/core/en_main.c | 81 ++++++++++++++------ drivers/net/ethernet/mellanox/mlx5/core/en_rx.c | 4 +- drivers/net/ethernet/mellanox/mlx5/core/en_tc.c | 57 +++++++++++--- drivers/net/ethernet/mellanox/mlx5/core/en_tc.h | 1 + drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c | 3 +- drivers/net/ethernet/mellanox/mlx5/core/fpga/conn.c | 1 + drivers/net/ethernet/mellanox/mlx5/core/ipoib/ipoib.c | 4 +- drivers/net/ethernet/mellanox/mlx5/core/lib/clock.c | 8 +- drivers/net/ethernet/mellanox/mlx5/core/sf/dev/dev.c | 4 +- drivers/net/ethernet/mellanox/mlx5/core/sf/hw_table.c | 10 +-- drivers/net/ethernet/mellanox/mlx5/core/sf/mlx5_ifc_vhca_event.h | 2 +- drivers/net/ethernet/mellanox/mlx5/core/sf/vhca_event.c | 23 +++--- drivers/net/ethernet/mellanox/mlx5/core/sf/vhca_event.h | 7 +- drivers/net/ethernet/mellanox/mlx5/core/steering/dr_send.c | 1 + drivers/net/ethernet/mellanox/mlx5/core/steering/dr_ste_v1.c | 4 +- drivers/net/ethernet/netronome/nfp/flower/metadata.c | 24 ++++-- drivers/net/ethernet/netronome/nfp/flower/offload.c | 18 +++++ drivers/net/ethernet/netronome/nfp/flower/tunnel_conf.c | 15 +++- drivers/net/ethernet/pensando/ionic/ionic_txrx.c | 13 ++-- drivers/net/ethernet/qlogic/qlcnic/qlcnic_minidump.c | 3 + drivers/net/ethernet/realtek/r8169_main.c | 6 +- drivers/net/ethernet/socionext/netsec.c | 9 ++- drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c | 2 + drivers/net/ethernet/xilinx/xilinx_axienet_main.c | 37 ++++++--- drivers/net/ipa/ipa_cmd.c | 50 +++++++----- drivers/net/ipa/ipa_qmi.c | 2 + drivers/net/phy/broadcom.c | 9 +++ drivers/net/phy/phylink.c | 2 +- drivers/net/usb/cdc-phonet.c | 2 + drivers/net/usb/r8152.c | 5 +- drivers/net/veth.c | 3 +- drivers/net/wan/hdlc_x25.c | 42 ++++++++++- drivers/ptp/ptp_qoriq.c | 13 ++-- include/linux/bpf.h | 33 ++++++-- include/linux/if_macvlan.h | 3 +- include/linux/mlx5/qp.h | 7 ++ include/linux/netdevice.h | 2 + include/linux/netfilter/x_tables.h | 7 +- include/linux/skbuff.h | 1 + include/linux/usermode_driver.h | 1 + include/net/dst.h | 11 +++ include/net/inet_connection_sock.h | 2 +- include/net/netfilter/nf_tables.h | 3 + include/net/nexthop.h | 24 ++++++ include/net/red.h | 12 ++- include/net/rtnetlink.h | 2 + include/net/sock.h | 2 +- include/uapi/linux/bpf.h | 16 ++-- include/uapi/linux/psample.h | 5 +- kernel/bpf/bpf_inode_storage.c | 2 +- kernel/bpf/bpf_struct_ops.c | 2 +- kernel/bpf/core.c | 4 +- kernel/bpf/preload/bpf_preload_kern.c | 19 ++++- kernel/bpf/syscall.c | 5 ++ kernel/bpf/trampoline.c | 218 +++++++++++++++++++++++++++++++++++++++++------------ kernel/bpf/verifier.c | 37 ++++++--- kernel/trace/ftrace.c | 43 +++++++++-- kernel/usermode_driver.c | 21 ++++-- lib/math/div64.c | 1 + net/bridge/br_switchdev.c | 2 + net/can/isotp.c | 18 ++--- net/core/dev.c | 33 +++++++- net/core/drop_monitor.c | 23 ++++++ net/core/dst.c | 59 ++++++++++----- net/core/filter.c | 12 ++- net/core/flow_dissector.c | 2 +- net/core/sock.c | 44 +++++++---- net/dccp/ipv6.c | 5 ++ net/dsa/dsa2.c | 11 ++- net/ipv4/inet_connection_sock.c | 7 +- net/ipv4/ipconfig.c | 14 ++-- net/ipv4/netfilter/arp_tables.c | 16 ++-- net/ipv4/netfilter/ip_tables.c | 16 ++-- net/ipv4/route.c | 45 ++--------- net/ipv4/tcp_minisocks.c | 7 +- net/ipv6/ip6_fib.c | 2 +- net/ipv6/ip6_input.c | 10 --- net/ipv6/netfilter/ip6_tables.c | 16 ++-- net/ipv6/route.c | 36 +++------ net/ipv6/tcp_ipv6.c | 5 ++ net/mac80211/aead_api.c | 5 +- net/mac80211/aes_gmac.c | 5 +- net/mac80211/cfg.c | 4 +- net/mac80211/ibss.c | 2 + net/mac80211/main.c | 13 +++- net/mac80211/mlme.c | 2 +- net/mac80211/rc80211_minstrel_ht.c | 2 - net/mac80211/util.c | 2 +- net/mptcp/options.c | 24 +++--- net/mptcp/protocol.c | 4 +- net/mptcp/subflow.c | 5 ++ net/netfilter/nf_conntrack_netlink.c | 1 + net/netfilter/nf_conntrack_proto_gre.c | 3 - net/netfilter/nf_flow_table_core.c | 2 +- net/netfilter/nf_tables_api.c | 22 +++++- net/netfilter/x_tables.c | 49 ++++++++---- net/openvswitch/conntrack.c | 8 +- net/openvswitch/conntrack.h | 6 +- net/openvswitch/flow.c | 4 +- net/qrtr/qrtr.c | 5 ++ net/sched/act_ct.c | 6 +- net/sched/cls_api.c | 1 + net/sched/cls_flower.c | 2 +- net/sched/sch_choke.c | 7 +- net/sched/sch_gred.c | 2 +- net/sched/sch_htb.c | 19 +++-- net/sched/sch_red.c | 7 +- net/sched/sch_sfq.c | 2 +- net/sctp/output.c | 7 -- net/sctp/outqueue.c | 7 ++ net/tipc/node.c | 11 ++- net/vmw_vsock/af_vsock.c | 1 + net/wireless/nl80211.c | 12 ++- tools/lib/bpf/Makefile | 2 +- tools/lib/bpf/btf_dump.c | 2 +- tools/lib/bpf/libbpf.c | 3 +- tools/lib/bpf/netlink.c | 2 +- tools/testing/selftests/bpf/prog_tests/check_mtu.c | 4 + tools/testing/selftests/bpf/prog_tests/fexit_sleep.c | 82 ++++++++++++++++++++ tools/testing/selftests/bpf/progs/btf_dump_test_case_syntax.c | 8 ++ tools/testing/selftests/bpf/progs/fexit_sleep.c | 31 ++++++++ tools/testing/selftests/bpf/progs/test_check_mtu.c | 92 ++++++++++++++++++++++ tools/testing/selftests/bpf/progs/test_tunnel_kern.c | 6 +- tools/testing/selftests/bpf/verifier/bounds_deduction.c | 27 +++++-- tools/testing/selftests/bpf/verifier/map_ptr.c | 4 + tools/testing/selftests/bpf/verifier/unpriv.c | 15 +++- tools/testing/selftests/bpf/verifier/value_ptr_arith.c | 23 +++++- tools/testing/selftests/net/forwarding/vxlan_bridge_1d.sh | 2 +- tools/testing/selftests/net/mptcp/mptcp_join.sh | 30 +++++--- tools/testing/selftests/net/reuseaddr_ports_exhausted.c | 32 ++++---- 191 files changed, 1819 insertions(+), 787 deletions(-) create mode 100644 tools/testing/selftests/bpf/prog_tests/fexit_sleep.c create mode 100644 tools/testing/selftests/bpf/progs/fexit_sleep.c