• J. Bruce Fields's avatar
    nfsd4: fix bad pointer on failure to find delegation · 32b007b4
    J. Bruce Fields authored
    In case of a nonempty list, the return on error here is obviously bogus;
    it ends up being a pointer to the list head instead of to any valid
    delegation on the list.
    
    In particular, if nfsd4_delegreturn() hits this case, and you're quite unlucky,
    then renew_client may oops, and it may take an embarassingly long time to
    figure out why.  Facepalm.
    
    BUG: unable to handle kernel NULL pointer dereference at 0000000000000090
    IP: [<ffffffff81292965>] nfsd4_delegreturn+0x125/0x200
    ...
    
    Cc: stable@kernel.org
    Signed-off-by: default avatarJ. Bruce Fields <bfields@redhat.com>
    32b007b4
nfs4state.c 115 KB