Revision 963ad94853000ab100f5ff19eea80095660d41b4 authored by Nikolay Aleksandrov on 22 July 2015, 11:03:40 UTC, committed by David S. Miller on 26 July 2015, 23:27:22 UTC
Since slave_changelink support was added there have been a few race
conditions when using br_setport() since some of the port functions it
uses require the bridge lock. It is very easy to trigger a lockup due to
some internal spin_lock() usage without bh disabled, also it's possible to
get the bridge into an inconsistent state.

Signed-off-by: Nikolay Aleksandrov <nikolay@cumulusnetworks.com>
Fixes: 3ac636b8591c ("bridge: implement rtnl_link_ops->slave_changelink")
Reviewed-by: Jiri Pirko <jiri@resnulli.us>
Signed-off-by: David S. Miller <davem@davemloft.net>
1 parent 4851643
History
File Mode Size
Kconfig -rw-r--r-- 1.0 KB
Makefile -rw-r--r-- 305 bytes
budget.c -rw-r--r-- 23.8 KB
commit.c -rw-r--r-- 20.5 KB
compress.c -rw-r--r-- 6.7 KB
debug.c -rw-r--r-- 83.5 KB
debug.h -rw-r--r-- 12.4 KB
dir.c -rw-r--r-- 32.0 KB
file.c -rw-r--r-- 44.9 KB
find.c -rw-r--r-- 30.1 KB
gc.c -rw-r--r-- 27.8 KB
io.c -rw-r--r-- 33.4 KB
ioctl.c -rw-r--r-- 5.2 KB
journal.c -rw-r--r-- 42.4 KB
key.h -rw-r--r-- 14.5 KB
log.c -rw-r--r-- 19.3 KB
lprops.c -rw-r--r-- 36.0 KB
lpt.c -rw-r--r-- 58.7 KB
lpt_commit.c -rw-r--r-- 51.8 KB
master.c -rw-r--r-- 10.4 KB
misc.h -rw-r--r-- 8.3 KB
orphan.c -rw-r--r-- 24.7 KB
recovery.c -rw-r--r-- 42.8 KB
replay.c -rw-r--r-- 29.4 KB
sb.c -rw-r--r-- 23.1 KB
scan.c -rw-r--r-- 9.5 KB
shrinker.c -rw-r--r-- 9.6 KB
super.c -rw-r--r-- 60.1 KB
tnc.c -rw-r--r-- 86.8 KB
tnc_commit.c -rw-r--r-- 26.8 KB
tnc_misc.c -rw-r--r-- 12.7 KB
ubifs-media.h -rw-r--r-- 22.7 KB
ubifs.h -rw-r--r-- 62.0 KB
xattr.c -rw-r--r-- 17.7 KB

back to top