Skip to content

Commit b5cc383

Browse files
committed
Merge tag 'net-6.5-rc8' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net
Pull networking fixes from Paolo Abeni: "Including fixes from wifi, can and netfilter. Fixes to fixes: - nf_tables: - GC transaction race with abort path - defer gc run if previous batch is still pending Previous releases - regressions: - ipv4: fix data-races around inet->inet_id - phy: fix deadlocking in phy_error() invocation - mdio: fix C45 read/write protocol - ipvlan: fix a reference count leak warning in ipvlan_ns_exit() - ice: fix NULL pointer deref during VF reset - i40e: fix potential NULL pointer dereferencing of pf->vf in i40e_sync_vsi_filters() - tg3: use slab_build_skb() when needed - mtk_eth_soc: fix NULL pointer on hw reset Previous releases - always broken: - core: validate veth and vxcan peer ifindexes - sched: fix a qdisc modification with ambiguous command request - devlink: add missing unregister linecard notification - wifi: mac80211: limit reorder_buf_filtered to avoid UBSAN warning - batman: - do not get eth header before batadv_check_management_packet - fix batadv_v_ogm_aggr_send memory leak - bonding: fix macvlan over alb bond support - mlxsw: set time stamp fields also when its type is MIRROR_UTC" * tag 'net-6.5-rc8' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net: (54 commits) selftests: bonding: add macvlan over bond testing selftest: bond: add new topo bond_topo_2d1c.sh bonding: fix macvlan over alb bond support rtnetlink: Reject negative ifindexes in RTM_NEWLINK netfilter: nf_tables: defer gc run if previous batch is still pending netfilter: nf_tables: fix out of memory error handling netfilter: nf_tables: use correct lock to protect gc_list netfilter: nf_tables: GC transaction race with abort path netfilter: nf_tables: flush pending destroy work before netlink notifier netfilter: nf_tables: validate all pending tables ibmveth: Use dcbf rather than dcbfl i40e: fix potential NULL pointer dereferencing of pf->vf i40e_sync_vsi_filters() net/sched: fix a qdisc modification with ambiguous command request igc: Fix the typo in the PTM Control macro batman-adv: Hold rtnl lock during MTU update via netlink igb: Avoid starting unnecessary workqueues can: raw: add missing refcount for memory leak fix can: isotp: fix support for transmission of SF without flow control bnx2x: new flag for track HW resource allocation sfc: allocate a big enough SKB for loopback selftest packet ...
2 parents 93f5de5 + 8938fc0 commit b5cc383

Some content is hidden

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

79 files changed

+664
-356
lines changed

Documentation/ABI/testing/sysfs-class-led-trigger-netdev

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ Description:
1313
Specifies the duration of the LED blink in milliseconds.
1414
Defaults to 50 ms.
1515

16-
With hw_control ON, the interval value MUST be set to the
16+
When offloaded is true, the interval value MUST be set to the
1717
default value and cannot be changed.
1818
Trying to set any value in this specific mode will return
1919
an EINVAL error.
@@ -44,8 +44,8 @@ Description:
4444
If set to 1, the LED will blink for the milliseconds specified
4545
in interval to signal transmission.
4646

47-
With hw_control ON, the blink interval is controlled by hardware
48-
and won't reflect the value set in interval.
47+
When offloaded is true, the blink interval is controlled by
48+
hardware and won't reflect the value set in interval.
4949

5050
What: /sys/class/leds/<led>/rx
5151
Date: Dec 2017
@@ -59,21 +59,21 @@ Description:
5959
If set to 1, the LED will blink for the milliseconds specified
6060
in interval to signal reception.
6161

62-
With hw_control ON, the blink interval is controlled by hardware
63-
and won't reflect the value set in interval.
62+
When offloaded is true, the blink interval is controlled by
63+
hardware and won't reflect the value set in interval.
6464

65-
What: /sys/class/leds/<led>/hw_control
65+
What: /sys/class/leds/<led>/offloaded
6666
Date: Jun 2023
6767
KernelVersion: 6.5
6868
Contact: linux-leds@vger.kernel.org
6969
Description:
70-
Communicate whether the LED trigger modes are driven by hardware
71-
or software fallback is used.
70+
Communicate whether the LED trigger modes are offloaded to
71+
hardware or whether software fallback is used.
7272

7373
If 0, the LED is using software fallback to blink.
7474

75-
If 1, the LED is using hardware control to blink and signal the
76-
requested modes.
75+
If 1, the LED blinking in requested mode is offloaded to
76+
hardware.
7777

7878
What: /sys/class/leds/<led>/link_10
7979
Date: Jun 2023

MAINTAINERS

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14803,6 +14803,16 @@ F: net/netfilter/xt_CONNSECMARK.c
1480314803
F: net/netfilter/xt_SECMARK.c
1480414804
F: net/netlabel/
1480514805

14806+
NETWORKING [MACSEC]
14807+
M: Sabrina Dubroca <sd@queasysnail.net>
14808+
L: netdev@vger.kernel.org
14809+
S: Maintained
14810+
F: drivers/net/macsec.c
14811+
F: include/net/macsec.h
14812+
F: include/uapi/linux/if_macsec.h
14813+
K: macsec
14814+
K: \bmdo_
14815+
1480614816
NETWORKING [MPTCP]
1480714817
M: Matthieu Baerts <matthieu.baerts@tessares.net>
1480814818
M: Mat Martineau <martineau@kernel.org>

