panic: Bad link elm, nfsd related?

Kostik Belousov kostikbel at gmail.com
Tue Mar 24 13:08:17 PDT 2009


On Tue, Mar 24, 2009 at 08:04:38PM +0200, Jaakko Heinonen wrote:
> On 2009-03-23, Matthew West wrote:
> > After 1-2 weeks, the system will panic with the following:
> > 
> > ----------
> > panic: Bad link elm 0xffffff0011febc00 next->prev != elm
> 
> It looks like an attempt to remove xprt twice from tail queue due to
> race. Does this patch make any difference?
> 
> %%%
> Index: sys/rpc/svc.c
> ===================================================================
> --- sys/rpc/svc.c	(revision 189918)
> +++ sys/rpc/svc.c	(working copy)
> @@ -296,8 +296,10 @@ xprt_unregister_locked(SVCXPRT *xprt)
>  		TAILQ_REMOVE(&pool->sp_active, xprt, xp_alink);
>  		xprt->xp_active = FALSE;
>  	}
> -	TAILQ_REMOVE(&pool->sp_xlist, xprt, xp_link);
> -	xprt->xp_registered = FALSE;
> +	if (xprt->xp_registered) {
> +		TAILQ_REMOVE(&pool->sp_xlist, xprt, xp_link);
> +		xprt->xp_registered = FALSE;
> +	}
>  }
>  
>  void
> %%%
> 
> This was also reported by Edward Fisk (Cc'd) in PR 132068.

Yes, I did it, and discussed exactly the same change with dfr at .
The patch only fixes symptom, the real problem is double unreg.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 195 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-current/attachments/20090324/c309c8fe/attachment.pgp


More information about the freebsd-current mailing list