diff options
| author | Nathan Scott <nathans@sgi.com> | 2005-11-01 23:14:09 -0500 |
|---|---|---|
| committer | Nathan Scott <nathans@sgi.com> | 2005-11-01 23:14:09 -0500 |
| commit | 19d5bcf370c64b1acb1e928b24baf3b68cec914b (patch) | |
| tree | 84aa38ea3ffa871f610ae914b93fe0dddc9442df | |
| parent | a749ee86152a0caed3b0c2fbc50a00277e306ec6 (diff) | |
[XFS] Ensure fsync does not incorrectly return EIO for pages beyond EOF.
SGI-PV: 944819
SGI-Modid: xfs-linux:xfs-kern:24236a
Signed-off-by: Nathan Scott <nathans@sgi.com>
| -rw-r--r-- | fs/xfs/linux-2.6/xfs_aops.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/fs/xfs/linux-2.6/xfs_aops.c b/fs/xfs/linux-2.6/xfs_aops.c index 1f38b528f0bd..c6108971b4e6 100644 --- a/fs/xfs/linux-2.6/xfs_aops.c +++ b/fs/xfs/linux-2.6/xfs_aops.c | |||
| @@ -748,8 +748,9 @@ xfs_page_state_convert( | |||
| 748 | if (page->index >= end_index) { | 748 | if (page->index >= end_index) { |
| 749 | if ((page->index >= end_index + 1) || | 749 | if ((page->index >= end_index + 1) || |
| 750 | !(i_size_read(inode) & (PAGE_CACHE_SIZE - 1))) { | 750 | !(i_size_read(inode) & (PAGE_CACHE_SIZE - 1))) { |
| 751 | err = -EIO; | 751 | if (startio) |
| 752 | goto error; | 752 | unlock_page(page); |
| 753 | return 0; | ||
| 753 | } | 754 | } |
| 754 | } | 755 | } |
| 755 | 756 | ||
