Subject: kern/33867: KASSERT firing in NFS code
To: None <kern-bug-people@netbsd.org, gnats-admin@netbsd.org,>
From: None <martin@aprisoft.de>
List: netbsd-bugs
Date: 06/29/2006 15:45:01
>Number: 33867
>Category: kern
>Synopsis: KASSERT firing in NFS code
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: kern-bug-people
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Thu Jun 29 15:45:00 +0000 2006
>Originator: Martin Husemann
>Release: NetBSD 3.99.21
>Organization:
>Environment:
System: NetBSD nelly.aprisoft.de 3.99.21 NetBSD 3.99.21 (NELLY) #0: Sat Jun 24 14:45:10 CEST 2006 martin@nelly.aprisoft.de:/usr/src/sys/arch/sparc64/compile/NELLY sparc64
Architecture: sparc64
Machine: sparc64
>Description:
I have a sparc64 machine that both mounts a share via NFS and exports
another filesystem via NFS. When trying to mount the latter I got a
kernel assertion failure:
void
nfsdreq_free(struct nfsrv_descript *nd)
{
kauth_cred_t cr;
cr = nd->nd_cr;
if (cr != NULL) {
KASSERT(kauth_cred_getrefcnt(cr) == 1);
kauth_cred_free(cr);
}
pool_put(&nfs_srvdesc_pool, nd);
}
>How-To-Repeat:
I can not easily repeat this, no idea what happened exactly.
The "mount" command on the NFS client had not finished yet when the KASSERT
struck.
>Fix:
n/a
>Unformatted: