]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - include/linux/mm_types.h
platinumfb: Use linux/of_{device,platform}.h instead of asm
[linux-2.6-omap-h63xx.git] / include / linux / mm_types.h
index af190ceab9719dc68b148e3b22b05b28a54c64d2..02a27ae78539cfe536106f46a8f89b50ea63985e 100644 (file)
@@ -42,7 +42,10 @@ struct page {
                                         * to show when page is mapped
                                         * & limit reverse map searches.
                                         */
-               unsigned int inuse;     /* SLUB: Nr of objects */
+               struct {                /* SLUB */
+                       u16 inuse;
+                       u16 objects;
+               };
        };
        union {
            struct {
@@ -172,6 +175,7 @@ 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 */
+       int core_waiters;
        struct rw_semaphore mmap_sem;
        spinlock_t page_table_lock;             /* Protects page tables and some counters */
 
@@ -216,14 +220,29 @@ struct mm_struct {
        unsigned long flags; /* Must use atomic bitops to access the bits */
 
        /* coredumping support */
-       int core_waiters;
        struct completion *core_startup_done, core_done;
 
        /* aio bits */
-       rwlock_t                ioctx_list_lock;
+       rwlock_t                ioctx_list_lock;        /* aio lock */
        struct kioctx           *ioctx_list;
-#ifdef CONFIG_CGROUP_MEM_RES_CTLR
-       struct mem_cgroup *mem_cgroup;
+#ifdef CONFIG_MM_OWNER
+       /*
+        * "owner" points to a task that is regarded as the canonical
+        * user/owner of this mm. All of the following must be true in
+        * order for it to be changed:
+        *
+        * current == mm->owner
+        * current->mm != mm
+        * new_owner->mm == mm
+        * new_owner->alloc_lock is held
+        */
+       struct task_struct *owner;
+#endif
+
+#ifdef CONFIG_PROC_FS
+       /* store ref to file /proc/<pid>/exe symlink points to */
+       struct file *exe_file;
+       unsigned long num_exe_file_vmas;
 #endif
 };