lkml.org 
[lkml]   [2008]   [Jun]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH] knfsd: nfsd: Handle ERESTARTSYS from syscalls.
    On Mon, 16 Jun 2008 12:54:46 -0400
    Trond Myklebust <trond.myklebust@fys.uio.no> wrote:

    > On Mon, 2008-06-16 at 11:09 -0400, Chuck Lever wrote:
    >
    > > I think an error reply is much better than no reply in nearly every
    > > case. NFS3ERR_JUKEBOX/NFS4ERR_DELAY is an interesting idea, but
    > > something else again will probably be required for v4.1 with sessions.
    >
    > NFS3ERR_JUKEBOX/NFS4ERR_DELAY may be inappropriate if the nfs daemon has
    > already started handling the RPC call, since you may be interrupting a
    > non-idempotent operation.
    >

    But if you drop the reply, the client will probably still end up
    retransmitting the request. It seems like a JUKEBOX/DELAY error
    is at least a defined error to the client instead of leaving it
    guessing. Either way, the client could still end up on the wrong
    side of a non-idempotent op.

    Also, am I right that this should really only be happening if nfsd
    catches a SIGKILL? All other signals should be masked off when
    doing the local file operation. Or do we have a potential race if
    we catch a signal just after svc_recv returns but before the new
    sigmask is set and svc_process is called?

    > The only complete solution to this problem is NFSv4.1 with persistent
    > sessions.
    >

    That's probably the case, though we should probably try to do
    best-effort for earlier versions.

    --
    Jeff Layton <jlayton@redhat.com>


    \
     
     \ /
      Last update: 2008-06-16 20:17    [W:3.710 / U:0.112 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site