Skip to content

Commit d5a7fc5

Browse files
committed
Merge tag 'net-6.10-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net
Pull networking fixes from Jakub Kicinski: "Including fixes from wireless, bpf and netfilter. Happy summer solstice! The line count is a bit inflated by a selftest and update to a driver's FW interface header, in reality this is slightly below average for us. We are expecting one driver fix from Intel, but there are no big known issues. Current release - regressions: - ipv6: bring NLM_DONE out to a separate recv() again Current release - new code bugs: - wifi: cfg80211: wext: set ssids=NULL for passive scans via old wext API Previous releases - regressions: - wifi: mac80211: fix monitor channel setting with chanctx emulation (probably most awaited of the fixes in this PR, tracked by Thorsten) - usb: ax88179_178a: bring back reset on init, if PHY is disconnected - bpf: fix UML x86_64 compile failure with BPF - bpf: avoid splat in pskb_pull_reason(), sanity check added can be hit with malicious BPF - eth: mvpp2: use slab_build_skb() for packets in slab, driver was missed during API refactoring - wifi: iwlwifi: add missing unlock of mvm mutex Previous releases - always broken: - ipv6: add a number of missing null-checks for in6_dev_get(), in case IPv6 disabling races with the datapath - bpf: fix reg_set_min_max corruption of fake_reg - sched: act_ct: add netns as part of the key of tcf_ct_flow_table" * tag 'net-6.10-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net: (63 commits) net: usb: rtl8150 fix unintiatilzed variables in rtl8150_get_link_ksettings selftests: virtio_net: add forgotten config options bnxt_en: Restore PTP tx_avail count in case of skb_pad() error bnxt_en: Set TSO max segs on devices with limits bnxt_en: Update firmware interface to 1.10.3.44 net: stmmac: Assign configured channel value to EXTTS event net: do not leave a dangling sk pointer, when socket creation fails net/tcp_ao: Don't leak ao_info on error-path ice: Fix VSI list rule with ICE_SW_LKUP_LAST type ipv6: bring NLM_DONE out to a separate recv() again selftests: add selftest for the SRv6 End.DX6 behavior with netfilter selftests: add selftest for the SRv6 End.DX4 behavior with netfilter netfilter: move the sysctl nf_hooks_lwtunnel into the netfilter core seg6: fix parameter passing when calling NF_HOOK() in End.DX4 and End.DX6 behaviors netfilter: ipset: Fix suspicious rcu_dereference_protected() selftests: openvswitch: Set value to nla flags. octeontx2-pf: Fix linking objects into multiple modules octeontx2-pf: Add error handling to VLAN unoffload handling virtio_net: fixing XDP for fully checksummed packets handling virtio_net: checksum offloading handling fix ...
2 parents 042742a + fba3839 commit d5a7fc5

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

70 files changed

+1558
-353
lines changed

.mailmap

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -608,6 +608,7 @@ Simon Kelley <[email protected]>
608608
Sricharan Ramabadhran <[email protected]> <[email protected]>
609609
610610
611+
Stanislav Fomichev <[email protected]> <[email protected]>
611612
612613
Stéphane Witzmann <[email protected]>
613614

MAINTAINERS

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3980,7 +3980,7 @@ R: Song Liu <[email protected]>
39803980
R: Yonghong Song <[email protected]>
39813981
R: John Fastabend <[email protected]>
39823982
R: KP Singh <[email protected]>
3983-
R: Stanislav Fomichev <sdf@google.com>
3983+
R: Stanislav Fomichev <sdf@fomichev.me>
39843984
R: Hao Luo <[email protected]>
39853985
R: Jiri Olsa <[email protected]>
39863986

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

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -732,9 +732,6 @@ static netdev_tx_t bnxt_start_xmit(struct sk_buff *skb, struct net_device *dev)
732732
return NETDEV_TX_OK;
733733

734734
tx_dma_error:
735-
if (BNXT_TX_PTP_IS_SET(lflags))
736-
atomic_inc(&bp->ptp_cfg->tx_avail);
737-
738735
last_frag = i;
739736

