projects/linux·commit d3017135

Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net

d3017135 · Linus Torvalds <[email protected]> · 2020-09-22 14:43:50 -07:00

Pull networking fixes from Jakub Kicinski:

 - fix failure to add bond interfaces to a bridge, the offload-handling
   code was too defensive there and recent refactoring unearthed that.
   Users complained (Ido)

 - fix unnecessarily reflecting ECN bits within TOS values / QoS marking
   in TCP ACK and reset packets (Wei)

 - fix a deadlock with bpf iterator. Hopefully we're in the clear on
   this front now... (Yonghong)

 - BPF fix for clobbering r2 in bpf_gen_ld_abs (Daniel)

 - fix AQL on mt76 devices with FW rate control and add a couple of AQL
   issues in mac80211 code (Felix)

 - fix authentication issue with mwifiex (Maximilian)

 - WiFi connectivity fix: revert IGTK support in ti/wlcore (Mauro)

 - fix exception handling for multipath routes via same device (David
   Ahern)

 - revert back to a BH spin lock flavor for nsid_lock: there are paths
   which do require the BH context protection (Taehee)

 - fix interrupt / queue / NAPI handling in the lantiq driver (Hauke)

 - fix ife module load deadlock (Cong)

 - make an adjustment to netlink reply message type for code added in
   this release (the sole change touching uAPI here) (Michal)

 - a number of fixes for small NXP and Microchip switches (Vladimir)

