All protocols need to set the socket owner field to prevent
module unloading when there are still orphaned sockets.
Patch against 2.6.0-test4 (but should work on 2.4 as well).
diff -Nru a/net/irda/af_irda.c b/net/irda/af_irda.c
--- a/net/irda/af_irda.c Fri Aug 29 11:21:32 2003
+++ b/net/irda/af_irda.c Fri Aug 29 11:21:32 2003
@@ -1098,6 +1098,7 @@
/* Initialise networking socket struct */
sock_init_data(sock, sk); /* Note : set sk->sk_refcnt to 1 */
+ sk_set_owner(sk, THIS_MODULE);
sk->sk_family = PF_IRDA;
sk->sk_protocol = protocol;
/* Link networking socket and IrDA socket structs together */
|