diff options
Diffstat (limited to 'fs/xfs/linux-2.6/xfs_export.c')
| -rw-r--r-- | fs/xfs/linux-2.6/xfs_export.c | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/fs/xfs/linux-2.6/xfs_export.c b/fs/xfs/linux-2.6/xfs_export.c index 87b8cbd23d4b..846b75aeb2ab 100644 --- a/fs/xfs/linux-2.6/xfs_export.c +++ b/fs/xfs/linux-2.6/xfs_export.c | |||
| @@ -29,6 +29,7 @@ | |||
| 29 | #include "xfs_vnodeops.h" | 29 | #include "xfs_vnodeops.h" |
| 30 | #include "xfs_bmap_btree.h" | 30 | #include "xfs_bmap_btree.h" |
| 31 | #include "xfs_inode.h" | 31 | #include "xfs_inode.h" |
| 32 | #include "xfs_inode_item.h" | ||
| 32 | 33 | ||
| 33 | /* | 34 | /* |
| 34 | * Note that we only accept fileids which are long enough rather than allow | 35 | * Note that we only accept fileids which are long enough rather than allow |
| @@ -215,9 +216,28 @@ xfs_fs_get_parent( | |||
| 215 | return d_obtain_alias(VFS_I(cip)); | 216 | return d_obtain_alias(VFS_I(cip)); |
| 216 | } | 217 | } |
| 217 | 218 | ||
| 219 | STATIC int | ||
| 220 | xfs_fs_nfs_commit_metadata( | ||
| 221 | struct inode *inode) | ||
| 222 | { | ||
| 223 | struct xfs_inode *ip = XFS_I(inode); | ||
| 224 | struct xfs_mount *mp = ip->i_mount; | ||
| 225 | int error = 0; | ||
| 226 | |||
| 227 | xfs_ilock(ip, XFS_ILOCK_SHARED); | ||
| 228 | if (xfs_ipincount(ip)) { | ||
| 229 | error = _xfs_log_force_lsn(mp, ip->i_itemp->ili_last_lsn, | ||
| 230 | XFS_LOG_SYNC, NULL); | ||
| 231 | } | ||
| 232 | xfs_iunlock(ip, XFS_ILOCK_SHARED); | ||
| 233 | |||
| 234 | return error; | ||
| 235 | } | ||
| 236 | |||
| 218 | const struct export_operations xfs_export_operations = { | 237 | const struct export_operations xfs_export_operations = { |
| 219 | .encode_fh = xfs_fs_encode_fh, | 238 | .encode_fh = xfs_fs_encode_fh, |
| 220 | .fh_to_dentry = xfs_fs_fh_to_dentry, | 239 | .fh_to_dentry = xfs_fs_fh_to_dentry, |
| 221 | .fh_to_parent = xfs_fs_fh_to_parent, | 240 | .fh_to_parent = xfs_fs_fh_to_parent, |
| 222 | .get_parent = xfs_fs_get_parent, | 241 | .get_parent = xfs_fs_get_parent, |
| 242 | .commit_metadata = xfs_fs_nfs_commit_metadata, | ||
| 223 | }; | 243 | }; |
