On Wed, December 13, 2006 1:29 am, David Miller said: > I think we're still not onto the right fix. > > I took a look, and the issue seems to simply be that the > __tcp_put_md5sig_pool() is not doing the reference count > thing that __tcp_get_md5sig_pool() does (via tcp_md5sig_users). > > The direct call to __tcp_free_md5sig_pool() seems to be > what causes this problem, we should be invoking > tcp_free_md5sig_pool() instead. > > Can you give this patch a try? Thanks. [...]
I just had to kill the parameter:- --- net/ipv4/tcp.c.orig 2006-12-10 21:46:26.000000000 +0000 +++ net/ipv4/tcp.c 2006-12-13 17:38:29.000000000 +0000 @@ -2362,7 +2362,7 @@ struct tcp_md5sig_pool *__tcp_get_md5sig EXPORT_SYMBOL(__tcp_get_md5sig_pool); void __tcp_put_md5sig_pool(void) { - __tcp_free_md5sig_pool(tcp_md5sig_pool); + tcp_free_md5sig_pool(); } EXPORT_SYMBOL(__tcp_put_md5sig_pool); It still seems to me that it shouldn't be necessary to alloc and free the pool from tcp_(get|put)_md5sig_pool, as you'll always have alloc'd the pool before calculating the hash, but I'm happy enough as at least its working now. Cheers, Leigh. - To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html