Re: nfsd/sunrpc boot on reboot in 2.5.44

From: Hirokazu Takahashi (taka@valinux.co.jp)
Date: Sun Oct 20 2002 - 18:21:08 EST


Hello,

I think auth_domain_drop() may call NULL function.
I believe the followin patch will fix your problem.
Can you try it with my patch?

ahu> My Debian sid machine oopses when I run 'sudo reboot'.
ahu>
ahu> $ mount
ahu> /dev/hdb2 on / type ext3 (rw,errors=remount-ro)
ahu> proc on /proc type proc (rw)
ahu> devpts on /dev/pts type devpts (rw,gid=5,mode=620)
ahu> /dev/hdb4 on /mnt type ext2 (rw,errors=remount-ro)
ahu> nodev on /dev/oprofile type oprofilefs (rw)
ahu> /dev/hda1 on /images type ext2 (rw)
ahu>
ahu> No NFS activity involved.
ahu>
ahu> By the way, can anybody tell me how to convert this:
ahu> Oct 20 19:21:32 hubert kernel: [<c8831060>] auth_domain_drop+0x50/0x60 [sunrpc]
ahu>
ahu> To a line in auth_domain_drop()?
ahu>
ahu> I'm looking if I can reproduce this.


--- linux/net/sunrpc/svcauth.c.ORG Sun Oct 20 15:47:26 2030
+++ linux/net/sunrpc/svcauth.c Sun Oct 20 15:50:37 2030
@@ -143,8 +143,9 @@ static struct cache_head *auth_domain_ta
 void auth_domain_drop(struct cache_head *item, struct cache_detail *cd)
 {
         struct auth_domain *dom = container_of(item, struct auth_domain, h);
- if (cache_put(item,cd))
- authtab[dom->flavour]->domain_release(dom);
+ void (*fn)(struct auth_domain *) = authtab[dom->flavour]->domain_release;
+ if (cache_put(item,cd) && fn != NULL)
+ fn(dom);
 }
 
 

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Wed Oct 23 2002 - 22:00:51 EST