• Jeff Layton's avatar
    nfsd4: fix v4 state shutdown error paths · 4ad9a344
    Jeff Layton authored
    If someone tries to shut down the laundry_wq while it isn't up it'll
    cause an oops.
    
    This can happen because write_ports can create a nfsd_svc before we
    really start the nfs server, and we may fail before the server is ever
    started.
    
    Also make sure state is shutdown on error paths in nfsd_svc().
    
    Use a common global nfsd_up flag instead of nfs4_init, and create common
    helper functions for nfsd start/shutdown, as there will be other work
    that we want done only when we the number of nfsd threads transitions
    between zero and nonzero.
    Signed-off-by: default avatarJ. Bruce Fields <bfields@redhat.com>
    4ad9a344
nfssvc.c 15.3 KB