• Anna Schumaker's avatar
    NFS: Fallocate should use the nfs4_fattr_bitmap · 913eca1a
    Anna Schumaker authored
    Changing a sparse file could have an effect not only on the file size,
    but also on the number of blocks used by the file in the underlying
    filesystem. The server's cache_consistency_bitmap doesn't update the
    SPACE_USED attribute, so let's switch to the nfs4_fattr_bitmap to catch
    this update whenever we do an ALLOCATE or DEALLOCATE.
    
    This patch fixes xfstests generic/568, which tests that fallocating an
    unaligned range allocates all blocks touched by that range. Without this
    patch, `stat` reports 0 bytes used immediately after the fallocate.
    Adding a `sleep 5` to the test also catches the update, but it's better
    to do so when we know something has changed.
    Signed-off-by: default avatarAnna Schumaker <Anna.Schumaker@Netapp.com>
    Signed-off-by: default avatarTrond Myklebust <trond.myklebust@hammerspace.com>
    913eca1a
nfs42proc.c 27.9 KB