diff options
author | Stephen Hemminger <shemminger@linux-foundation.org> | 2007-04-26 07:08:46 +0200 |
---|---|---|
committer | David S. Miller <davem@sunset.davemloft.net> | 2007-04-26 07:30:04 +0200 |
commit | 98486fa2f4894e2b01e325c659635596bdec1614 (patch) | |
tree | 50ec95d6b6dc050984610041415d07ccfc8f6014 /net/bridge/br_sysfs_br.c | |
parent | [BRIDGE]: if no STP then forward all BPDUs (diff) | |
download | linux-98486fa2f4894e2b01e325c659635596bdec1614.tar.xz linux-98486fa2f4894e2b01e325c659635596bdec1614.zip |
[BRIDGE]: Missing rtnl.
Writing to /sys/class/net/brX/bridge/stp_state causes a warning because
RTNL is not held when call br_stp_if.c
Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/bridge/br_sysfs_br.c')
-rw-r--r-- | net/bridge/br_sysfs_br.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/net/bridge/br_sysfs_br.c b/net/bridge/br_sysfs_br.c index 7ec0b76cdd27..33c6c4a7c689 100644 --- a/net/bridge/br_sysfs_br.c +++ b/net/bridge/br_sysfs_br.c @@ -149,9 +149,11 @@ static ssize_t show_stp_state(struct device *d, static void set_stp_state(struct net_bridge *br, unsigned long val) { + rtnl_lock(); spin_unlock_bh(&br->lock); br_stp_set_enabled(br, val); spin_lock_bh(&br->lock); + rtnl_unlock(); } static ssize_t store_stp_state(struct device *d, |