summaryrefslogtreecommitdiff
path: root/include/linux/journal-head.h
diff options
context:
space:
mode:
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>2013-05-27 06:00:52 +0400
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2013-05-27 06:00:52 +0400
commit45f6bc5ff9c3387387f048ec85dcb4e69acf0b03 (patch)
treed04952bb05b53a362bcd165fb910c5c1441b4c5d /include/linux/journal-head.h
parent3138887bd8d18173f3c2baf1e43621c49090cd27 (diff)
parente4aa937ec75df0eea0bee03bffa3303ad36c986b (diff)
downloadlinux-45f6bc5ff9c3387387f048ec85dcb4e69acf0b03.tar.xz
Merge 3.10-rc3 into usb-next
We want these fixes. Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'include/linux/journal-head.h')
-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 13a3da25ff07..98cd41bb39c8 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.