aboutsummaryrefslogtreecommitdiffstats
path: root/fs/ocfs2
diff options
context:
space:
mode:
authorJoel Becker <joel.becker@oracle.com>2008-10-20 21:32:48 -0400
committerMark Fasheh <mfasheh@suse.com>2008-11-10 12:51:46 -0500
commiteb6ff2397d1fdfc6a7629c99896338e5b5c508e5 (patch)
tree86f10d7f9a87f508db26c9b780f6ed8635c8c8fd /fs/ocfs2
parentbd60bd37ade4321ecce4ed4442f68c88febd76d5 (diff)
ocfs2: Specify appropriate journal access for new xattr buckets.
There are a couple places that get an xattr bucket that may be reading an existing one or may be allocating a new one. They should specify the correct journal access mode depending. Signed-off-by: Joel Becker <joel.becker@oracle.com> Signed-off-by: Mark Fasheh <mfasheh@suse.com>
Diffstat (limited to 'fs/ocfs2')
-rw-r--r--fs/ocfs2/xattr.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/fs/ocfs2/xattr.c b/fs/ocfs2/xattr.c
index 92df88a41e5d..fb450200bc88 100644
--- a/fs/ocfs2/xattr.c
+++ b/fs/ocfs2/xattr.c
@@ -3231,7 +3231,9 @@ static int ocfs2_half_xattr_bucket(struct inode *inode,
3231 3231
3232 for (i = 0; i < blk_per_bucket; i++) { 3232 for (i = 0; i < blk_per_bucket; i++) {
3233 ret = ocfs2_journal_access(handle, inode, t_bhs[i], 3233 ret = ocfs2_journal_access(handle, inode, t_bhs[i],
3234 OCFS2_JOURNAL_ACCESS_CREATE); 3234 new_bucket_head ?
3235 OCFS2_JOURNAL_ACCESS_CREATE :
3236 OCFS2_JOURNAL_ACCESS_WRITE);
3235 if (ret) { 3237 if (ret) {
3236 mlog_errno(ret); 3238 mlog_errno(ret);
3237 goto out; 3239 goto out;
@@ -3393,6 +3395,8 @@ static int ocfs2_cp_xattr_bucket(struct inode *inode,
3393 3395
3394 for (i = 0; i < blk_per_bucket; i++) { 3396 for (i = 0; i < blk_per_bucket; i++) {
3395 ret = ocfs2_journal_access(handle, inode, t_bhs[i], 3397 ret = ocfs2_journal_access(handle, inode, t_bhs[i],
3398 t_is_new ?
3399 OCFS2_JOURNAL_ACCESS_CREATE :
3396 OCFS2_JOURNAL_ACCESS_WRITE); 3400 OCFS2_JOURNAL_ACCESS_WRITE);
3397 if (ret) 3401 if (ret)
3398 goto out; 3402 goto out;