diff options
Diffstat (limited to 'fs/xfs/xfs_iops.c')
-rw-r--r-- | fs/xfs/xfs_iops.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/fs/xfs/xfs_iops.c b/fs/xfs/xfs_iops.c index bb3bb658e39c..89b07e43ca28 100644 --- a/fs/xfs/xfs_iops.c +++ b/fs/xfs/xfs_iops.c | |||
@@ -39,6 +39,7 @@ | |||
39 | #include "xfs_da_btree.h" | 39 | #include "xfs_da_btree.h" |
40 | #include "xfs_dir2_priv.h" | 40 | #include "xfs_dir2_priv.h" |
41 | #include "xfs_dinode.h" | 41 | #include "xfs_dinode.h" |
42 | #include "xfs_trans_space.h" | ||
42 | 43 | ||
43 | #include <linux/capability.h> | 44 | #include <linux/capability.h> |
44 | #include <linux/xattr.h> | 45 | #include <linux/xattr.h> |
@@ -1046,6 +1047,19 @@ xfs_vn_fiemap( | |||
1046 | return 0; | 1047 | return 0; |
1047 | } | 1048 | } |
1048 | 1049 | ||
1050 | STATIC int | ||
1051 | xfs_vn_tmpfile( | ||
1052 | struct inode *dir, | ||
1053 | struct dentry *dentry, | ||
1054 | umode_t mode) | ||
1055 | { | ||
1056 | int error; | ||
1057 | |||
1058 | error = xfs_create_tmpfile(XFS_I(dir), dentry, mode); | ||
1059 | |||
1060 | return -error; | ||
1061 | } | ||
1062 | |||
1049 | static const struct inode_operations xfs_inode_operations = { | 1063 | static const struct inode_operations xfs_inode_operations = { |
1050 | .get_acl = xfs_get_acl, | 1064 | .get_acl = xfs_get_acl, |
1051 | .set_acl = xfs_set_acl, | 1065 | .set_acl = xfs_set_acl, |
@@ -1084,6 +1098,7 @@ static const struct inode_operations xfs_dir_inode_operations = { | |||
1084 | .removexattr = generic_removexattr, | 1098 | .removexattr = generic_removexattr, |
1085 | .listxattr = xfs_vn_listxattr, | 1099 | .listxattr = xfs_vn_listxattr, |
1086 | .update_time = xfs_vn_update_time, | 1100 | .update_time = xfs_vn_update_time, |
1101 | .tmpfile = xfs_vn_tmpfile, | ||
1087 | }; | 1102 | }; |
1088 | 1103 | ||
1089 | static const struct inode_operations xfs_dir_ci_inode_operations = { | 1104 | static const struct inode_operations xfs_dir_ci_inode_operations = { |
@@ -1111,6 +1126,7 @@ static const struct inode_operations xfs_dir_ci_inode_operations = { | |||
1111 | .removexattr = generic_removexattr, | 1126 | .removexattr = generic_removexattr, |
1112 | .listxattr = xfs_vn_listxattr, | 1127 | .listxattr = xfs_vn_listxattr, |
1113 | .update_time = xfs_vn_update_time, | 1128 | .update_time = xfs_vn_update_time, |
1129 | .tmpfile = xfs_vn_tmpfile, | ||
1114 | }; | 1130 | }; |
1115 | 1131 | ||
1116 | static const struct inode_operations xfs_symlink_inode_operations = { | 1132 | static const struct inode_operations xfs_symlink_inode_operations = { |