• Christoph Hellwig's avatar
    fs: add FL_LAYOUT lease type · 11afe9f7
    Christoph Hellwig authored
    This (ab-)uses the file locking code to allow filesystems to recall
    outstanding pNFS layouts on a file.  This new lease type is similar but
    not quite the same as FL_DELEG.  A FL_LAYOUT lease can always be granted,
    an a per-filesystem lock (XFS iolock for the initial implementation)
    ensures not FL_LAYOUT leases granted when we would need to recall them.
    
    Also included are changes that allow multiple outstanding read
    leases of different types on the same file as long as they have a
    differnt owner.  This wasn't a problem until now as nfsd never set
    FL_LEASE leases, and no one else used FL_DELEG leases, but given that
    nfsd will also issues FL_LAYOUT leases we will have to handle it now.
    Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
    11afe9f7
locks.c 69.2 KB