diff options
Diffstat (limited to 'fs/gfs2/ops_inode.c')
-rw-r--r-- | fs/gfs2/ops_inode.c | 5 |
1 files changed, 1 insertions, 4 deletions
diff --git a/fs/gfs2/ops_inode.c b/fs/gfs2/ops_inode.c index f678f6b62afd..2fe37aeac7b0 100644 --- a/fs/gfs2/ops_inode.c +++ b/fs/gfs2/ops_inode.c | |||
@@ -56,7 +56,6 @@ static int gfs2_create(struct inode *dir, struct dentry *dentry, | |||
56 | struct gfs2_sbd *sdp = GFS2_SB(dir); | 56 | struct gfs2_sbd *sdp = GFS2_SB(dir); |
57 | struct gfs2_holder ghs[2]; | 57 | struct gfs2_holder ghs[2]; |
58 | struct inode *inode; | 58 | struct inode *inode; |
59 | int new = 1; | ||
60 | 59 | ||
61 | gfs2_holder_init(dip->i_gl, 0, 0, ghs); | 60 | gfs2_holder_init(dip->i_gl, 0, 0, ghs); |
62 | 61 | ||
@@ -69,6 +68,7 @@ static int gfs2_create(struct inode *dir, struct dentry *dentry, | |||
69 | gfs2_quota_unlock(dip); | 68 | gfs2_quota_unlock(dip); |
70 | gfs2_alloc_put(dip); | 69 | gfs2_alloc_put(dip); |
71 | gfs2_glock_dq_uninit_m(2, ghs); | 70 | gfs2_glock_dq_uninit_m(2, ghs); |
71 | mark_inode_dirty(inode); | ||
72 | break; | 72 | break; |
73 | } else if (PTR_ERR(inode) != -EEXIST || | 73 | } else if (PTR_ERR(inode) != -EEXIST || |
74 | (nd->intent.open.flags & O_EXCL)) { | 74 | (nd->intent.open.flags & O_EXCL)) { |
@@ -79,7 +79,6 @@ static int gfs2_create(struct inode *dir, struct dentry *dentry, | |||
79 | inode = gfs2_lookupi(dir, &dentry->d_name, 0, nd); | 79 | inode = gfs2_lookupi(dir, &dentry->d_name, 0, nd); |
80 | if (inode) { | 80 | if (inode) { |
81 | if (!IS_ERR(inode)) { | 81 | if (!IS_ERR(inode)) { |
82 | new = 0; | ||
83 | gfs2_holder_uninit(ghs); | 82 | gfs2_holder_uninit(ghs); |
84 | break; | 83 | break; |
85 | } else { | 84 | } else { |
@@ -90,8 +89,6 @@ static int gfs2_create(struct inode *dir, struct dentry *dentry, | |||
90 | } | 89 | } |
91 | 90 | ||
92 | d_instantiate(dentry, inode); | 91 | d_instantiate(dentry, inode); |
93 | if (new) | ||
94 | mark_inode_dirty(inode); | ||
95 | 92 | ||
96 | return 0; | 93 | return 0; |
97 | } | 94 | } |