git://ftp.safe.ca
/
safe
/
jmp
/
linux-2.6
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
mfd: Refactor WM8350 chip identification
[safe/jmp/linux-2.6]
/
include
/
linux
/
mm_types.h
diff --git
a/include/linux/mm_types.h
b/include/linux/mm_types.h
index
02a27ae
..
9cfc9b6
100644
(file)
--- a/
include/linux/mm_types.h
+++ b/
include/linux/mm_types.h
@@
-10,6
+10,7
@@
#include <linux/rbtree.h>
#include <linux/rwsem.h>
#include <linux/completion.h>
#include <linux/rbtree.h>
#include <linux/rwsem.h>
#include <linux/completion.h>
+#include <linux/cpumask.h>
#include <asm/page.h>
#include <asm/mmu.h>
#include <asm/page.h>
#include <asm/mmu.h>
@@
-20,11
+21,13
@@
struct address_space;
struct address_space;
-#if NR_CPUS >= CONFIG_SPLIT_PTLOCK_CPUS
+#define USE_SPLIT_PTLOCKS (NR_CPUS >= CONFIG_SPLIT_PTLOCK_CPUS)
+
+#if USE_SPLIT_PTLOCKS
typedef atomic_long_t mm_counter_t;
typedef atomic_long_t mm_counter_t;
-#else /*
NR_CPUS < CONFIG_SPLIT_PTLOCK_CPU
S */
+#else /*
!USE_SPLIT_PTLOCK
S */
typedef unsigned long mm_counter_t;
typedef unsigned long mm_counter_t;
-#endif /*
NR_CPUS < CONFIG_SPLIT_PTLOCK_CPU
S */
+#endif /*
!USE_SPLIT_PTLOCK
S */
/*
* Each physical page in the system has a struct page associated with
/*
* Each physical page in the system has a struct page associated with
@@
-64,7
+67,7
@@
struct page {
* see PAGE_MAPPING_ANON below.
*/
};
* see PAGE_MAPPING_ANON below.
*/
};
-#if
NR_CPUS >= CONFIG_SPLIT_PTLOCK_CPU
S
+#if
USE_SPLIT_PTLOCK
S
spinlock_t ptl;
#endif
struct kmem_cache *slab; /* SLUB: Pointer to slab */
spinlock_t ptl;
#endif
struct kmem_cache *slab; /* SLUB: Pointer to slab */
@@
-91,9
+94,6
@@
struct page {
void *virtual; /* Kernel virtual address (NULL if
not kmapped, ie. highmem) */
#endif /* WANT_PAGE_VIRTUAL */
void *virtual; /* Kernel virtual address (NULL if
not kmapped, ie. highmem) */
#endif /* WANT_PAGE_VIRTUAL */
-#ifdef CONFIG_CGROUP_MEM_RES_CTLR
- unsigned long page_cgroup;
-#endif
};
/*
};
/*
@@
-112,7
+112,7
@@
struct vm_area_struct {
struct vm_area_struct *vm_next;
pgprot_t vm_page_prot; /* Access permissions of this VMA. */
struct vm_area_struct *vm_next;
pgprot_t vm_page_prot; /* Access permissions of this VMA. */
- unsigned long vm_flags; /* Flags,
listed below
. */
+ unsigned long vm_flags; /* Flags,
see mm.h
. */
struct rb_node vm_rb;
struct rb_node vm_rb;
@@
-159,6
+159,17
@@
struct vm_area_struct {
#endif
};
#endif
};
+struct core_thread {
+ struct task_struct *task;
+ struct core_thread *next;
+};
+
+struct core_state {
+ atomic_t nr_threads;
+ struct core_thread dumper;
+ struct completion startup;
+};
+
struct mm_struct {
struct vm_area_struct * mmap; /* list of VMAs */
struct rb_root mm_rb;
struct mm_struct {
struct vm_area_struct * mmap; /* list of VMAs */
struct rb_root mm_rb;
@@
-175,7
+186,6
@@
struct mm_struct {
atomic_t mm_users; /* How many users with user space? */
atomic_t mm_count; /* How many references to "struct mm_struct" (users count as 1) */
int map_count; /* number of VMAs */
atomic_t mm_users; /* How many users with user space? */
atomic_t mm_count; /* How many references to "struct mm_struct" (users count as 1) */
int map_count; /* number of VMAs */
- int core_waiters;
struct rw_semaphore mmap_sem;
spinlock_t page_table_lock; /* Protects page tables and some counters */
struct rw_semaphore mmap_sem;
spinlock_t page_table_lock; /* Protects page tables and some counters */
@@
-219,12
+229,12
@@
struct mm_struct {
unsigned long flags; /* Must use atomic bitops to access the bits */
unsigned long flags; /* Must use atomic bitops to access the bits */
- /* coredumping support */
- struct completion *core_startup_done, core_done;
+ struct core_state *core_state; /* coredumping support */
/* aio bits */
/* aio bits */
- rwlock_t ioctx_list_lock; /* aio lock */
- struct kioctx *ioctx_list;
+ spinlock_t ioctx_lock;
+ struct hlist_head ioctx_list;
+
#ifdef CONFIG_MM_OWNER
/*
* "owner" points to a task that is regarded as the canonical
#ifdef CONFIG_MM_OWNER
/*
* "owner" points to a task that is regarded as the canonical
@@
-244,6
+254,9
@@
struct mm_struct {
struct file *exe_file;
unsigned long num_exe_file_vmas;
#endif
struct file *exe_file;
unsigned long num_exe_file_vmas;
#endif
+#ifdef CONFIG_MMU_NOTIFIER
+ struct mmu_notifier_mm *mmu_notifier_mm;
+#endif
};
#endif /* _LINUX_MM_TYPES_H */
};
#endif /* _LINUX_MM_TYPES_H */