xfs: don't bother looking at the refcount tree for reads
There is no need to trim an extent into a shared or non-shared one, or report any flags for plain old reads. Signed-off-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Darrick J. Wong <darrick.wong@oracle.com> Reviewed-by: Brian Foster <bfoster@redhat.com> Signed-off-by: Dave Chinner <david@fromorbit.com>
This commit is contained in:
parent
62c5ac89de
commit
5f9268ca53
|
@ -996,11 +996,14 @@ xfs_file_iomap_begin(
|
|||
return error;
|
||||
}
|
||||
|
||||
/* Trim the mapping to the nearest shared extent boundary. */
|
||||
error = xfs_reflink_trim_around_shared(ip, &imap, &shared, &trimmed);
|
||||
if (error) {
|
||||
xfs_iunlock(ip, lockmode);
|
||||
return error;
|
||||
if (flags & (IOMAP_WRITE | IOMAP_ZERO | IOMAP_REPORT)) {
|
||||
/* Trim the mapping to the nearest shared extent boundary. */
|
||||
error = xfs_reflink_trim_around_shared(ip, &imap, &shared,
|
||||
&trimmed);
|
||||
if (error) {
|
||||
xfs_iunlock(ip, lockmode);
|
||||
return error;
|
||||
}
|
||||
}
|
||||
|
||||
if ((flags & IOMAP_WRITE) && imap_needs_alloc(inode, &imap, nimaps)) {
|
||||
|
|
Loading…
Reference in New Issue