diff options
| author | Wensong Zhang <wensong@linux-vs.org> | 2003-07-20 12:37:02 -0700 |
|---|---|---|
| committer | David S. Miller <davem@nuts.ninka.net> | 2003-07-20 12:37:02 -0700 |
| commit | 94c3cc0071d2e9d8ff7f7cf6410a19ccd4b2cc17 (patch) | |
| tree | 51461b14aebab6680fbd1c5923fd2e95015dbc5a /net | |
| parent | 55e61717004c3ad829b25ee0a77350178a3cabd0 (diff) | |
[IPV4/IPVS]: Deactivate the timer in connection expire if it is activated by other users
Diffstat (limited to 'net')
| -rw-r--r-- | net/ipv4/ipvs/ip_vs_conn.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/net/ipv4/ipvs/ip_vs_conn.c b/net/ipv4/ipvs/ip_vs_conn.c index 89752d03f017..5f0365b16b34 100644 --- a/net/ipv4/ipvs/ip_vs_conn.c +++ b/net/ipv4/ipvs/ip_vs_conn.c @@ -507,6 +507,10 @@ static void ip_vs_conn_expire(unsigned long data) * refcnt==1 implies I'm the only one referrer */ if (likely(atomic_read(&cp->refcnt) == 1)) { + /* delete the timer if it is activated by other users */ + if (timer_pending(&cp->timer)) + del_timer(&cp->timer); + /* does anybody control me? */ if (cp->control) ip_vs_control_del(cp); |
