On Wednesday 16 March 2005 00:52, Trond Myklebust wrote: > ty den 15.03.2005 Klokka 23:21 (+0100) skreiv Borislav Petkov: > > After some rookie debugging I think I've found the evildoer: > > > > rpcauth_create used to have a line that inits rpc_auth->au_count to one > > atomically. This line is now missing so when you release the rpc > > authentication handle, the au_count underflows. Here's a fix: > > > > Signed-off-by: Borislav Petkov <[EMAIL PROTECTED]> > > > > --- net/sunrpc/auth.c.orig 2005-03-15 22:34:58.000000000 +0100 > > +++ net/sunrpc/auth.c 2005-03-15 22:36:23.000000000 +0100 > > @@ -70,6 +70,7 @@ rpcauth_create(rpc_authflavor_t pseudofl > > auth = ops->create(clnt, pseudoflavor); > > if (!auth) > > return NULL; > > + atomic_set(&auth->au_count, 1); > > if (clnt->cl_auth) > > rpcauth_destroy(clnt->cl_auth); > > clnt->cl_auth = auth; > > The correct fix for this has already been committed to Linus' bitkeeper > repository. See > > http://linux.bkbits.net:8080/linux-2.6/[EMAIL PROTECTED] >nav=index.html|[EMAIL PROTECTED] > > Cheers, > Trond
Yeah, this is fixed, but, the atomic_dec_and_test(&auth->au_count) appears in net/sunrpc/auth.c too. And the respective create function which creates the authentication handles doesn't do atomic_set of this variable. So we should either remove the atomic_dec_and_test() there too or reintroduce the atomic_set() in the rpcauth_create function otherwise we are still going to experience the same underflow BUG messages. Or am I missing something :)? Regards, Boris. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/