drivers/leds/trigger/ledtrig-netdev.c

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -406,15 +406,15 @@ static ssize_t interval_store(struct device *dev,
406406

407407
static DEVICE_ATTR_RW(interval);
408408

409-
static ssize_t hw_control_show(struct device *dev,
410-
struct device_attribute *attr, char *buf)
409+
static ssize_t offloaded_show(struct device *dev,
410+
struct device_attribute *attr, char *buf)
411411
{
412412
struct led_netdev_data *trigger_data = led_trigger_get_drvdata(dev);
413413

414414
return sprintf(buf, "%d\n", trigger_data->hw_control);
415415
}
416416

417-
static DEVICE_ATTR_RO(hw_control);
417+
static DEVICE_ATTR_RO(offloaded);
418418

419419
static struct attribute *netdev_trig_attrs[] = {
420420
&dev_attr_device_name.attr,
@@ -427,7 +427,7 @@ static struct attribute *netdev_trig_attrs[] = {
427427
&dev_attr_rx.attr,
428428
&dev_attr_tx.attr,
429429
&dev_attr_interval.attr,
430-
&dev_attr_hw_control.attr,
430+
&dev_attr_offloaded.attr,
431431
NULL
432432
};
433433
ATTRIBUTE_GROUPS(netdev_trig);

drivers/net/bonding/bond_alb.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -660,10 +660,10 @@ static struct slave *rlb_arp_xmit(struct sk_buff *skb, struct bonding *bond)
660660
return NULL;
661661
arp = (struct arp_pkt *)skb_network_header(skb);
662662

663-
/* Don't modify or load balance ARPs that do not originate locally
664-
* (e.g.,arrive via a bridge).
663+
/* Don't modify or load balance ARPs that do not originate
664+
* from the bond itself or a VLAN directly above the bond.
665665
*/
666-
if (!bond_slave_has_mac_rx(bond, arp->mac_src))
666+
if (!bond_slave_has_mac_rcu(bond, arp->mac_src))
667667
return NULL;
668668

669669
dev = ip_dev_find(dev_net(bond->dev), arp->ip_src);

drivers/net/can/vxcan.c

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -192,12 +192,7 @@ static int vxcan_newlink(struct net *net, struct net_device *dev,
192192

193193
nla_peer = data[VXCAN_INFO_PEER];
194194
ifmp = nla_data(nla_peer);
195-
err = rtnl_nla_parse_ifla(peer_tb,
196-
nla_data(nla_peer) +
197-
sizeof(struct ifinfomsg),
198-
nla_len(nla_peer) -
199-
sizeof(struct ifinfomsg),
200-
NULL);
195+
err = rtnl_nla_parse_ifinfomsg(peer_tb, nla_peer, extack);
201196
if (err < 0)
202197
return err;
203198

drivers/net/dsa/mt7530.c

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1006,6 +1006,10 @@ mt753x_trap_frames(struct mt7530_priv *priv)
10061006
mt7530_rmw(priv, MT753X_BPC, MT753X_BPDU_PORT_FW_MASK,
10071007
MT753X_BPDU_CPU_ONLY);
10081008

1009+
/* Trap 802.1X PAE frames to the CPU port(s) */
1010+
mt7530_rmw(priv, MT753X_BPC, MT753X_PAE_PORT_FW_MASK,
1011+
MT753X_PAE_PORT_FW(MT753X_BPDU_CPU_ONLY));
1012+
10091013
/* Trap LLDP frames with :0E MAC DA to the CPU port(s) */
10101014
mt7530_rmw(priv, MT753X_RGAC2, MT753X_R0E_PORT_FW_MASK,
10111015
MT753X_R0E_PORT_FW(MT753X_BPDU_CPU_ONLY));

drivers/net/dsa/mt7530.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,8 @@ enum mt753x_id {
6666
/* Registers for BPDU and PAE frame control*/
6767
#define MT753X_BPC 0x24
6868
#define MT753X_BPDU_PORT_FW_MASK GENMASK(2, 0)
69+
#define MT753X_PAE_PORT_FW_MASK GENMASK(18, 16)
70+
#define MT753X_PAE_PORT_FW(x) FIELD_PREP(MT753X_PAE_PORT_FW_MASK, x)
6971

7072
/* Register for :03 and :0E MAC DA frame control */
7173
#define MT753X_RGAC2 0x2c

drivers/net/dsa/ocelot/felix_vsc9959.c

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1069,6 +1069,9 @@ static u64 vsc9959_tas_remaining_gate_len_ps(u64 gate_len_ns)
10691069
if (gate_len_ns == U64_MAX)
10701070
return U64_MAX;
10711071

1072+
if (gate_len_ns < VSC9959_TAS_MIN_GATE_LEN_NS)
1073+
return 0;
1074+
10721075
return (gate_len_ns - VSC9959_TAS_MIN_GATE_LEN_NS) * PSEC_PER_NSEC;
10731076
}
10741077

drivers/net/ethernet/broadcom/bgmac.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1448,7 +1448,7 @@ int bgmac_phy_connect_direct(struct bgmac *bgmac)
14481448
int err;
14491449

14501450
phy_dev = fixed_phy_register(PHY_POLL, &fphy_status, NULL);
1451-
if (!phy_dev || IS_ERR(phy_dev)) {
1451+
if (IS_ERR(phy_dev)) {
14521452
dev_err(bgmac->dev, "Failed to register fixed PHY device\n");
14531453
return -ENODEV;
14541454
}

drivers/net/ethernet/broadcom/bnx2x/bnx2x.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1508,6 +1508,8 @@ struct bnx2x {
15081508
bool cnic_loaded;
15091509
struct cnic_eth_dev *(*cnic_probe)(struct net_device *);
15101510

1511+
bool nic_stopped;
1512+
15111513
/* Flag that indicates that we can start looking for FCoE L2 queue
15121514
* completions in the default status block.
15131515
*/

0 commit comments

Comments
 (0)