[ Pull request acked by David: "you can expect more of this in the
  future as I try to delegate more things to Jakub" ]

* git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net: (167 commits)
  net: mscc: ocelot: fix some key offsets for IP4_TCP_UDP VCAP IS2 entries
  net: dsa: seville: fix some key offsets for IP4_TCP_UDP VCAP IS2 entries
  net: dsa: felix: fix some key offsets for IP4_TCP_UDP VCAP IS2 entries
  inet_diag: validate INET_DIAG_REQ_PROTOCOL attribute
  net: bridge: br_vlan_get_pvid_rcu() should dereference the VLAN group under RCU
  net: Update MAINTAINERS for MediaTek switch driver
  net/mlx5e: mlx5e_fec_in_caps() returns a boolean
  net/mlx5e: kTLS, Avoid kzalloc(GFP_KERNEL) under spinlock
  net/mlx5e: kTLS, Fix leak on resync error flow
  net/mlx5e: kTLS, Add missing dma_unmap in RX resync
  net/mlx5e: kTLS, Fix napi sync and possible use-after-free
  net/mlx5e: TLS, Do not expose FPGA TLS counter if not supported
  net/mlx5e: Fix using wrong stats_grps in mlx5e_update_ndo_stats()
  net/mlx5e: Fix multicast counter not up-to-date in "ip -s"
  net/mlx5e: Fix endianness when calculating pedit mask first bit
  net/mlx5e: Enable adding peer miss rules only if merged eswitch is supported
  net/mlx5e: CT: Fix freeing ct_label mapping
  net/mlx5e: Fix memory leak of tunnel info when rule under multipath not ready
  net/mlx5e: Use synchronize_rcu to sync with NAPI
  net/mlx5e: Use RCU to protect rq->xdp_prog
  ...
Commit
d3017135c43373b06eef1eb70dfeb948b8ae159f
Parents
0baca070 · b334ec66

Merge commit. Changes below are compared with the first parent: 0baca070.

Changes

165 files changed · +1705 −824

FileStatusAddDelContent
Documentation/bpf/ringbuf.rstmodified+1−4View file
Documentation/networking/ethtool-netlink.rstmodified+3−0View file
MAINTAINERSmodified+6−9View file
arch/arm/boot/dts/at91-sama5d2_icp.dtsmodified+1−1View file
drivers/atm/eni.cmodified+1−1View file
drivers/net/dsa/microchip/ksz8795.cmodified+14−6View file
drivers/net/dsa/microchip/ksz9477.cmodified+19−10View file
drivers/net/dsa/microchip/ksz_common.cmodified+12−1View file
drivers/net/dsa/microchip/ksz_common.hmodified+2−1View file
drivers/net/dsa/ocelot/felix.cmodified+7−1View file
drivers/net/dsa/ocelot/felix_vsc9959.cmodified+8−8View file
drivers/net/dsa/ocelot/seville_vsc9953.cmodified+9−9View file
drivers/net/dsa/rtl8366.cmodified+13−7View file
drivers/net/ethernet/broadcom/bnxt/bnxt.cmodified+27−16View file
drivers/net/ethernet/broadcom/bnxt/bnxt.hmodified+4−0View file
drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.cmodified+23−11View file
drivers/net/ethernet/cadence/macb_main.cmodified+1−2View file
drivers/net/ethernet/chelsio/cxgb4/cxgb4_filter.cmodified+6−3View file
drivers/net/ethernet/chelsio/cxgb4/cxgb4_mps.cmodified+1−1View file
drivers/net/ethernet/dec/tulip/de2104x.cmodified+1−1View file
drivers/net/ethernet/freescale/dpaa2/dpmac-cmd.hmodified+2−2View file
drivers/net/ethernet/freescale/enetc/enetc_pf.cmodified+1−1View file
drivers/net/ethernet/hisilicon/hns/hns_dsaf_misc.cmodified+2−2View file
drivers/net/ethernet/hisilicon/hns/hns_ethtool.cmodified+20−20View file
drivers/net/ethernet/huawei/hinic/hinic_ethtool.cmodified+4−0View file
drivers/net/ethernet/huawei/hinic/hinic_hw_mgmt.cmodified+15−5View file
drivers/net/ethernet/huawei/hinic/hinic_main.cmodified+24−0View file
drivers/net/ethernet/huawei/hinic/hinic_rx.cmodified+14−7View file
drivers/net/ethernet/huawei/hinic/hinic_tx.cmodified+6−18View file
drivers/net/ethernet/ibm/ibmvnic.cmodified+4−2View file
drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.cmodified+16−6View file
drivers/net/ethernet/intel/igc/igc.hmodified+8−12View file
drivers/net/ethernet/intel/igc/igc_ptp.cmodified+19−0View file
drivers/net/ethernet/lantiq_xrx200.cmodified+13−8View file
drivers/net/ethernet/marvell/mvneta.cmodified+7−3View file
drivers/net/ethernet/mellanox/mlx5/core/en.hmodified+1−2View file
drivers/net/ethernet/mellanox/mlx5/core/en/monitor_stats.cmodified+1−1View file
drivers/net/ethernet/mellanox/mlx5/core/en/port.cmodified+2−5View file
drivers/net/ethernet/mellanox/mlx5/core/en/tc_ct.cmodified+16−5View file
drivers/net/ethernet/mellanox/mlx5/core/en/tc_ct.hmodified+16−10View file
drivers/net/ethernet/mellanox/mlx5/core/en/txrx.hmodified+5−0View file
drivers/net/ethernet/mellanox/mlx5/core/en/xdp.cmodified+1−1View file
drivers/net/ethernet/mellanox/mlx5/core/en/xsk/rx.cmodified+2−12View file
drivers/net/ethernet/mellanox/mlx5/core/en/xsk/setup.cmodified+1−2View file
drivers/net/ethernet/mellanox/mlx5/core/en_accel/ktls_rx.cmodified+22−21View file
drivers/net/ethernet/mellanox/mlx5/core/en_accel/tls_stats.cmodified+8−4View file
drivers/net/ethernet/mellanox/mlx5/core/en_main.cmodified+31−54View file
drivers/net/ethernet/mellanox/mlx5/core/en_rep.cmodified+2−2View file
drivers/net/ethernet/mellanox/mlx5/core/en_rx.cmodified+6−10View file
drivers/net/ethernet/mellanox/mlx5/core/en_stats.cmodified+12−0View file
drivers/net/ethernet/mellanox/mlx5/core/en_stats.hmodified+3−0View file
drivers/net/ethernet/mellanox/mlx5/core/en_tc.cmodified+26−19View file
drivers/net/ethernet/mellanox/mlx5/core/en_txrx.cmodified+13−4View file
drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.cmodified+28−24View file
drivers/net/ethernet/mellanox/mlx5/core/fs_core.cmodified+4−4View file
drivers/net/ethernet/mscc/ocelot.cmodified+15−9View file
drivers/net/ethernet/mscc/ocelot_net.cmodified+6−6View file
drivers/net/ethernet/mscc/ocelot_vsc7514.cmodified+145−104View file
drivers/net/ethernet/netronome/nfp/nfp_net_ethtool.cmodified+2−2View file
drivers/net/ethernet/qlogic/qed/qed_dev.cmodified+10−1View file
drivers/net/ethernet/qlogic/qed/qed_l2.cmodified+3−0View file
drivers/net/ethernet/qlogic/qed/qed_main.cmodified+2−0View file
drivers/net/ethernet/qlogic/qed/qed_sriov.cmodified+1−0View file
drivers/net/ethernet/qlogic/qede/qede_filter.cmodified+3−0View file
drivers/net/ethernet/qlogic/qede/qede_main.cmodified+5−6View file
drivers/net/ethernet/sfc/ef100.cmodified+1−0View file
drivers/net/ethernet/ti/cpsw_new.cmodified+53−0View file
drivers/net/geneve.cmodified+27−10View file
drivers/net/hyperv/hyperv_net.hmodified+7−0View file
drivers/net/hyperv/netvsc.cmodified+111−13View file
drivers/net/hyperv/netvsc_drv.cmodified+29−6View file
drivers/net/hyperv/rndis_filter.cmodified+66−7View file
drivers/net/ieee802154/adf7242.cmodified+3−1View file
drivers/net/ieee802154/ca8210.cmodified+1−0View file
drivers/net/ipa/ipa_table.cmodified+2−2View file
drivers/net/phy/phy.cmodified+1−1View file
drivers/net/phy/phy_device.cmodified+6−5View file
drivers/net/usb/rndis_host.cmodified+1−1View file
drivers/net/wan/hdlc_cisco.cmodified+1−0View file
drivers/net/wan/hdlc_fr.cmodified+5−1View file
drivers/net/wan/hdlc_ppp.cmodified+12−5View file
drivers/net/wan/lapbether.cmodified+2−2View file
drivers/net/wireguard/noise.cmodified+1−4View file
drivers/net/wireguard/peerlookup.cmodified+8−3View file
drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.cmodified+9−3View file
drivers/net/wireless/marvell/mwifiex/fw.hmodified+1−1View file
drivers/net/wireless/marvell/mwifiex/sta_cmdresp.cmodified+2−2View file
drivers/net/wireless/mediatek/mt76/mt7615/mcu.cmodified+2−1View file
drivers/net/wireless/mediatek/mt76/mt7915/init.cmodified+6−2View file
drivers/net/wireless/mediatek/mt76/mt7915/mac.cmodified+1−1View file
drivers/net/wireless/ti/wlcore/cmd.hmodified+0−1View file
drivers/net/wireless/ti/wlcore/main.cmodified+0−4View file
drivers/s390/net/qeth_l2_main.cmodified+1−1View file
drivers/s390/net/qeth_l3_main.cmodified+1−1View file
include/linux/netdev_features.hmodified+1−1View file
include/linux/netdevice.hmodified+2−0View file
include/linux/qed/qed_if.hmodified+1−0View file
include/linux/skbuff.hmodified+4−3View file
include/net/flow.hmodified+1−0View file
include/net/netlink.hmodified+0−2View file
include/net/netns/nftables.hmodified+1−0View file
include/net/sctp/structs.hmodified+5−3View file
include/net/vxlan.hmodified+3−0View file
include/soc/mscc/ocelot.hmodified+2−0View file
include/uapi/linux/ethtool_netlink.hmodified+1−0View file
kernel/bpf/hashtab.cmodified+4−11View file
kernel/bpf/inode.cmodified+3−1View file
lib/test_rhashtable.cmodified+1−1View file
net/batman-adv/bridge_loop_avoidance.cmodified+117−28View file
net/batman-adv/bridge_loop_avoidance.hmodified+2−2View file
net/batman-adv/multicast.cmodified+36−10View file
net/batman-adv/multicast.hmodified+15−0View file
net/batman-adv/routing.cmodified+4−0View file
net/batman-adv/soft-interface.cmodified+5−6View file
net/bridge/br_vlan.cmodified+17−10View file
net/core/dev.cmodified+1−1View file
net/core/dst.cmodified+1−1View file
net/core/fib_rules.cmodified+1−1View file
net/core/filter.cmodified+10−9View file
net/core/net_namespace.cmodified+11−11View file
net/dcb/dcbnl.cmodified+8−0View file
net/dsa/slave.cmodified+16−2View file
net/dsa/tag_ocelot.cmodified+7−4View file
net/ethtool/tunnels.cmodified+2−2View file
net/hsr/hsr_netlink.cmodified+3−3View file
net/ipv4/fib_frontend.cmodified+1−0View file
net/ipv4/inet_diag.cmodified+15−5View file
net/ipv4/ip_output.cmodified+2−1View file
net/ipv4/ip_tunnel_core.cmodified+1−0View file
net/ipv4/route.cmodified+9−5View file
net/ipv6/Kconfigmodified+1−0View file
net/ipv6/ip6_fib.cmodified+9−4View file
net/ipv6/route.cmodified+1−1View file
net/mac80211/airtime.cmodified+14−6View file
net/mac80211/mlme.cmodified+2−1View file
net/mac80211/rx.cmodified+2−1View file
net/mac80211/util.cmodified+4−3View file
net/mac80211/vht.cmodified+4−4View file
net/mac802154/tx.cmodified+5−3View file
net/mptcp/pm_netlink.cmodified+16−3View file
net/mptcp/subflow.cmodified+5−2View file
net/netfilter/nf_conntrack_netlink.cmodified+5−17View file
net/netfilter/nf_conntrack_proto.cmodified+2−0View file
net/netfilter/nf_tables_api.cmodified+57−13View file
net/netfilter/nft_meta.cmodified+2−2View file
net/qrtr/qrtr.cmodified+11−10View file
net/sched/act_ife.cmodified+34−10View file
net/sched/act_tunnel_key.cmodified+1−0View file
net/sched/cls_flower.cmodified+4−1View file
net/sched/sch_generic.cmodified+33−15View file
net/sched/sch_taprio.cmodified+17−11View file
net/sctp/socket.cmodified+3−6View file
net/tipc/group.cmodified+10−4View file
net/tipc/link.cmodified+2−1View file
net/tipc/msg.cmodified+2−1View file
net/tipc/socket.cmodified+1−4View file
net/wireless/Kconfigmodified+1−0View file
net/wireless/util.cmodified+1−1View file
net/xdp/xdp_umem.cmodified+8−9View file
tools/bpf/Makefilemodified+2−2View file
tools/bpf/resolve_btfids/Makefilemodified+1−0View file
tools/lib/bpf/Makefilemodified+3−1View file
tools/lib/bpf/libbpf.cmodified+1−1View file
tools/testing/selftests/bpf/progs/bpf_iter_bpf_hash_map.cmodified+15−0View file
tools/testing/selftests/net/rtnetlink.shmodified+47−0View file

Only the first 600 diff lines are shown. Download the complete patch.

Documentation/bpf/ringbuf.rst

View file
diff --git a/Documentation/bpf/ringbuf.rst b/Documentation/bpf/ringbuf.rst
index 75f943f..6a615cd 100644
--- a/Documentation/bpf/ringbuf.rst
+++ b/Documentation/bpf/ringbuf.rst
@@ -182,9 +182,6 @@ in the order of reservations, but only after all previous records where
already committed. It is thus possible for slow producers to temporarily hold
off submitted records, that were reserved later.
-Reservation/commit/consumer protocol is verified by litmus tests in
-Documentation/litmus_tests/bpf-rb/_.
-
One interesting implementation bit, that significantly simplifies (and thus
speeds up as well) implementation of both producers and consumers is how data
area is mapped twice contiguously back-to-back in the virtual memory. This
@@ -200,7 +197,7 @@ a self-pacing notifications of new data being availability.
being available after commit only if consumer has already caught up right up to
the record being committed. If not, consumer still has to catch up and thus
will see new data anyways without needing an extra poll notification.
-Benchmarks (see tools/testing/selftests/bpf/benchs/bench_ringbuf.c_) show that
+Benchmarks (see tools/testing/selftests/bpf/benchs/bench_ringbufs.c) show that
this allows to achieve a very high throughput without having to resort to
tricks like "notify only every Nth sample", which are necessary with perf
buffer. For extreme cases, when BPF program wants more manual control of

Documentation/networking/ethtool-netlink.rst

View file
diff --git a/Documentation/networking/ethtool-netlink.rst b/Documentation/networking/ethtool-netlink.rst
index d53bcb3..b5a7988 100644
--- a/Documentation/networking/ethtool-netlink.rst
+++ b/Documentation/networking/ethtool-netlink.rst
@@ -206,6 +206,7 @@ Userspace to kernel:
``ETHTOOL_MSG_TSINFO_GET`` get timestamping info
``ETHTOOL_MSG_CABLE_TEST_ACT`` action start cable test
``ETHTOOL_MSG_CABLE_TEST_TDR_ACT`` action start raw TDR cable test
+ ``ETHTOOL_MSG_TUNNEL_INFO_GET`` get tunnel offload info
===================================== ================================
Kernel to userspace:
@@ -239,6 +240,7 @@ Kernel to userspace:
``ETHTOOL_MSG_TSINFO_GET_REPLY`` timestamping info
``ETHTOOL_MSG_CABLE_TEST_NTF`` Cable test results
``ETHTOOL_MSG_CABLE_TEST_TDR_NTF`` Cable test TDR results
+ ``ETHTOOL_MSG_TUNNEL_INFO_GET_REPLY`` tunnel offload info
===================================== =================================
``GET`` requests are sent by userspace applications to retrieve device
@@ -1363,4 +1365,5 @@ are netlink only.
``ETHTOOL_SFECPARAM`` n/a
n/a ''ETHTOOL_MSG_CABLE_TEST_ACT''
n/a ''ETHTOOL_MSG_CABLE_TEST_TDR_ACT''
+ n/a ``ETHTOOL_MSG_TUNNEL_INFO_GET``
=================================== =====================================

MAINTAINERS

View file
diff --git a/MAINTAINERS b/MAINTAINERS
index d746519..9350506 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -4408,12 +4408,6 @@ T: git git://git.infradead.org/users/hch/configfs.git
F: fs/configfs/
F: include/linux/configfs.h
-CONNECTOR
-M: Evgeniy Polyakov <[email protected]>
-S: Maintained
-F: drivers/connector/
-
CONSOLE SUBSYSTEM
M: Greg Kroah-Hartman <[email protected]>
S: Supported
@@ -8329,8 +8323,9 @@ S: Supported
F: drivers/pci/hotplug/rpaphp*
IBM Power SRIOV Virtual NIC Device Driver
-M: Thomas Falcon <[email protected]>
-M: John Allen <[email protected]>
+M: Dany Madden <[email protected]>
+M: Lijun Pan <[email protected]>
+M: Sukadev Bhattiprolu <[email protected]>
S: Supported
F: drivers/net/ethernet/ibm/ibmvnic.*
@@ -8344,7 +8339,7 @@ F: arch/powerpc/platforms/powernv/copy-paste.h
F: arch/powerpc/platforms/powernv/vas*
IBM Power Virtual Ethernet Device Driver
-M: Thomas Falcon <[email protected]>
+M: Cristobal Forno <[email protected]>
S: Supported
F: drivers/net/ethernet/ibm/ibmveth.*
@@ -11042,6 +11037,7 @@ F: drivers/char/hw_random/mtk-rng.c
MEDIATEK SWITCH DRIVER
M: Sean Wang <[email protected]>
+M: Landen Chao <[email protected]>
S: Maintained
F: drivers/net/dsa/mt7530.*
@@ -12055,6 +12051,7 @@ Q: http://patchwork.ozlabs.org/project/netdev/list/
T: git git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net.git
T: git git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next.git
F: Documentation/devicetree/bindings/net/
+F: drivers/connector/
F: drivers/net/
F: include/linux/etherdevice.h
F: include/linux/fcdevice.h

arch/arm/boot/dts/at91-sama5d2_icp.dts

View file
diff --git a/arch/arm/boot/dts/at91-sama5d2_icp.dts b/arch/arm/boot/dts/at91-sama5d2_icp.dts
index 8d19925..6783cf1 100644
--- a/arch/arm/boot/dts/at91-sama5d2_icp.dts
+++ b/arch/arm/boot/dts/at91-sama5d2_icp.dts
@@ -116,7 +116,6 @@
switch0: ksz8563@0 {
compatible = "microchip,ksz8563";
reg = <0>;
- phy-mode = "mii";
reset-gpios = <&pioA PIN_PD4 GPIO_ACTIVE_LOW>;
spi-max-frequency = <500000>;
@@ -140,6 +139,7 @@
reg = <2>;
label = "cpu";
ethernet = <&macb0>;
+ phy-mode = "mii";
fixed-link {
speed = <100>;
full-duplex;

drivers/atm/eni.c

View file
diff --git a/drivers/atm/eni.c b/drivers/atm/eni.c
index 39be444..316a994 100644
--- a/drivers/atm/eni.c
+++ b/drivers/atm/eni.c
@@ -2224,7 +2224,7 @@ static int eni_init_one(struct pci_dev *pci_dev,
rc = dma_set_mask_and_coherent(&pci_dev->dev, DMA_BIT_MASK(32));
if (rc < 0)
- goto out;
+ goto err_disable;
rc = -ENOMEM;
eni_dev = kmalloc(sizeof(struct eni_dev), GFP_KERNEL);

drivers/net/dsa/microchip/ksz8795.c

View file
diff --git a/drivers/net/dsa/microchip/ksz8795.c b/drivers/net/dsa/microchip/ksz8795.c
index 8f1d15e..f5779e1 100644
--- a/drivers/net/dsa/microchip/ksz8795.c
+++ b/drivers/net/dsa/microchip/ksz8795.c
@@ -932,11 +932,19 @@ static void ksz8795_port_setup(struct ksz_device *dev, int port, bool cpu_port)
ksz_port_cfg(dev, port, P_PRIO_CTRL, PORT_802_1P_ENABLE, true);
if (cpu_port) {
+ if (!p->interface && dev->compat_interface) {
+ dev_warn(dev->dev,
+ "Using legacy switch \"phy-mode\" property, because it is missing on port %d node. "
+ "Please update your device tree.\n",
+ port);
+ p->interface = dev->compat_interface;
+ }
+
/* Configure MII interface for proper network communication. */
ksz_read8(dev, REG_PORT_5_CTRL_6, &data8);
data8 &= ~PORT_INTERFACE_TYPE;
data8 &= ~PORT_GMII_1GPS_MODE;
- switch (dev->interface) {
+ switch (p->interface) {
case PHY_INTERFACE_MODE_MII:
p->phydev.speed = SPEED_100;
break;
@@ -952,11 +960,11 @@ static void ksz8795_port_setup(struct ksz_device *dev, int port, bool cpu_port)
default:
data8 &= ~PORT_RGMII_ID_IN_ENABLE;
data8 &= ~PORT_RGMII_ID_OUT_ENABLE;
- if (dev->interface == PHY_INTERFACE_MODE_RGMII_ID ||
- dev->interface == PHY_INTERFACE_MODE_RGMII_RXID)
+ if (p->interface == PHY_INTERFACE_MODE_RGMII_ID ||
+ p->interface == PHY_INTERFACE_MODE_RGMII_RXID)
data8 |= PORT_RGMII_ID_IN_ENABLE;
- if (dev->interface == PHY_INTERFACE_MODE_RGMII_ID ||
- dev->interface == PHY_INTERFACE_MODE_RGMII_TXID)
+ if (p->interface == PHY_INTERFACE_MODE_RGMII_ID ||
+ p->interface == PHY_INTERFACE_MODE_RGMII_TXID)
data8 |= PORT_RGMII_ID_OUT_ENABLE;
data8 |= PORT_GMII_1GPS_MODE;
data8 |= PORT_INTERFACE_RGMII;
@@ -1252,7 +1260,7 @@ static int ksz8795_switch_init(struct ksz_device *dev)
}
/* set the real number of ports */
- dev->ds->num_ports = dev->port_cnt;
+ dev->ds->num_ports = dev->port_cnt + 1;
return 0;
}

drivers/net/dsa/microchip/ksz9477.c

View file
diff --git a/drivers/net/dsa/microchip/ksz9477.c b/drivers/net/dsa/microchip/ksz9477.c
index 3cb22d1..2f5506a 100644
--- a/drivers/net/dsa/microchip/ksz9477.c
+++ b/drivers/net/dsa/microchip/ksz9477.c
@@ -1208,7 +1208,7 @@ static void ksz9477_port_setup(struct ksz_device *dev, int port, bool cpu_port)
/* configure MAC to 1G & RGMII mode */
ksz_pread8(dev, port, REG_PORT_XMII_CTRL_1, &data8);
- switch (dev->interface) {
+ switch (p->interface) {
case PHY_INTERFACE_MODE_MII:
ksz9477_set_xmii(dev, 0, &data8);
ksz9477_set_gbit(dev, false, &data8);
@@ -1229,11 +1229,11 @@ static void ksz9477_port_setup(struct ksz_device *dev, int port, bool cpu_port)
ksz9477_set_gbit(dev, true, &data8);
data8 &= ~PORT_RGMII_ID_IG_ENABLE;
data8 &= ~PORT_RGMII_ID_EG_ENABLE;
- if (dev->interface == PHY_INTERFACE_MODE_RGMII_ID ||
- dev->interface == PHY_INTERFACE_MODE_RGMII_RXID)
+ if (p->interface == PHY_INTERFACE_MODE_RGMII_ID ||
+ p->interface == PHY_INTERFACE_MODE_RGMII_RXID)
data8 |= PORT_RGMII_ID_IG_ENABLE;
- if (dev->interface == PHY_INTERFACE_MODE_RGMII_ID ||
- dev->interface == PHY_INTERFACE_MODE_RGMII_TXID)
+ if (p->interface == PHY_INTERFACE_MODE_RGMII_ID ||
+ p->interface == PHY_INTERFACE_MODE_RGMII_TXID)
data8 |= PORT_RGMII_ID_EG_ENABLE;
p->phydev.speed = SPEED_1000;
break;
@@ -1269,23 +1269,32 @@ static void ksz9477_config_cpu_port(struct dsa_switch *ds)
dev->cpu_port = i;
dev->host_mask = (1 << dev->cpu_port);
dev->port_mask |= dev->host_mask;
+ p = &dev->ports[i];
/* Read from XMII register to determine host port
* interface. If set specifically in device tree
* note the difference to help debugging.
*/
interface = ksz9477_get_interface(dev, i);
- if (!dev->interface)
- dev->interface = interface;
- if (interface && interface != dev->interface)
+ if (!p->interface) {
+ if (dev->compat_interface) {
+ dev_warn(dev->dev,
+ "Using legacy switch \"phy-mode\" property, because it is missing on port %d node. "
+ "Please update your device tree.\n",
+ i);
+ p->interface = dev->compat_interface;
+ } else {
+ p->interface = interface;
+ }
+ }
+ if (interface && interface != p->interface)
dev_info(dev->dev,
"use %s instead of %s\n",
- phy_modes(dev->interface),
+ phy_modes(p->interface),
phy_modes(interface));
/* enable cpu port */
ksz9477_port_setup(dev, i, true);
- p = &dev->ports[dev->cpu_port];
p->vid_member = dev->port_mask;
p->on = 1;
}

drivers/net/dsa/microchip/ksz_common.c

View file
diff --git a/drivers/net/dsa/microchip/ksz_common.c b/drivers/net/dsa/microchip/ksz_common.c
index 8d53b12..8e755b5 100644
--- a/drivers/net/dsa/microchip/ksz_common.c
+++ b/drivers/net/dsa/microchip/ksz_common.c
@@ -388,6 +388,8 @@ int ksz_switch_register(struct ksz_device *dev,
const struct ksz_dev_ops *ops)
{
phy_interface_t interface;
+ struct device_node *port;
+ unsigned int port_num;
int ret;
if (dev->pdata)
@@ -421,10 +423,19 @@ int ksz_switch_register(struct ksz_device *dev,
/* Host port interface will be self detected, or specifically set in
* device tree.
*/
+ for (port_num = 0; port_num < dev->port_cnt; ++port_num)
+ dev->ports[port_num].interface = PHY_INTERFACE_MODE_NA;
if (dev->dev->of_node) {
ret = of_get_phy_mode(dev->dev->of_node, &interface);
if (ret == 0)
- dev->interface = interface;
+ dev->compat_interface = interface;
+ for_each_available_child_of_node(dev->dev->of_node, port) {
+ if (of_property_read_u32(port, "reg", &port_num))
+ continue;
+ if (port_num >= dev->port_cnt)
+ return -EINVAL;
+ of_get_phy_mode(port, &dev->ports[port_num].interface);
+ }
dev->synclko_125 = of_property_read_bool(dev->dev->of_node,
"microchip,synclko-125");
}

drivers/net/dsa/microchip/ksz_common.h

View file
diff --git a/drivers/net/dsa/microchip/ksz_common.h b/drivers/net/dsa/microchip/ksz_common.h
index 2068381..cf866e4 100644
--- a/drivers/net/dsa/microchip/ksz_common.h
+++ b/drivers/net/dsa/microchip/ksz_common.h
@@ -39,6 +39,7 @@ struct ksz_port {
u32 freeze:1; /* MIB counter freeze is enabled */
struct ksz_port_mib mib;
+ phy_interface_t interface;
};
struct ksz_device {
@@ -72,7 +73,7 @@ struct ksz_device {
int mib_cnt;
int mib_port_cnt;
int last_port; /* ports after that not used */
- phy_interface_t interface;
+ phy_interface_t compat_interface;
u32 regs_size;
bool phy_errata_9477;
bool synclko_125;

drivers/net/dsa/ocelot/felix.c

View file
diff --git a/drivers/net/dsa/ocelot/felix.c b/drivers/net/dsa/ocelot/felix.c
index 04bfa6e..01427cd 100644
--- a/drivers/net/dsa/ocelot/felix.c
+++ b/drivers/net/dsa/ocelot/felix.c
@@ -585,7 +585,10 @@ static int felix_setup(struct dsa_switch *ds)
if (err)
return err;
- ocelot_init(ocelot);
+ err = ocelot_init(ocelot);
+ if (err)
+ return err;
+
if (ocelot->ptp) {
err = ocelot_init_timestamp(ocelot, &ocelot_ptp_clock_info);
if (err) {
@@ -640,10 +643,13 @@ static void felix_teardown(struct dsa_switch *ds)
{
struct ocelot *ocelot = ds->priv;
struct felix *felix = ocelot_to_felix(ocelot);
+ int port;
if (felix->info->mdio_bus_free)
felix->info->mdio_bus_free(ocelot);
+ for (port = 0; port < ocelot->num_phys_ports; port++)
+ ocelot_deinit_port(ocelot, port);
ocelot_deinit_timestamp(ocelot);
/* stop workqueue thread */
ocelot_deinit(ocelot);

drivers/net/dsa/ocelot/felix_vsc9959.c

View file
diff --git a/drivers/net/dsa/ocelot/felix_vsc9959.c b/drivers/net/dsa/ocelot/felix_vsc9959.c
index 9b720c8..6855c94 100644
--- a/drivers/net/dsa/ocelot/felix_vsc9959.c
+++ b/drivers/net/dsa/ocelot/felix_vsc9959.c
@@ -645,17 +645,17 @@ static struct vcap_field vsc9959_vcap_is2_keys[] = {
[VCAP_IS2_HK_DIP_EQ_SIP] = {118, 1},
/* IP4_TCP_UDP (TYPE=100) */
[VCAP_IS2_HK_TCP] = {119, 1},
- [VCAP_IS2_HK_L4_SPORT] = {120, 16},
- [VCAP_IS2_HK_L4_DPORT] = {136, 16},
+ [VCAP_IS2_HK_L4_DPORT] = {120, 16},
+ [VCAP_IS2_HK_L4_SPORT] = {136, 16},
[VCAP_IS2_HK_L4_RNG] = {152, 8},
[VCAP_IS2_HK_L4_SPORT_EQ_DPORT] = {160, 1},
[VCAP_IS2_HK_L4_SEQUENCE_EQ0] = {161, 1},
- [VCAP_IS2_HK_L4_URG] = {162, 1},
- [VCAP_IS2_HK_L4_ACK] = {163, 1},
- [VCAP_IS2_HK_L4_PSH] = {164, 1},
- [VCAP_IS2_HK_L4_RST] = {165, 1},
- [VCAP_IS2_HK_L4_SYN] = {166, 1},
- [VCAP_IS2_HK_L4_FIN] = {167, 1},
+ [VCAP_IS2_HK_L4_FIN] = {162, 1},
+ [VCAP_IS2_HK_L4_SYN] = {163, 1},
+ [VCAP_IS2_HK_L4_RST] = {164, 1},
+ [VCAP_IS2_HK_L4_PSH] = {165, 1},
+ [VCAP_IS2_HK_L4_ACK] = {166, 1},
+ [VCAP_IS2_HK_L4_URG] = {167, 1},
[VCAP_IS2_HK_L4_1588_DOM] = {168, 8},
[VCAP_IS2_HK_L4_1588_VER] = {176, 4},
/* IP4_OTHER (TYPE=101) */

drivers/net/dsa/ocelot/seville_vsc9953.c

View file
diff --git a/drivers/net/dsa/ocelot/seville_vsc9953.c b/drivers/net/dsa/ocelot/seville_vsc9953.c
index 625b189..29df079 100644
--- a/drivers/net/dsa/ocelot/seville_vsc9953.c
+++ b/drivers/net/dsa/ocelot/seville_vsc9953.c
@@ -659,17 +659,17 @@ static struct vcap_field vsc9953_vcap_is2_keys[] = {
[VCAP_IS2_HK_DIP_EQ_SIP] = {122, 1},
/* IP4_TCP_UDP (TYPE=100) */
[VCAP_IS2_HK_TCP] = {123, 1},
- [VCAP_IS2_HK_L4_SPORT] = {124, 16},
- [VCAP_IS2_HK_L4_DPORT] = {140, 16},
+ [VCAP_IS2_HK_L4_DPORT] = {124, 16},
+ [VCAP_IS2_HK_L4_SPORT] = {140, 16},
[VCAP_IS2_HK_L4_RNG] = {156, 8},
[VCAP_IS2_HK_L4_SPORT_EQ_DPORT] = {164, 1},
[VCAP_IS2_HK_L4_SEQUENCE_EQ0] = {165, 1},
- [VCAP_IS2_HK_L4_URG] = {166, 1},
- [VCAP_IS2_HK_L4_ACK] = {167, 1},
- [VCAP_IS2_HK_L4_PSH] = {168, 1},
- [VCAP_IS2_HK_L4_RST] = {169, 1},
- [VCAP_IS2_HK_L4_SYN] = {170, 1},
- [VCAP_IS2_HK_L4_FIN] = {171, 1},
+ [VCAP_IS2_HK_L4_FIN] = {166, 1},
+ [VCAP_IS2_HK_L4_SYN] = {167, 1},
+ [VCAP_IS2_HK_L4_RST] = {168, 1},
+ [VCAP_IS2_HK_L4_PSH] = {169, 1},
+ [VCAP_IS2_HK_L4_ACK] = {170, 1},
+ [VCAP_IS2_HK_L4_URG] = {171, 1},
/* IP4_OTHER (TYPE=101) */
[VCAP_IS2_HK_IP4_L3_PROTO] = {123, 8},
[VCAP_IS2_HK_L3_PAYLOAD] = {131, 56},
@@ -1008,7 +1008,7 @@ static const struct felix_info seville_info_vsc9953 = {
.vcap_is2_keys = vsc9953_vcap_is2_keys,
.vcap_is2_actions = vsc9953_vcap_is2_actions,
.vcap = vsc9953_vcap_props,
- .shared_queue_sz = 128 * 1024,
+ .shared_queue_sz = 2048 * 1024,
.num_mact_rows = 2048,
.num_ports = 10,
.mdio_bus_alloc = vsc9953_mdio_bus_alloc,

drivers/net/dsa/rtl8366.c

View file
diff --git a/drivers/net/dsa/rtl8366.c b/drivers/net/dsa/rtl8366.c
index 8f40fbf..a8c5a93 100644
--- a/drivers/net/dsa/rtl8366.c
+++ b/drivers/net/dsa/rtl8366.c
@@ -452,13 +452,19 @@ int rtl8366_vlan_del(struct dsa_switch *ds, int port,
return ret;
if (vid == vlanmc.vid) {
- /* clear VLAN member configurations */
- vlanmc.vid = 0;
- vlanmc.priority = 0;
- vlanmc.member = 0;
- vlanmc.untag = 0;
- vlanmc.fid = 0;
-
+ /* Remove this port from the VLAN */
+ vlanmc.member &= ~BIT(port);
+ vlanmc.untag &= ~BIT(port);
+ /*
+ * If no ports are members of this VLAN
+ * anymore then clear the whole member
+ * config so it can be reused.
+ */
+ if (!vlanmc.member && vlanmc.untag) {
+ vlanmc.vid = 0;
+ vlanmc.priority = 0;
+ vlanmc.fid = 0;
+ }
ret = smi->ops->set_vlan_mc(smi, i, &vlanmc);
if (ret) {
dev_err(smi->dev,

drivers/net/ethernet/broadcom/bnxt/bnxt.c

View file
diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt.c b/drivers/net/ethernet/broadcom/bnxt/bnxt.c
index b167066..7b7e8b7 100644
--- a/drivers/net/ethernet/broadcom/bnxt/bnxt.c
+++ b/drivers/net/ethernet/broadcom/bnxt/bnxt.c
@@ -3782,6 +3782,7 @@ static int bnxt_hwrm_func_qstat_ext(struct bnxt *bp,
return -EOPNOTSUPP;
bnxt_hwrm_cmd_hdr_init(bp, &req, HWRM_FUNC_QSTATS_EXT, -1, -1);
+ req.fid = cpu_to_le16(0xffff);
req.flags = FUNC_QSTATS_EXT_REQ_FLAGS_COUNTER_MASK;
mutex_lock(&bp->hwrm_cmd_lock);
rc = _hwrm_send_message(bp, &req, sizeof(req), HWRM_CMD_TIMEOUT);
@@ -3852,7 +3853,7 @@ static void bnxt_init_stats(struct bnxt *bp)
tx_masks = stats->hw_masks;
tx_count = sizeof(struct tx_port_stats_ext) / 8;
- flags = FUNC_QSTATS_EXT_REQ_FLAGS_COUNTER_MASK;
+ flags = PORT_QSTATS_EXT_REQ_FLAGS_COUNTER_MASK;
rc = bnxt_hwrm_port_qstats_ext(bp, flags);
if (rc) {
mask = (1ULL << 40) - 1;
@@ -4305,7 +4306,7 @@ static int bnxt_hwrm_do_send_msg(struct bnxt *bp, void *msg, u32 msg_len,
u32 bar_offset = BNXT_GRCPF_REG_CHIMP_COMM;
u16 dst = BNXT_HWRM_CHNL_CHIMP;
- if (test_bit(BNXT_STATE_FW_FATAL_COND, &bp->state))
+ if (BNXT_NO_FW_ACCESS(bp))
return -EBUSY;
if (msg_len > BNXT_HWRM_MAX_REQ_LEN) {
@@ -5723,7 +5724,7 @@ static int hwrm_ring_free_send_msg(struct bnxt *bp,
struct hwrm_ring_free_output *resp = bp->hwrm_cmd_resp_addr;
u16 error_code;
- if (test_bit(BNXT_STATE_FW_FATAL_COND, &bp->state))
+ if (BNXT_NO_FW_ACCESS(bp))
return 0;
bnxt_hwrm_cmd_hdr_init(bp, &req, HWRM_RING_FREE, cmpl_ring_id, -1);
@@ -7817,7 +7818,7 @@ static int bnxt_set_tpa(struct bnxt *bp, bool set_tpa)
if (set_tpa)
tpa_flags = bp->flags & BNXT_FLAG_TPA;
- else if (test_bit(BNXT_STATE_FW_FATAL_COND, &bp->state))
+ else if (BNXT_NO_FW_ACCESS(bp))
return 0;
for (i = 0; i < bp->nr_vnics; i++) {
rc = bnxt_hwrm_vnic_set_tpa(bp, i, tpa_flags);
@@ -9311,18 +9312,16 @@ static ssize_t bnxt_show_temp(struct device *dev,
struct hwrm_temp_monitor_query_output *resp;
struct bnxt *bp = dev_get_drvdata(dev);
u32 len = 0;
+ int rc;
resp = bp->hwrm_cmd_resp_addr;
bnxt_hwrm_cmd_hdr_init(bp, &req, HWRM_TEMP_MONITOR_QUERY, -1, -1);
mutex_lock(&bp->hwrm_cmd_lock);
- if (!_hwrm_send_message_silent(bp, &req, sizeof(req), HWRM_CMD_TIMEOUT))
+ rc = _hwrm_send_message(bp, &req, sizeof(req), HWRM_CMD_TIMEOUT);
+ if (!rc)
len = sprintf(buf, "%u\n", resp->temp * 1000); /* display millidegree */
mutex_unlock(&bp->hwrm_cmd_lock);
-
- if (len)
- return len;
-
- return sprintf(buf, "unknown\n");
+ return rc ?: len;
}
static SENSOR_DEVICE_ATTR(temp1_input, 0444, bnxt_show_temp, NULL, 0);
@@ -9342,7 +9341,16 @@ static void bnxt_hwmon_close(struct bnxt *bp)
static void bnxt_hwmon_open(struct bnxt *bp)
{
+ struct hwrm_temp_monitor_query_input req = {0};
struct pci_dev *pdev = bp->pdev;
+ int rc;
+
+ bnxt_hwrm_cmd_hdr_init(bp, &req, HWRM_TEMP_MONITOR_QUERY, -1, -1);
+ rc = hwrm_send_message_silent(bp, &req, sizeof(req), HWRM_CMD_TIMEOUT);
+ if (rc == -EACCES || rc == -EOPNOTSUPP) {
+ bnxt_hwmon_close(bp);
+ return;
+ }
if (bp->hwmon_dev)
return;
@@ -11779,6 +11787,10 @@ static void bnxt_remove_one(struct pci_dev *pdev)
if (BNXT_PF(bp))
bnxt_sriov_disable(bp);
+ clear_bit(BNXT_STATE_IN_FW_RESET, &bp->state);
+ bnxt_cancel_sp_work(bp);
+ bp->sp_event = 0;
+
bnxt_dl_fw_reporters_destroy(bp, true);
if (BNXT_PF(bp))
devlink_port_type_clear(&bp->dl_port);
@@ -11786,9 +11798,6 @@ static void bnxt_remove_one(struct pci_dev *pdev)
unregister_netdev(dev);
bnxt_dl_unregister(bp);
bnxt_shutdown_tc(bp);
- clear_bit(BNXT_STATE_IN_FW_RESET, &bp->state);
- bnxt_cancel_sp_work(bp);
- bp->sp_event = 0;
bnxt_clear_int_mode(bp);
bnxt_hwrm_func_drv_unrgtr(bp);
@@ -12089,7 +12098,7 @@ static int bnxt_init_mac_addr(struct bnxt *bp)
static void bnxt_vpd_read_info(struct bnxt *bp)
{
struct pci_dev *pdev = bp->pdev;
- int i, len, pos, ro_size;
+ int i, len, pos, ro_size, size;
ssize_t vpd_size;
u8 *vpd_data;
@@ -12124,7 +12133,8 @@ static void bnxt_vpd_read_info(struct bnxt *bp)
if (len + pos > vpd_size)
goto read_sn;
- strlcpy(bp->board_partno, &vpd_data[pos], min(len, BNXT_VPD_FLD_LEN));
+ size = min(len, BNXT_VPD_FLD_LEN - 1);
+ memcpy(bp->board_partno, &vpd_data[pos], size);
read_sn:
pos = pci_vpd_find_info_keyword(vpd_data, i, ro_size,
@@ -12137,7 +12147,8 @@ read_sn:
if (len + pos > vpd_size)
goto exit;
- strlcpy(bp->board_serialno, &vpd_data[pos], min(len, BNXT_VPD_FLD_LEN));
+ size = min(len, BNXT_VPD_FLD_LEN - 1);
+ memcpy(bp->board_serialno, &vpd_data[pos], size);
exit:
kfree(vpd_data);
}

drivers/net/ethernet/broadcom/bnxt/bnxt.h

View file
diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt.h b/drivers/net/ethernet/broadcom/bnxt/bnxt.h
index 5a13eb6..0ef89da 100644
--- a/drivers/net/ethernet/broadcom/bnxt/bnxt.h
+++ b/drivers/net/ethernet/broadcom/bnxt/bnxt.h
@@ -1737,6 +1737,10 @@ struct bnxt {
#define BNXT_STATE_FW_FATAL_COND 6
#define BNXT_STATE_DRV_REGISTERED 7
+#define BNXT_NO_FW_ACCESS(bp) \
+ (test_bit(BNXT_STATE_FW_FATAL_COND, &(bp)->state) || \
+ pci_channel_offline((bp)->pdev))
+
struct bnxt_irq *irq_tbl;
int total_irqs;
u8 mac_addr[ETH_ALEN];

drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c

View file
diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c b/drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c
index d092833..fecdfd8 100644
--- a/drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c
+++ b/drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c
@@ -1322,6 +1322,9 @@ static int bnxt_get_regs_len(struct net_device *dev)
struct bnxt *bp = netdev_priv(dev);
int reg_len;
+ if (!BNXT_PF(bp))

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/cadence/macb_main.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/chelsio/cxgb4/cxgb4_filter.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/chelsio/cxgb4/cxgb4_mps.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/dec/tulip/de2104x.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/freescale/dpaa2/dpmac-cmd.h

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/freescale/enetc/enetc_pf.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/hisilicon/hns/hns_dsaf_misc.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/hisilicon/hns/hns_ethtool.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/huawei/hinic/hinic_ethtool.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/huawei/hinic/hinic_hw_mgmt.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/huawei/hinic/hinic_main.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/huawei/hinic/hinic_rx.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/huawei/hinic/hinic_tx.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/ibm/ibmvnic.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/intel/igc/igc.h

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/intel/igc/igc_ptp.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/lantiq_xrx200.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/marvell/mvneta.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/mellanox/mlx5/core/en.h

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/mellanox/mlx5/core/en/monitor_stats.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/mellanox/mlx5/core/en/port.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/mellanox/mlx5/core/en/tc_ct.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/mellanox/mlx5/core/en/tc_ct.h

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/mellanox/mlx5/core/en/txrx.h

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/mellanox/mlx5/core/en/xdp.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/mellanox/mlx5/core/en/xsk/rx.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/mellanox/mlx5/core/en/xsk/setup.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/mellanox/mlx5/core/en_accel/ktls_rx.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/mellanox/mlx5/core/en_accel/tls_stats.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/mellanox/mlx5/core/en_main.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/mellanox/mlx5/core/en_rep.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/mellanox/mlx5/core/en_rx.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/mellanox/mlx5/core/en_stats.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/mellanox/mlx5/core/en_stats.h

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/mellanox/mlx5/core/en_tc.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/mellanox/mlx5/core/en_txrx.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/mellanox/mlx5/core/fs_core.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/mscc/ocelot.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/mscc/ocelot_net.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/mscc/ocelot_vsc7514.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/netronome/nfp/nfp_net_ethtool.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/qlogic/qed/qed_dev.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/qlogic/qed/qed_l2.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/qlogic/qed/qed_main.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/qlogic/qed/qed_sriov.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/qlogic/qede/qede_filter.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/qlogic/qede/qede_main.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/sfc/ef100.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/ti/cpsw_new.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/geneve.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/hyperv/hyperv_net.h

View file

This diff is incomplete. Download the complete patch.

drivers/net/hyperv/netvsc.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/hyperv/netvsc_drv.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/hyperv/rndis_filter.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ieee802154/adf7242.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ieee802154/ca8210.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ipa/ipa_table.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/phy/phy.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/phy/phy_device.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/usb/rndis_host.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/wan/hdlc_cisco.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/wan/hdlc_fr.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/wan/hdlc_ppp.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/wan/lapbether.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/wireguard/noise.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/wireguard/peerlookup.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/wireless/marvell/mwifiex/fw.h

View file

This diff is incomplete. Download the complete patch.

drivers/net/wireless/marvell/mwifiex/sta_cmdresp.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/wireless/mediatek/mt76/mt7615/mcu.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/wireless/mediatek/mt76/mt7915/init.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/wireless/mediatek/mt76/mt7915/mac.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/wireless/ti/wlcore/cmd.h

View file

This diff is incomplete. Download the complete patch.

drivers/net/wireless/ti/wlcore/main.c

View file

This diff is incomplete. Download the complete patch.

drivers/s390/net/qeth_l2_main.c

View file

This diff is incomplete. Download the complete patch.

drivers/s390/net/qeth_l3_main.c

View file

This diff is incomplete. Download the complete patch.

include/linux/netdev_features.h

View file

This diff is incomplete. Download the complete patch.

include/linux/netdevice.h

View file

This diff is incomplete. Download the complete patch.

include/linux/qed/qed_if.h

View file

This diff is incomplete. Download the complete patch.

include/linux/skbuff.h

View file

This diff is incomplete. Download the complete patch.

include/net/flow.h

View file

This diff is incomplete. Download the complete patch.

include/net/netlink.h

View file

This diff is incomplete. Download the complete patch.

include/net/netns/nftables.h

View file

This diff is incomplete. Download the complete patch.

include/net/sctp/structs.h

View file

This diff is incomplete. Download the complete patch.

include/net/vxlan.h

View file

This diff is incomplete. Download the complete patch.

include/soc/mscc/ocelot.h

View file

This diff is incomplete. Download the complete patch.

include/uapi/linux/ethtool_netlink.h

View file

This diff is incomplete. Download the complete patch.

kernel/bpf/hashtab.c

View file

This diff is incomplete. Download the complete patch.

kernel/bpf/inode.c

View file

This diff is incomplete. Download the complete patch.

lib/test_rhashtable.c

View file

This diff is incomplete. Download the complete patch.

net/batman-adv/bridge_loop_avoidance.c

View file

This diff is incomplete. Download the complete patch.

net/batman-adv/bridge_loop_avoidance.h

View file

This diff is incomplete. Download the complete patch.

net/batman-adv/multicast.c

View file

This diff is incomplete. Download the complete patch.

net/batman-adv/multicast.h

View file

This diff is incomplete. Download the complete patch.

net/batman-adv/routing.c

View file

This diff is incomplete. Download the complete patch.

net/batman-adv/soft-interface.c

View file

This diff is incomplete. Download the complete patch.

net/bridge/br_vlan.c

View file

This diff is incomplete. Download the complete patch.

net/core/dev.c

View file

This diff is incomplete. Download the complete patch.

net/core/dst.c

View file

This diff is incomplete. Download the complete patch.

net/core/fib_rules.c

View file

This diff is incomplete. Download the complete patch.

net/core/filter.c

View file

This diff is incomplete. Download the complete patch.

net/core/net_namespace.c

View file

This diff is incomplete. Download the complete patch.

net/dcb/dcbnl.c

View file

This diff is incomplete. Download the complete patch.

net/dsa/slave.c

View file

This diff is incomplete. Download the complete patch.

net/dsa/tag_ocelot.c

View file

This diff is incomplete. Download the complete patch.

net/ethtool/tunnels.c

View file

This diff is incomplete. Download the complete patch.

net/hsr/hsr_netlink.c

View file

This diff is incomplete. Download the complete patch.

net/ipv4/fib_frontend.c

View file

This diff is incomplete. Download the complete patch.

net/ipv4/inet_diag.c

View file

This diff is incomplete. Download the complete patch.

net/ipv4/ip_output.c

View file

This diff is incomplete. Download the complete patch.

net/ipv4/ip_tunnel_core.c

View file

This diff is incomplete. Download the complete patch.

net/ipv4/route.c

View file

This diff is incomplete. Download the complete patch.

net/ipv6/Kconfig

View file

This diff is incomplete. Download the complete patch.

net/ipv6/ip6_fib.c

View file

This diff is incomplete. Download the complete patch.

net/ipv6/route.c

View file

This diff is incomplete. Download the complete patch.

net/mac80211/airtime.c

View file

This diff is incomplete. Download the complete patch.

net/mac80211/mlme.c

View file

This diff is incomplete. Download the complete patch.

net/mac80211/rx.c

View file

This diff is incomplete. Download the complete patch.

net/mac80211/util.c

View file

This diff is incomplete. Download the complete patch.

net/mac80211/vht.c

View file

This diff is incomplete. Download the complete patch.

net/mac802154/tx.c

View file

This diff is incomplete. Download the complete patch.

net/mptcp/pm_netlink.c

View file

This diff is incomplete. Download the complete patch.

net/mptcp/subflow.c

View file

This diff is incomplete. Download the complete patch.

net/netfilter/nf_conntrack_netlink.c

View file

This diff is incomplete. Download the complete patch.

net/netfilter/nf_conntrack_proto.c

View file

This diff is incomplete. Download the complete patch.

net/netfilter/nf_tables_api.c

View file

This diff is incomplete. Download the complete patch.

net/netfilter/nft_meta.c

View file

This diff is incomplete. Download the complete patch.

net/qrtr/qrtr.c

View file

This diff is incomplete. Download the complete patch.

net/sched/act_ife.c

View file

This diff is incomplete. Download the complete patch.

net/sched/act_tunnel_key.c

View file

This diff is incomplete. Download the complete patch.

net/sched/cls_flower.c

View file

This diff is incomplete. Download the complete patch.

net/sched/sch_generic.c

View file

This diff is incomplete. Download the complete patch.

net/sched/sch_taprio.c

View file

This diff is incomplete. Download the complete patch.

net/sctp/socket.c

View file

This diff is incomplete. Download the complete patch.

net/tipc/group.c

View file

This diff is incomplete. Download the complete patch.

net/tipc/link.c

View file

This diff is incomplete. Download the complete patch.

net/tipc/msg.c

View file

This diff is incomplete. Download the complete patch.

net/tipc/socket.c

View file

This diff is incomplete. Download the complete patch.

net/wireless/Kconfig

View file

This diff is incomplete. Download the complete patch.

net/wireless/util.c

View file

This diff is incomplete. Download the complete patch.

net/xdp/xdp_umem.c

View file

This diff is incomplete. Download the complete patch.

tools/bpf/Makefile

View file

This diff is incomplete. Download the complete patch.

tools/bpf/resolve_btfids/Makefile

View file

This diff is incomplete. Download the complete patch.

tools/lib/bpf/Makefile

View file

This diff is incomplete. Download the complete patch.

tools/lib/bpf/libbpf.c

View file

This diff is incomplete. Download the complete patch.

tools/testing/selftests/bpf/progs/bpf_iter_bpf_hash_map.c

View file

This diff is incomplete. Download the complete patch.

tools/testing/selftests/net/rtnetlink.sh

View file

This diff is incomplete. Download the complete patch.