diff options
author | Paul Mackerras <paulus@samba.org> | 2005-10-22 16:51:34 +1000 |
---|---|---|
committer | Paul Mackerras <paulus@samba.org> | 2005-10-22 16:51:34 +1000 |
commit | 985990137e81ca9fd6561cd0f7d1a9695ec57d5a (patch) | |
tree | 7a67493285623a7356ba7065cada6728993d1a3b /include/net/inet_timewait_sock.h | |
parent | 834289447542b7ec55c0847486616d4d53ddf891 (diff) | |
parent | 63172cb3d5ef762dcb60a292bc7f016b85cf6e1f (diff) | |
download | linux-985990137e81ca9fd6561cd0f7d1a9695ec57d5a.tar.gz linux-985990137e81ca9fd6561cd0f7d1a9695ec57d5a.tar.bz2 linux-985990137e81ca9fd6561cd0f7d1a9695ec57d5a.zip |
Merge changes from linux-2.6 by hand
Diffstat (limited to 'include/net/inet_timewait_sock.h')
-rw-r--r-- | include/net/inet_timewait_sock.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/include/net/inet_timewait_sock.h b/include/net/inet_timewait_sock.h index 4ade56ef3a4d..28f7b2103505 100644 --- a/include/net/inet_timewait_sock.h +++ b/include/net/inet_timewait_sock.h @@ -19,6 +19,7 @@ #include <linux/ip.h> #include <linux/list.h> +#include <linux/module.h> #include <linux/timer.h> #include <linux/types.h> #include <linux/workqueue.h> @@ -193,11 +194,13 @@ static inline u32 inet_rcv_saddr(const struct sock *sk) static inline void inet_twsk_put(struct inet_timewait_sock *tw) { if (atomic_dec_and_test(&tw->tw_refcnt)) { + struct module *owner = tw->tw_prot->owner; #ifdef SOCK_REFCNT_DEBUG printk(KERN_DEBUG "%s timewait_sock %p released\n", tw->tw_prot->name, tw); #endif kmem_cache_free(tw->tw_prot->twsk_slab, tw); + module_put(owner); } } |