diff options
author | Bart De Schuymer <bdschuym@pandora.be> | 2002-09-29 18:27:32 +0000 |
---|---|---|
committer | Bart De Schuymer <bdschuym@pandora.be> | 2002-09-29 18:27:32 +0000 |
commit | b09e04bf343f1aae0cab4840e5594de59c80ef7b (patch) | |
tree | df18aece9ba15b3301035b1ffed524bc36ec816d /kernel/linux/net | |
parent | 089e607e3af877fd69ed22dc9348af857ae68986 (diff) |
unlock bridge lock when brouting
Diffstat (limited to 'kernel/linux/net')
-rw-r--r-- | kernel/linux/net/bridge/br_input.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/kernel/linux/net/bridge/br_input.c b/kernel/linux/net/bridge/br_input.c index ffd8ccf..aed60eb 100644 --- a/kernel/linux/net/bridge/br_input.c +++ b/kernel/linux/net/bridge/br_input.c @@ -5,7 +5,7 @@ * Authors: * Lennert Buytenhek <buytenh@gnu.org> * - * $Id: br_input.c,v 1.6 2002/09/16 21:06:14 bdschuym Exp $ + * $Id: br_input.c,v 1.7 2002/09/29 18:27:32 bdschuym Exp $ * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -149,8 +149,10 @@ int br_handle_frame(struct sk_buff *skb) goto handle_special_frame; if (p->state == BR_STATE_FORWARDING) { - if (br_should_route_hook && br_should_route_hook(&skb)) + if (br_should_route_hook && br_should_route_hook(&skb)) { + read_unlock(&br->lock); return -1; + } NF_HOOK(PF_BRIDGE, NF_BR_PRE_ROUTING, skb, skb->dev, NULL, br_handle_frame_finish); |