linux/drivers
dingtianhong 5cc172c6de bonding: remove bond read lock for bond_3ad_state_machine_handler()
The bond slave list may change when the monitor is running, the slave list is no longer
protected by bond->lock, only protected by rtnl lock(), so we have 3 ways to modify it:
1.add bond_master_upper_dev_link() and bond_upper_dev_unlink() in bond->lock, but it is unsafe
to call call_netdevice_notifiers() in write lock.
2.remove unused bond->lock for monitor function, only use the existing rtnl lock().
3.use rcu_read_lock() to protect it, of course, it will transform bond_for_each_slave to
bond_for_each_slave_rcu() and performance is better, but in slow path, it is ignored.
so I remove the bond->lock and move the rtnl lock to protect the whole monitor function.

Signed-off-by: Ding Tianhong <dingtianhong@huawei.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2013-10-27 16:36:29 -04:00
..
accessibility
acpi ACPI / PM: Drop two functions that are not used any more 2013-10-17 15:44:48 +02:00
amba
ata Merge branch 'for-3.12-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata 2013-10-22 08:21:34 +01:00
atm atm: firestream: remove duplicate define 2013-10-21 18:46:46 -04:00
auxdisplay
base driver core: Release device_hotplug_lock when store_mem_state returns EINVAL 2013-10-16 18:42:41 -07:00
bcma Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next into for-davem 2013-10-17 14:02:07 -04:00
block cciss: fix info leak in cciss_ioctl32_passthru() 2013-09-24 17:00:26 -07:00
bluetooth Bluetooth: btmrvl: add calibration data download support 2013-10-02 00:36:16 -07:00
bus bus: mvebu-mbus: Fix optional pcie-mem/io-aperture properties 2013-10-01 17:04:17 +00:00
cdrom
char A small fix for Xen on x86_32 and a build fix for xen-tpmfront on arm64. 2013-10-15 16:22:11 -07:00
clk
clocksource clocksource: em_sti: Set cpu_possible_mask to fix SMP broadcast 2013-09-26 02:31:04 +02:00
connector connector: use 'size' everywhere in cn_netlink_send() 2013-10-02 16:03:50 -04:00
cpufreq cpufreq: s3c64xx: Rename index to driver_data 2013-10-16 23:53:38 +02:00
cpuidle
crypto
dca
devfreq
dio
dma dma: edma.c: remove edma_desc leakage 2013-10-11 07:31:47 +05:30
edac
eisa
extcon
firewire
firmware
fmc
gpio gpiolib: let gpiod_request() return -EPROBE_DEFER 2013-10-11 16:31:54 +02:00
gpu Merge branch 'drm-fixes-3.12' of git://people.freedesktop.org/~agd5f/linux into drm-fixes 2013-10-22 07:35:17 +01:00
hid HID: wiimote: add LEGO-wiimote VID 2013-10-21 13:39:37 +02:00
hsi
hv Revert "Drivers: hv: vmbus: Fix a bug in channel rescind code" 2013-10-17 09:30:10 -07:00
hwmon hwmon: (applesmc) Always read until end of data 2013-10-09 09:48:55 -07:00
hwspinlock
i2c i2c: i2c-mux-pinctrl: use deferred probe when adapter not found 2013-10-10 10:22:35 +02:00
ide
idle
iio iio:buffer: Free active scan mask in iio_disable_all_buffers() 2013-10-15 19:26:43 +01:00
infiniband Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2013-10-23 16:49:34 -04:00
input
iommu x86, build, pci: Fix PCI_MSI build on !SMP 2013-10-04 10:43:34 -07:00
ipack
irqchip
isdn isdn: remove deprecated IRQF_DISABLED 2013-10-17 15:13:20 -04:00
leds
lguest
macintosh
mailbox
md bcache: Fixed incorrect order of arguments to bio_alloc_bioset() 2013-10-23 07:55:36 +01:00
media [media] saa7134: Fix crash when device is closed before streamoff 2013-10-14 06:37:00 -03:00
memory
memstick
message
mfd
misc mei: cancel stall timers in mei_reset 2013-09-26 13:56:53 -07:00
mmc
mtd mtd: m25p80: Fix 4 byte addressing mode for Micron devices. 2013-09-27 05:56:22 -05:00
net bonding: remove bond read lock for bond_3ad_state_machine_handler() 2013-10-27 16:36:29 -04:00
nfc
ntb
nubus
of Revert "drivers: of: add initialization code for dma reserved memory" 2013-10-15 09:26:07 +01:00
oprofile
parisc
parport
pci ACPI / hotplug / PCI: Drop WARN_ON() from acpiphp_enumerate_slots() 2013-10-12 01:49:48 +02:00
pcmcia
pinctrl pinctrl: palmas: do not abort pin configuration for BIAS_DEFAULT 2013-09-27 16:22:43 +02:00
platform platform/x86: fix asus-wmi build error 2013-10-23 07:57:57 +01:00
pnp
power
pps
ps3
ptp
pwm
rapidio
regulator Merge remote-tracking branch 'regulator/fix/wm8350' into regulator-linus 2013-09-30 12:04:33 +01:00
remoteproc
reset
rpmsg
rtc
s390 s390/time: correct use of store clock fast 2013-10-22 09:16:40 +02:00
sbus
scsi
sfi
sh
sn
spi Merge remote-tracking branch 'spi/fix/s3c64xx' into spi-linus 2013-10-07 14:51:59 +01:00
ssb
staging Merge branch 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media 2013-10-23 07:52:36 +01:00
target iscsi-target; Allow an extra tag_num / 2 number of percpu_ida tags 2013-10-03 14:22:45 -07:00
tc
thermal Merge branch 'x86_pkg_temp' of .git into for-rc 2013-10-21 11:26:45 +08:00
tty serial: vt8500: add missing braces 2013-10-16 13:22:16 -07:00
uio
usb usb: misc: usb3503: Fix compile error due to incorrect regmap depedency 2013-10-16 13:52:16 -07:00
uwb
vfio VFIO: vfio_iommu_type1: fix bug caused by break in nested loop 2013-10-11 10:40:46 -06:00
vhost vhost/scsi: Use GFP_ATOMIC with percpu_ida_alloc for obtaining tag 2013-10-01 21:27:31 -07:00
video video: mxsfb: Add missing break 2013-09-26 15:33:23 +03:00
virt
virtio
vlynq
vme
w1 w1 - call request_module with w1 master mutex unlocked 2013-10-07 00:12:14 -07:00
watchdog watchdog: sunxi: Fix section mismatch 2013-10-13 20:02:03 +02:00
xen Bug-fixes: 2013-09-25 15:50:53 -07:00
zorro
Kconfig
Makefile