aboutsummaryrefslogtreecommitdiff
path: root/fs/xfs/linux-2.6/xfs_iops.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@g5.osdl.org>2006-01-15 22:18:04 -0800
committerLinus Torvalds <torvalds@g5.osdl.org>2006-01-15 22:18:04 -0800
commit4a8e4a270b89030bdeb09d2f8cef7cfe9a50e54d (patch)
tree6d4ca39c4e215023b80571ecf5d6a1700913418f /fs/xfs/linux-2.6/xfs_iops.c
parent3f02d072d46bb409e8ca3cf16c0511f5c21adaf6 (diff)
parent107a09c44b65d5e2a5313edfda91c498df3b3f2a (diff)
Merge git://oss.sgi.com:8090/oss/git/xfs-2.6
Diffstat (limited to 'fs/xfs/linux-2.6/xfs_iops.c')
-rw-r--r--fs/xfs/linux-2.6/xfs_iops.c16
1 files changed, 8 insertions, 8 deletions
diff --git a/fs/xfs/linux-2.6/xfs_iops.c b/fs/xfs/linux-2.6/xfs_iops.c
index 4bd3d03b23e..76c6df34d0d 100644
--- a/fs/xfs/linux-2.6/xfs_iops.c
+++ b/fs/xfs/linux-2.6/xfs_iops.c
@@ -56,9 +56,6 @@
#include <linux/namei.h>
#include <linux/security.h>
-#define IS_NOATIME(inode) ((inode->i_sb->s_flags & MS_NOATIME) || \
- (S_ISDIR(inode->i_mode) && inode->i_sb->s_flags & MS_NODIRATIME))
-
/*
* Get a XFS inode from a given vnode.
*/
@@ -474,11 +471,14 @@ linvfs_symlink(
error = 0;
VOP_SYMLINK(dvp, dentry, &va, (char *)symname, &cvp, NULL, error);
- if (!error && cvp) {
- ip = LINVFS_GET_IP(cvp);
- d_instantiate(dentry, ip);
- validate_fields(dir);
- validate_fields(ip); /* size needs update */
+ if (likely(!error && cvp)) {
+ error = linvfs_init_security(cvp, dir);
+ if (likely(!error)) {
+ ip = LINVFS_GET_IP(cvp);
+ d_instantiate(dentry, ip);
+ validate_fields(dir);
+ validate_fields(ip);
+ }
}
return -error;
}