• J. Bruce Fields's avatar
    nfsd4: share file descriptors between stateid's · f9d7562f
    J. Bruce Fields authored
    The vfs doesn't really allow us to "upgrade" a file descriptor from
    read-only to read-write, and our attempt to do so in nfs4_upgrade_open
    is ugly and incomplete.
    
    Move to a different scheme where we keep multiple opens, shared between
    open stateid's, in the nfs4_file struct.  Each file will be opened at
    most 3 times (for read, write, and read-write), and those opens will be
    shared between all clients and openers.  On upgrade we will do another
    open if necessary instead of attempting to upgrade an existing open.
    We keep count of the number of readers and writers so we know when to
    close the shared files.
    Signed-off-by: default avatarJ. Bruce Fields <bfields@citi.umich.edu>
    f9d7562f
nfsd.h 13.9 KB