]> www.pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - include/linux/page-flags.h
pageflags: use an enum for the flags
[linux-2.6-omap-h63xx.git] / include / linux / page-flags.h
index b5b30f1c1e59e84c2d9877dbe6c03e6b7e01f94c..d66971530caa7444fe380aa2fd2f3ab25dcc32b1 100644 (file)
  * FLAGS_RESERVED which defines the width of the fields section
  * (see linux/mmzone.h).  New flags must _not_ overlap with this area.
  */
-#define PG_locked               0      /* Page is locked. Don't touch. */
-#define PG_error                1
-#define PG_referenced           2
-#define PG_uptodate             3
-
-#define PG_dirty                4
-#define PG_lru                  5
-#define PG_active               6
-#define PG_slab                         7      /* slab debug (Suparna wants this) */
-
-#define PG_owner_priv_1                 8      /* Owner use. If pagecache, fs may use*/
-#define PG_arch_1               9
-#define PG_reserved            10
-#define PG_private             11      /* If pagecache, has fs-private data */
-
-#define PG_writeback           12      /* Page is under writeback */
-#define PG_compound            14      /* Part of a compound page */
-#define PG_swapcache           15      /* Swap page: swp_entry_t in private */
-
-#define PG_mappedtodisk                16      /* Has blocks allocated on-disk */
-#define PG_reclaim             17      /* To be reclaimed asap */
-#define PG_buddy               19      /* Page is free, on buddy lists */
-
-/* PG_readahead is only used for file reads; PG_reclaim is only for writes */
-#define PG_readahead           PG_reclaim /* Reminder to do async read-ahead */
-
-/* PG_owner_priv_1 users should have descriptive aliases */
-#define PG_checked             PG_owner_priv_1 /* Used by some filesystems */
-#define PG_pinned              PG_owner_priv_1 /* Xen pinned pagetable */
+enum pageflags {
+       PG_locked,              /* Page is locked. Don't touch. */
+       PG_error,
+       PG_referenced,
+       PG_uptodate,
+       PG_dirty,
+       PG_lru,
+       PG_active,
+       PG_slab,
+       PG_owner_priv_1,        /* Owner use. If pagecache, fs may use*/
+       PG_checked = PG_owner_priv_1, /* Used by some filesystems */
+       PG_pinned = PG_owner_priv_1, /* Xen pinned pagetable */
+       PG_arch_1,
+       PG_reserved,
+       PG_private,             /* If pagecache, has fs-private data */
+       PG_writeback,           /* Page is under writeback */
+       PG_compound,            /* A compound page */
+       PG_swapcache,           /* Swap page: swp_entry_t in private */
+       PG_mappedtodisk,        /* Has blocks allocated on-disk */
+       PG_reclaim,             /* To be reclaimed asap */
+       /* PG_readahead is only used for file reads; PG_reclaim is only for writes */
+       PG_readahead = PG_reclaim, /* Reminder to do async read-ahead */
+       PG_buddy,               /* Page is free, on buddy lists */
 
 #if (BITS_PER_LONG > 32)
 /*
  * 64 bit  |           FIELDS             | ??????         FLAGS         |
  *         63                            32                              0
  */
-#define PG_uncached            31      /* Page has been mapped as uncached */
+       PG_uncached = 31,               /* Page has been mapped as uncached */
 #endif
+       NR_PAGEFLAGS
+};
 
 /*
  * Manipulation of page state flags