diff options
author | Stephen Hemminger <shemminger@linux-foundation.org> | 2007-02-22 04:10:18 -0500 |
---|---|---|
committer | David S. Miller <davem@sunset.davemloft.net> | 2007-02-26 14:42:59 -0500 |
commit | 269def7c505b4d229f9ad49bf88543d1e605533e (patch) | |
tree | 341377271f16c0def001a876217a8e6f430d75b4 /net/bridge/br_private.h | |
parent | ac062e84d0c177c43549e7fb608152fec218e7fc (diff) |
[BRIDGE]: eliminate workqueue for carrier check
Having a work queue for checking carrier leads to lots of race issues.
Simpler to just get the cost when data structure is created and
update on change.
Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/bridge/br_private.h')
-rw-r--r-- | net/bridge/br_private.h | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/net/bridge/br_private.h b/net/bridge/br_private.h index 16fc47a821e5..cc3f1c99261a 100644 --- a/net/bridge/br_private.h +++ b/net/bridge/br_private.h | |||
@@ -26,8 +26,6 @@ | |||
26 | #define BR_PORT_BITS 10 | 26 | #define BR_PORT_BITS 10 |
27 | #define BR_MAX_PORTS (1<<BR_PORT_BITS) | 27 | #define BR_MAX_PORTS (1<<BR_PORT_BITS) |
28 | 28 | ||
29 | #define BR_PORT_DEBOUNCE (HZ/10) | ||
30 | |||
31 | #define BR_VERSION "2.2" | 29 | #define BR_VERSION "2.2" |
32 | 30 | ||
33 | typedef struct bridge_id bridge_id; | 31 | typedef struct bridge_id bridge_id; |
@@ -81,7 +79,6 @@ struct net_bridge_port | |||
81 | struct timer_list hold_timer; | 79 | struct timer_list hold_timer; |
82 | struct timer_list message_age_timer; | 80 | struct timer_list message_age_timer; |
83 | struct kobject kobj; | 81 | struct kobject kobj; |
84 | struct delayed_work carrier_check; | ||
85 | struct rcu_head rcu; | 82 | struct rcu_head rcu; |
86 | }; | 83 | }; |
87 | 84 | ||
@@ -172,6 +169,7 @@ extern void br_flood_forward(struct net_bridge *br, | |||
172 | int clone); | 169 | int clone); |
173 | 170 | ||
174 | /* br_if.c */ | 171 | /* br_if.c */ |
172 | extern void br_port_carrier_check(struct net_bridge_port *p); | ||
175 | extern int br_add_bridge(const char *name); | 173 | extern int br_add_bridge(const char *name); |
176 | extern int br_del_bridge(const char *name); | 174 | extern int br_del_bridge(const char *name); |
177 | extern void br_cleanup_bridges(void); | 175 | extern void br_cleanup_bridges(void); |