diff options
author | David Chinner <david@fromorbit.com> | 2008-10-30 02:21:30 -0400 |
---|---|---|
committer | Lachlan McIlroy <lachlan@sgi.com> | 2008-10-30 02:21:30 -0400 |
commit | 94b97e39b0c983e86f0028c456dcf213abc722a0 (patch) | |
tree | f3ade2b97cc170e3cd209ace304b7586a72cff34 /fs/xfs | |
parent | 6441e549157b749bae003cce70b4c8b62e4801fa (diff) |
[XFS] Never call mark_inode_dirty_sync() directly
Once the Linux inode and the XFS inode are combined, we cannot rely on
just check if the linux inode exists as a method of determining if it is
valid or not. Hence we should always call xfs_mark_inode_dirty_sync()
instead as it does the correct checks to determine if the liinux inode is
in a valid state or not.
SGI-PV: 988141
SGI-Modid: xfs-linux-melb:xfs-kern:32318a
Signed-off-by: David Chinner <david@fromorbit.com>
Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>
Signed-off-by: Christoph Hellwig <hch@infradead.org>
Diffstat (limited to 'fs/xfs')
-rw-r--r-- | fs/xfs/linux-2.6/xfs_aops.c | 2 | ||||
-rw-r--r-- | fs/xfs/linux-2.6/xfs_iops.c | 2 | ||||
-rw-r--r-- | fs/xfs/linux-2.6/xfs_super.c | 2 |
3 files changed, 3 insertions, 3 deletions
diff --git a/fs/xfs/linux-2.6/xfs_aops.c b/fs/xfs/linux-2.6/xfs_aops.c index a44d68eb50b5..8fbc97df3609 100644 --- a/fs/xfs/linux-2.6/xfs_aops.c +++ b/fs/xfs/linux-2.6/xfs_aops.c | |||
@@ -191,7 +191,7 @@ xfs_setfilesize( | |||
191 | ip->i_d.di_size = isize; | 191 | ip->i_d.di_size = isize; |
192 | ip->i_update_core = 1; | 192 | ip->i_update_core = 1; |
193 | ip->i_update_size = 1; | 193 | ip->i_update_size = 1; |
194 | mark_inode_dirty_sync(ioend->io_inode); | 194 | xfs_mark_inode_dirty_sync(ip); |
195 | } | 195 | } |
196 | 196 | ||
197 | xfs_iunlock(ip, XFS_ILOCK_EXCL); | 197 | xfs_iunlock(ip, XFS_ILOCK_EXCL); |
diff --git a/fs/xfs/linux-2.6/xfs_iops.c b/fs/xfs/linux-2.6/xfs_iops.c index 095d271f3434..3bfb3c0f8e29 100644 --- a/fs/xfs/linux-2.6/xfs_iops.c +++ b/fs/xfs/linux-2.6/xfs_iops.c | |||
@@ -128,7 +128,7 @@ xfs_ichgtime( | |||
128 | if (sync_it) { | 128 | if (sync_it) { |
129 | SYNCHRONIZE(); | 129 | SYNCHRONIZE(); |
130 | ip->i_update_core = 1; | 130 | ip->i_update_core = 1; |
131 | mark_inode_dirty_sync(inode); | 131 | xfs_mark_inode_dirty_sync(ip); |
132 | } | 132 | } |
133 | } | 133 | } |
134 | 134 | ||
diff --git a/fs/xfs/linux-2.6/xfs_super.c b/fs/xfs/linux-2.6/xfs_super.c index 15fb262ef868..b87e45577a58 100644 --- a/fs/xfs/linux-2.6/xfs_super.c +++ b/fs/xfs/linux-2.6/xfs_super.c | |||
@@ -948,7 +948,7 @@ xfs_fs_write_inode( | |||
948 | * it dirty again so we'll try again later. | 948 | * it dirty again so we'll try again later. |
949 | */ | 949 | */ |
950 | if (error) | 950 | if (error) |
951 | mark_inode_dirty_sync(inode); | 951 | xfs_mark_inode_dirty_sync(XFS_I(inode)); |
952 | 952 | ||
953 | return -error; | 953 | return -error; |
954 | } | 954 | } |