740737
/* start back at beginning and unmap skb */
@@ -756,6 +753,8 @@ static netdev_tx_t bnxt_start_xmit(struct sk_buff *skb, struct net_device *dev)
756753
tx_free:
757754
dev_kfree_skb_any(skb);
758755
tx_kick_pending:
756+
if (BNXT_TX_PTP_IS_SET(lflags))
757+
atomic_inc(&bp->ptp_cfg->tx_avail);
759758
if (txr->kick_pending)
760759
bnxt_txr_db_kick(bp, txr, txr->tx_prod);
761760
txr->tx_buf_ring[txr->tx_prod].skb = NULL;
@@ -8996,6 +8995,7 @@ static int __bnxt_hwrm_func_qcaps(struct bnxt *bp)
89968995
memcpy(vf->mac_addr, resp->mac_address, ETH_ALEN);
89978996
#endif
89988997
}
8998+
bp->tso_max_segs = le16_to_cpu(resp->max_tso_segs);
89998999

90009000
hwrm_func_qcaps_exit:
90019001
hwrm_req_drop(bp, req);
@@ -15363,6 +15363,8 @@ static int bnxt_init_one(struct pci_dev *pdev, const struct pci_device_id *ent)
1536315363
dev->priv_flags |= IFF_UNICAST_FLT;
1536415364

1536515365
netif_set_tso_max_size(dev, GSO_MAX_SIZE);
15366+
if (bp->tso_max_segs)
15367+
netif_set_tso_max_segs(dev, bp->tso_max_segs);
1536615368

