From e3f1494fd28078d920cbc57638e24491be3c3bd5 Mon Sep 17 00:00:00 2001 From: Pekka Enberg Date: Mon, 18 Jul 2011 15:16:55 +0300 Subject: [PATCH] --- yaml --- r: 261660 b: refs/heads/master c: 3adf004d82c03ca9d57cbe960657757a71e4c2e7 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/include/linux/mm_types.h | 25 +++++++++++++++---------- 2 files changed, 16 insertions(+), 11 deletions(-) diff --git a/[refs] b/[refs] index 703c9a86ea43..acf481a4ec9e 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: ea6bd8ee1a2ccdffc38b2b1fcfe941addfafaade +refs/heads/master: 3adf004d82c03ca9d57cbe960657757a71e4c2e7 diff --git a/trunk/include/linux/mm_types.h b/trunk/include/linux/mm_types.h index 6dc6413f5deb..3d76a433d52f 100644 --- a/trunk/include/linux/mm_types.h +++ b/trunk/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 */