linux-stable/drivers/net
Doug Berger 74022f08e0 net: bcmgenet: synchronize UMAC_CMD access
commit 0d5e2a8223 upstream.

The UMAC_CMD register is written from different execution
contexts and has insufficient synchronization protections to
prevent possible corruption. Of particular concern are the
acceses from the phy_device delayed work context used by the
adjust_link call and the BH context that may be used by the
ndo_set_rx_mode call.

A spinlock is added to the driver to protect contended register
accesses (i.e. reg_lock) and it is used to synchronize accesses
to UMAC_CMD.

Fixes: 1c1008c793 ("net: bcmgenet: add main driver file")
Cc: stable@vger.kernel.org
Signed-off-by: Doug Berger <opendmb@gmail.com>
Acked-by: Florian Fainelli <florian.fainelli@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2024-05-17 12:15:04 +02:00
..
arcnet
bonding
caif
can
dsa net: dsa: mv88e6xxx: add phylink_get_caps for the mv88e6320/21 family 2024-05-17 12:14:56 +02:00
ethernet net: bcmgenet: synchronize UMAC_CMD access 2024-05-17 12:15:04 +02:00
fddi
fjes
hamradio
hippi
hyperv hv_netvsc: Don't free decrypted memory 2024-05-17 12:14:47 +02:00
ieee802154
ipa
ipvlan
mctp
mdio
netdevsim
pcs net: pcs: xpcs: Return EINVAL in the internal methods 2024-04-13 13:10:00 +02:00
phy net: phy: dp83869: Fix MII mode failure 2024-05-02 16:35:21 +02:00
plip
ppp
pse-pd
slip
team
thunderbolt
usb net:usb:qmi_wwan: support Rolling modules 2024-05-17 12:14:50 +02:00
vmxnet3
vxlan vxlan: Pull inner IP header in vxlan_rcv(). 2024-05-17 12:14:33 +02:00
wan
wireguard
wireless wifi: iwlwifi: mvm: guard against invalid STA ID on removal 2024-05-17 12:14:38 +02:00
wwan
xen-netback
amt.c
bareudp.c
dummy.c net: add netdev_lockdep_set_classes() to virtual drivers 2024-04-13 13:09:59 +02:00
eql.c
geneve.c geneve: fix header validation in geneve[6]_xmit_skb 2024-04-17 11:23:29 +02:00
gtp.c net: gtp: Fix Use-After-Free in gtp_dellink 2024-05-02 16:35:17 +02:00
ifb.c
Kconfig
LICENSE.SRC
loopback.c net: add netdev_lockdep_set_classes() to virtual drivers 2024-04-13 13:09:59 +02:00
macsec.c macsec: Detect if Rx skb is macsec-related for offloading devices that update md_dst 2024-05-02 16:35:31 +02:00
macvlan.c
macvtap.c
Makefile
mdio.c
mhi_net.c
mii.c
net_failover.c
netconsole.c
netkit.c
nlmon.c
ntb_netdev.c
rionet.c
sb1000.c
Space.c
sungem_phy.c
tap.c
tun.c tun: limit printing rate when illegal packet received by tun dev 2024-04-27 17:12:52 +02:00
veth.c net: add netdev_lockdep_set_classes() to virtual drivers 2024-04-13 13:09:59 +02:00
virtio_net.c virtio_net: Do not send RSS key if it is not supported 2024-04-17 11:23:24 +02:00
vrf.c
vsockmon.c
xen-netfront.c