linux/drivers/net
dingtianhong bca44a7341 bonding: protect port for bond_3ad_adapter_duplex_changed()
Jay Vosburgh said that the bond_3ad_adapter_duplex_changed is
called with RTNL only, and the function will modify the port's
information with no further locking, it will not mutex against
bond state machine and incoming LACPDU which do not hold RTNL,
So I add __get_state_machine_lock to protect the port.

But it is not a critical bug, it exist since day one, and till
now it has never been hit and reported, because changes to
speed is very rare, and will not occur critical problem.

The comments in the function is very old, cleanup it.

Suggested-by: Jay Vosburgh <fubar@us.ibm.com>
Signed-off-by: Ding Tianhong <dingtianhong@huawei.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2013-12-18 16:52:26 -05:00
..
appletalk
arcnet
bonding bonding: protect port for bond_3ad_adapter_duplex_changed() 2013-12-18 16:52:26 -05:00
caif virtio: use size-based config accessors. 2013-10-17 10:55:37 +10:30
can can: peak_usb: fix mem leak in pcan_usb_pro_init() 2013-12-17 11:19:33 +01:00
cris
dsa
ethernet qlcnic: Dump mailbox registers when mailbox command times out. 2013-12-17 16:24:50 -05:00
fddi net:drivers/net: Miscellaneous conversions to ETH_ALEN 2013-10-02 17:04:45 -04:00
hamradio Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2013-10-23 16:49:34 -04:00
hippi
hyperv netvsc: don't flush peers notifying work during setting mtu 2013-12-17 14:45:42 -05:00
ieee802154 tree-wide: use reinit_completion instead of INIT_COMPLETION 2013-11-15 09:32:21 +09:00
irda Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2013-11-15 16:47:22 -08:00
phy micrel: add support for KSZ8041RNLI 2013-12-11 13:54:13 -05:00
plip net:drivers/net: Miscellaneous conversions to ETH_ALEN 2013-10-02 17:04:45 -04:00
ppp net: rework recvmsg handler msg_name and msg_namelen logic 2013-11-20 21:52:30 -05:00
slip slip/slcan: added locking in wakeup function 2013-09-20 15:38:26 -04:00
team team: fix master carrier set when user linkup is enabled 2013-11-29 16:34:33 -05:00
usb r8152: fix incorrect type in assignment 2013-11-20 15:09:42 -05:00
vmxnet3 vmxnet3: Remove extern from function prototypes 2013-09-24 16:37:10 -07:00
wan Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2013-11-04 13:48:30 -05:00
wimax wimax: Remove extern from function prototypes 2013-09-24 16:46:22 -07:00
wireless ath9k: fix duration calculation for non-aggregated packets 2013-12-09 14:59:13 -05:00
xen-netback xen-netback: fix fragments error handling in checksum_setup_ip() 2013-12-17 16:18:18 -05:00
dummy.c net: Explicitly initialize u64_stats_sync structures for lockdep 2013-11-06 12:40:25 +01:00
eql.c
ifb.c net: Explicitly initialize u64_stats_sync structures for lockdep 2013-11-06 12:40:25 +01:00
Kconfig
LICENSE.SRC
loopback.c net: Explicitly initialize u64_stats_sync structures for lockdep 2013-11-06 12:40:25 +01:00
macvlan.c Merge branch 'core-locking-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2013-11-14 16:30:30 +09:00
macvtap.c macvtap: signal truncated packets 2013-12-11 15:23:06 -05:00
Makefile
mdio.c
mii.c
netconsole.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2013-11-04 13:48:30 -05:00
nlmon.c net: Explicitly initialize u64_stats_sync structures for lockdep 2013-11-06 12:40:25 +01:00
ntb_netdev.c
rionet.c
sb1000.c
Space.c net/ethernet: Drop H8/300 Ethernet driver 2013-09-16 18:20:24 -07:00
sungem_phy.c
tun.c tun: unbreak truncated packet signalling 2013-12-11 15:23:06 -05:00
veth.c Merge branch 'core-locking-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2013-11-14 16:30:30 +09:00
virtio_net.c virtio-net: free bufs correctly on invalid packet length 2013-12-06 16:31:43 -05:00
vxlan.c vxlan: release rt when found circular route 2013-12-10 22:01:54 -05:00
xen-netfront.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2013-11-19 15:50:47 -08:00