1536715369
dev->xdp_features = NETDEV_XDP_ACT_BASIC | NETDEV_XDP_ACT_REDIRECT |
1536815370
NETDEV_XDP_ACT_RX_SG;

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

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2318,6 +2318,7 @@ struct bnxt {
23182318
u8 rss_hash_key_updated:1;
23192319

23202320
u16 max_mtu;
2321+
u16 tso_max_segs;
23212322
u8 max_tc;
23222323
u8 max_lltc; /* lossless TCs */
23232324
struct bnxt_queue_info q_info[BNXT_MAX_QUEUE];

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

Lines changed: 178 additions & 133 deletions
Large diffs are not rendered by default.

drivers/net/ethernet/intel/ice/ice_ddp.c

Lines changed: 21 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1339,15 +1339,34 @@ ice_dwnld_cfg_bufs_no_lock(struct ice_hw *hw, struct ice_buf *bufs, u32 start,
13391339

13401340
for (i = 0; i < count; i++) {
13411341
bool last = false;
1342+
int try_cnt = 0;
13421343
int status;
13431344

13441345
bh = (struct ice_buf_hdr *)(bufs + start + i);
13451346

13461347
if (indicate_last)
13471348
last = ice_is_last_download_buffer(bh, i, count);
13481349

1349-
status = ice_aq_download_pkg(hw, bh, ICE_PKG_BUF_SIZE, last,
1350-
&offset, &info, NULL);
1350+
while (1) {
1351+
status = ice_aq_download_pkg(hw, bh, ICE_PKG_BUF_SIZE,
1352+
last, &offset, &info,
1353+
NULL);
1354+
if (hw->adminq.sq_last_status != ICE_AQ_RC_ENOSEC &&
1355+
hw->adminq.sq_last_status != ICE_AQ_RC_EBADSIG)
1356+
break;
1357+
1358+
try_cnt++;
1359+
1360+
if (try_cnt == 5)
1361+
break;
1362+
1363+
msleep(20);
1364+
}
1365+
1366+
if (try_cnt)
1367+
dev_dbg(ice_hw_to_dev(hw),
1368+
"ice_aq_download_pkg number of retries: %d\n",
1369+
try_cnt);
13511370

13521371
/* Save AQ status from download package */
13531372
if (status) {

drivers/net/ethernet/intel/ice/ice_main.c

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -805,6 +805,9 @@ void ice_print_link_msg(struct ice_vsi *vsi, bool isup)
805805
}
806806

807807
switch (vsi->port_info->phy.link_info.link_speed) {
808+
case ICE_AQ_LINK_SPEED_200GB:
809+
speed = "200 G";
810+
break;
808811
case ICE_AQ_LINK_SPEED_100GB:
809812
speed = "100 G";
810813
break;
@@ -5564,7 +5567,7 @@ static int ice_suspend(struct device *dev)
55645567
*/
55655568
disabled = ice_service_task_stop(pf);
55665569

5567-
ice_unplug_aux_dev(pf);
5570+
ice_deinit_rdma(pf);
55685571

55695572
/* Already suspended?, then there is nothing to do */
55705573
if (test_and_set_bit(ICE_SUSPENDED, pf->state)) {
@@ -5644,6 +5647,11 @@ static int ice_resume(struct device *dev)
56445647
if (ret)
56455648
dev_err(dev, "Cannot restore interrupt scheme: %d\n", ret);
56465649

5650+
ret = ice_init_rdma(pf);
5651+
if (ret)
5652+
dev_err(dev, "Reinitialize RDMA during resume failed: %d\n",
5653+
ret);
5654+
56475655
clear_bit(ICE_DOWN, pf->state);
56485656
/* Now perform PF reset and rebuild */
56495657
reset_type = ICE_RESET_PFR;

drivers/net/ethernet/intel/ice/ice_switch.c

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1899,7 +1899,8 @@ ice_aq_alloc_free_vsi_list(struct ice_hw *hw, u16 *vsi_list_id,
18991899
lkup_type == ICE_SW_LKUP_ETHERTYPE_MAC ||
19001900
lkup_type == ICE_SW_LKUP_PROMISC ||
19011901
lkup_type == ICE_SW_LKUP_PROMISC_VLAN ||
1902-
lkup_type == ICE_SW_LKUP_DFLT) {
1902+
lkup_type == ICE_SW_LKUP_DFLT ||
1903+
lkup_type == ICE_SW_LKUP_LAST) {
19031904
sw_buf->res_type = cpu_to_le16(ICE_AQC_RES_TYPE_VSI_LIST_REP);
19041905
} else if (lkup_type == ICE_SW_LKUP_VLAN) {
19051906
if (opc == ice_aqc_opc_alloc_res)
@@ -2922,7 +2923,8 @@ ice_update_vsi_list_rule(struct ice_hw *hw, u16 *vsi_handle_arr, u16 num_vsi,
29222923
lkup_type == ICE_SW_LKUP_ETHERTYPE_MAC ||
29232924
lkup_type == ICE_SW_LKUP_PROMISC ||
29242925
lkup_type == ICE_SW_LKUP_PROMISC_VLAN ||
2925-
lkup_type == ICE_SW_LKUP_DFLT)
2926+
lkup_type == ICE_SW_LKUP_DFLT ||
2927+
lkup_type == ICE_SW_LKUP_LAST)
29262928
rule_type = remove ? ICE_AQC_SW_RULES_T_VSI_LIST_CLEAR :
29272929
ICE_AQC_SW_RULES_T_VSI_LIST_SET;
29282930
else if (lkup_type == ICE_SW_LKUP_VLAN)

drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4014,7 +4014,10 @@ static int mvpp2_rx(struct mvpp2_port *port, struct napi_struct *napi,
40144014
}
40154015
}
40164016

4017-
skb = build_skb(data, frag_size);
4017+
if (frag_size)
4018+
skb = build_skb(data, frag_size);
4019+
else
4020+
skb = slab_build_skb(data);
40184021
if (!skb) {
40194022
netdev_warn(port->dev, "skb build failed\n");
40204023
goto err_drop_frame;

drivers/net/ethernet/marvell/octeontx2/nic/Makefile

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,9 @@ obj-$(CONFIG_OCTEONTX2_VF) += rvu_nicvf.o otx2_ptp.o
99
rvu_nicpf-y := otx2_pf.o otx2_common.o otx2_txrx.o otx2_ethtool.o \
1010
otx2_flows.o otx2_tc.o cn10k.o otx2_dmac_flt.o \
1111
otx2_devlink.o qos_sq.o qos.o
12-
rvu_nicvf-y := otx2_vf.o otx2_devlink.o
12+
rvu_nicvf-y := otx2_vf.o
1313

1414
rvu_nicpf-$(CONFIG_DCB) += otx2_dcbnl.o
15-
rvu_nicvf-$(CONFIG_DCB) += otx2_dcbnl.o
1615
rvu_nicpf-$(CONFIG_MACSEC) += cn10k_macsec.o
1716

1817
ccflags-y += -I$(srctree)/drivers/net/ethernet/marvell/octeontx2/af

0 commit comments

Comments
 (0)