diff options
author | Lachlan McIlroy <lachlan@sgi.com> | 2007-05-08 13:49:27 +1000 |
---|---|---|
committer | Tim Shimmin <tes@sgi.com> | 2007-05-08 13:49:27 +1000 |
commit | d3cf209476b72c83907a412b6708c5e498410aa7 (patch) | |
tree | 5e7a85751ae03b9eb3110e1cfc147b3492ae0fa5 /fs/xfs/xfs_dfrag.c | |
parent | 424ea91ba61c1cdc2dac68576c97030cbf47d84f (diff) | |
download | kernel-common-d3cf209476b72c83907a412b6708c5e498410aa7.tar.gz kernel-common-d3cf209476b72c83907a412b6708c5e498410aa7.tar.bz2 kernel-common-d3cf209476b72c83907a412b6708c5e498410aa7.zip |
[XFS] propogate return codes from flush routines
This patch handles error return values in fs_flush_pages and
fs_flushinval_pages. It changes the prototype of fs_flushinval_pages so we
can propogate the errors and handle them at higher layers. I also modified
xfs_itruncate_start so that it could propogate the error further.
SGI-PV: 961990
SGI-Modid: xfs-linux-melb:xfs-kern:28231a
Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>
Signed-off-by: Stewart Smith <stewart@flamingspork.com>
Signed-off-by: Tim Shimmin <tes@sgi.com>
Diffstat (limited to 'fs/xfs/xfs_dfrag.c')
-rw-r--r-- | fs/xfs/xfs_dfrag.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/fs/xfs/xfs_dfrag.c b/fs/xfs/xfs_dfrag.c index fb6f22c511e2..de35d18cc002 100644 --- a/fs/xfs/xfs_dfrag.c +++ b/fs/xfs/xfs_dfrag.c @@ -199,7 +199,9 @@ xfs_swap_extents( if (VN_CACHED(tvp) != 0) { xfs_inval_cached_trace(&tip->i_iocore, 0, -1, 0, -1); - bhv_vop_flushinval_pages(tvp, 0, -1, FI_REMAPF_LOCKED); + error = bhv_vop_flushinval_pages(tvp, 0, -1, FI_REMAPF_LOCKED); + if (error) + goto error0; } /* Verify O_DIRECT for ftmp */ |