• Christoph Hellwig's avatar
    xfs: push the ilock into xfs_zero_eof · 193aec10
    Christoph Hellwig authored
    Instead of calling xfs_zero_eof with the ilock held only take it internally
    for the minimall required critical section around xfs_bmapi_read.  This
    also requires changing the calling convention for xfs_zero_last_block
    slightly.  The actual zeroing operation is still serialized by the iolock,
    which must be taken exclusively over the call to xfs_zero_eof.
    
    We could in fact use a shared lock for the xfs_bmapi_read calls as long as
    the extent list has been read in, but given that we already hold the iolock
    exclusively there is little reason to micro optimize this further.
    Reviewed-by: default avatarDave Chinner <dchinner@redhat.com>
    Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
    Reviewed-by: default avatarMark Tinguely <tinguely@sgi.com>
    Signed-off-by: default avatarBen Myers <bpm@sgi.com>
    193aec10
xfs_iops.c 28.6 KB