summaryrefslogtreecommitdiff
path: root/include/linux
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2013-05-14 09:30:54 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2013-05-14 09:30:54 -0700
commitb973425cbb51e08301b34fecdfd476a44507d8cf (patch)
tree689cfb1e5bb3064f4fad6b381bb208c3ed54cf64 /include/linux
parent7fb30d2b606beb78cda805647faf4d3cdfb39c42 (diff)
parente2555fde4159467fb579e6ae3c0a8fc33015d0f5 (diff)
downloadlinux-3.10-b973425cbb51e08301b34fecdfd476a44507d8cf.tar.gz
linux-3.10-b973425cbb51e08301b34fecdfd476a44507d8cf.tar.bz2
linux-3.10-b973425cbb51e08301b34fecdfd476a44507d8cf.zip
Merge tag 'ext4_for_linus_stable' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4
Pull ext4 update from Ted Ts'o: "Fixed regressions (two stability regressions and a performance regression) introduced during the 3.10-rc1 merge window. Also included is a bug fix relating to allocating blocks after resizing an ext3 file system when using the ext4 file system driver" * tag 'ext4_for_linus_stable' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4: jbd,jbd2: fix oops in jbd2_journal_put_journal_head() ext4: revert "ext4: use io_end for multiple bios" ext4: limit group search loop for non-extent files ext4: fix fio regression
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/journal-head.h8
1 files changed, 6 insertions, 2 deletions
diff --git a/include/linux/journal-head.h b/include/linux/journal-head.h
index 13a3da25ff0..98cd41bb39c 100644
--- a/include/linux/journal-head.h
+++ b/include/linux/journal-head.h
@@ -30,15 +30,19 @@ struct journal_head {
/*
* Journalling list for this buffer [jbd_lock_bh_state()]
+ * NOTE: We *cannot* combine this with b_modified into a bitfield
+ * as gcc would then (which the C standard allows but which is
+ * very unuseful) make 64-bit accesses to the bitfield and clobber
+ * b_jcount if its update races with bitfield modification.
*/
- unsigned b_jlist:4;
+ unsigned b_jlist;
/*
* This flag signals the buffer has been modified by
* the currently running transaction
* [jbd_lock_bh_state()]
*/
- unsigned b_modified:1;
+ unsigned b_modified;
/*
* Copy of the buffer data frozen for writing to the log.