This should probably be sent to stable. -dros On Mar 27, 2012, at 6:35 PM, Trond Myklebust wrote: > We can currently loop forever in nfs4_lookup_root() and in > nfs41_proc_secinfo_no_name(), if the first iteration returns a > NFS4ERR_DELAY or something else that causes exception.retry to get > set. > > Reported-by: Dros Adamson <Weston.Adamson@xxxxxxxxxx> > Signed-off-by: Trond Myklebust <Trond.Myklebust@xxxxxxxxxx> > Cc: stable@xxxxxxxxxxxxxxx > --- > fs/nfs/nfs4proc.c | 6 ++++-- > 1 files changed, 4 insertions(+), 2 deletions(-) > > diff --git a/fs/nfs/nfs4proc.c b/fs/nfs/nfs4proc.c > index 45df7d4..ee9ca19 100644 > --- a/fs/nfs/nfs4proc.c > +++ b/fs/nfs/nfs4proc.c > @@ -2290,11 +2290,12 @@ static int nfs4_lookup_root(struct nfs_server *server, struct nfs_fh *fhandle, > switch (err) { > case 0: > case -NFS4ERR_WRONGSEC: > - break; > + goto out; > default: > err = nfs4_handle_exception(server, err, &exception); > } > } while (exception.retry); > +out: > return err; > } > > @@ -6229,11 +6230,12 @@ nfs41_proc_secinfo_no_name(struct nfs_server *server, struct nfs_fh *fhandle, > case 0: > case -NFS4ERR_WRONGSEC: > case -NFS4ERR_NOTSUPP: > - break; > + goto out; > default: > err = nfs4_handle_exception(server, err, &exception); > } > } while (exception.retry); > +out: > return err; > } > > -- > 1.7.7.6 > > -- > To unsubscribe from this list: send the line "unsubscribe linux-nfs" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > More majordomo info at http://vger.kernel.org/majordomo-info.html
Attachment:
smime.p7s
Description: S/MIME cryptographic signature