aboutsummaryrefslogtreecommitdiff
path: root/include/linux/mm_types.h
diff options
context:
space:
mode:
authorPekka Enberg <penberg@kernel.org>2011-07-18 15:16:55 +0300
committerPekka Enberg <penberg@kernel.org>2011-07-18 15:16:55 +0300
commit3adf004d82c03ca9d57cbe960657757a71e4c2e7 (patch)
tree89d73135f7961ee17a3e4698b8c3f2e1f5b43476 /include/linux/mm_types.h
parentea6bd8ee1a2ccdffc38b2b1fcfe941addfafaade (diff)
Revert "SLUB: Fix build breakage in linux/mm_types.h"
This reverts commit ea6bd8ee1a2ccdffc38b2b1fcfe941addfafaade.
Diffstat (limited to 'include/linux/mm_types.h')
-rw-r--r--include/linux/mm_types.h25
1 files changed, 15 insertions, 10 deletions
diff --git a/include/linux/mm_types.h b/include/linux/mm_types.h
index 6dc6413f5de..3d76a433d52 100644
--- a/include/linux/mm_types.h
+++ b/include/linux/mm_types.h
@@ -49,27 +49,32 @@ struct page {
* see PAGE_MAPPING_ANON below.
*/
/* Second double word */
- struct {
- union {
+ union {
+ struct {
pgoff_t index; /* Our offset within mapping. */
- void *freelist; /* slub first free object */
- };
-
- union {
atomic_t _mapcount; /* Count of ptes mapped in mms,
* to show when page is mapped
* & limit reverse map searches.
*/
+ atomic_t _count; /* Usage count, see below. */
+ };
- /* Used for cmpxchg_double in slub */
- unsigned long counters;
- struct {
+ struct { /* SLUB cmpxchg_double area */
+ void *freelist;
+ union {
+ unsigned long counters;
+ struct {
unsigned inuse:16;
unsigned objects:15;
unsigned frozen:1;
+ /*
+ * Kernel may make use of this field even when slub
+ * uses the rest of the double word!
+ */
+ atomic_t _count;
+ };
};
};
- atomic_t _count; /* Usage count, see below. */
};
/* Third double word block */