]> git.ipfire.org Git - people/pmueller/ipfire-2.x.git/blob - src/patches/suse-2.6.27.25/patches.fixes/ocfs2-quota-Mark-buffer-uptodate-before-calling-ocfs2_jou.patch
Updated xen patches taken from suse.
[people/pmueller/ipfire-2.x.git] / src / patches / suse-2.6.27.25 / patches.fixes / ocfs2-quota-Mark-buffer-uptodate-before-calling-ocfs2_jou.patch
1 From 20ee86b5d0f26117b102012fd33eb05048f0a583 Mon Sep 17 00:00:00 2001
2 From: Jan Kara <jack@suse.cz>
3 Date: Wed, 17 Jun 2009 19:04:54 +0200
4 Subject: [PATCH 2/6] ocfs2: Mark buffer uptodate before calling ocfs2_journal_access()
5
6 In a code path extending local quota files we marked new header
7 buffer uptodate only after calling ocfs2_journal_access() which
8 triggers a bug. Fix it and also call ocfs2 variant of the function
9 marking buffer uptodate.
10
11 Signed-off-by: Jan Kara <jack@suse.cz>
12 ---
13 fs/ocfs2/quota_local.c | 4 +++-
14 1 files changed, 3 insertions(+), 1 deletions(-)
15
16 diff --git a/fs/ocfs2/quota_local.c b/fs/ocfs2/quota_local.c
17 index 5a460fa..b624f9b 100644
18 --- a/fs/ocfs2/quota_local.c
19 +++ b/fs/ocfs2/quota_local.c
20 @@ -20,6 +20,7 @@
21 #include "sysfile.h"
22 #include "dlmglue.h"
23 #include "quota.h"
24 +#include "uptodate.h"
25
26 /* Number of local quota structures per block */
27 static inline unsigned int ol_quota_entries_per_block(struct super_block *sb)
28 @@ -979,6 +980,8 @@ static struct ocfs2_quota_chunk *ocfs2_local_quota_add_chunk(
29 mlog_errno(status);
30 goto out;
31 }
32 + ocfs2_set_new_buffer_uptodate(lqinode, bh);
33 +
34 dchunk = (struct ocfs2_local_disk_chunk *)bh->b_data;
35
36 handle = ocfs2_start_trans(OCFS2_SB(sb), 2);
37 @@ -999,7 +1002,6 @@ static struct ocfs2_quota_chunk *ocfs2_local_quota_add_chunk(
38 memset(dchunk->dqc_bitmap, 0,
39 sb->s_blocksize - sizeof(struct ocfs2_local_disk_chunk) -
40 OCFS2_QBLK_RESERVED_SPACE);
41 - set_buffer_uptodate(bh);
42 unlock_buffer(bh);
43 status = ocfs2_journal_dirty(handle, bh);
44 if (status < 0) {
45 --
46 1.6.0.2
47