All of lore.kernel.org
 help / color / mirror / Atom feed
From: Vince Busam <vbusam@google.com>
To: Steve Dickson <SteveD@redhat.com>
Cc: nfs@lists.sourceforge.net
Subject: Re: oops in rpc_pipe_release
Date: Tue, 08 Nov 2005 10:37:38 -0800	[thread overview]
Message-ID: <4370F072.3090104@google.com> (raw)
In-Reply-To: <4370B4E0.6090306@RedHat.com>

I tried that with and without the linux-2.6.13-CITI_NFS4_ALL-1.dif patch, and either way 
it ends up causing another NULL pointer dereference in __rpc_purge_upcall after an hour or 
two.

Vince

Steve Dickson wrote:
> 
> 
> Vince Busam wrote:
> 
>> I'm using NFS3 with kerberos authentication, and 25 hour tickets that 
>> refresh when
>> unlocking the screensaver.  Over the weekend, it'll hang with one of 
>> the following stack
>> traces.  Any ideas what could cause this?
> 
> I believe this is caused by the fact gss_pipe_release()
> (i.e. rpci->ops->release_pipe(inode)) is being called
> with a freed clnt->cl_auth pointer. I proposed the
> following patch a while back that I thought fixed the
> problem, but Trond said the patch "prevents anyone from
> reopening the pipe after the first close(), so if gssd
> needs to be restarted, then all pipes will forever block."
> So the patch got reverted....
> 
> 
> --- linux-2.6.13/net/sunrpc/rpc_pipe.c.orig    2005-08-28 
> 19:41:01.000000000 -0400
> +++ linux-2.6.13/net/sunrpc/rpc_pipe.c    2005-09-16 11:18:53.598157000 
> -0400
> @@ -177,6 +177,8 @@ rpc_pipe_release(struct inode *inode, st
>          __rpc_purge_upcall(inode, -EPIPE);
>      if (rpci->ops->release_pipe)
>          rpci->ops->release_pipe(inode);
> +    if (!rpci->nreaders && !rpci->nwriters)
> +        rpci->ops = NULL;
>  out:
>      up(&inode->i_sem);
>      return 0;
> 
> I think the main problem here is there is no way of telling
> if a rpc_inode is or is not valid (or active) so there
> is no way of knowing whether or not a release call is needed...
> 
> steved.


-------------------------------------------------------
SF.Net email is sponsored by:
Tame your development challenges with Apache's Geronimo App Server. Download
it for free - -and be entered to win a 42" plasma tv or your very own
Sony(tm)PSP.  Click here to play: http://sourceforge.net/geronimo.php
_______________________________________________
NFS maillist  -  NFS@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/nfs

  reply	other threads:[~2005-11-08 18:37 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-11-08  0:04 oops in rpc_pipe_release Vince Busam
2005-11-08  0:10 ` J. Bruce Fields
2005-11-08 14:23 ` Steve Dickson
2005-11-08 18:37   ` Vince Busam [this message]
2005-11-08 18:58     ` Steve Dickson
2005-11-08 19:58       ` Trond Myklebust
2005-11-08 20:51         ` Steve Dickson

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4370F072.3090104@google.com \
    --to=vbusam@google.com \
    --cc=SteveD@redhat.com \
    --cc=nfs@lists.sourceforge.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.