- patches.fixes/patch-2.6.11-rc1: 2.6.11-rc1.
[linux-flexiantxendom0-3.2.10.git] / include / linux / page-flags.h
index 9732517..f11387a 100644 (file)
@@ -74,6 +74,7 @@
 #define PG_swapcache           16      /* Swap page: swp_entry_t in private */
 #define PG_mappedtodisk                17      /* Has blocks allocated on-disk */
 #define PG_reclaim             18      /* To be reclaimed asap */
+#define PG_nosave_free         19      /* Free, should not be written */
 
 
 /*
@@ -238,6 +239,8 @@ extern unsigned long __read_page_state(unsigned offset);
 #define SetPagePrivate(page)   set_bit(PG_private, &(page)->flags)
 #define ClearPagePrivate(page) clear_bit(PG_private, &(page)->flags)
 #define PagePrivate(page)      test_bit(PG_private, &(page)->flags)
+#define __SetPagePrivate(page)  __set_bit(PG_private, &(page)->flags)
+#define __ClearPagePrivate(page) __clear_bit(PG_private, &(page)->flags)
 
 #define PageWriteback(page)    test_bit(PG_writeback, &(page)->flags)
 #define SetPageWriteback(page)                                         \
@@ -277,6 +280,10 @@ extern unsigned long __read_page_state(unsigned offset);
 #define ClearPageNosave(page)          clear_bit(PG_nosave, &(page)->flags)
 #define TestClearPageNosave(page)      test_and_clear_bit(PG_nosave, &(page)->flags)
 
+#define PageNosaveFree(page)   test_bit(PG_nosave_free, &(page)->flags)
+#define SetPageNosaveFree(page)        set_bit(PG_nosave_free, &(page)->flags)
+#define ClearPageNosaveFree(page)              clear_bit(PG_nosave_free, &(page)->flags)
+
 #define PageMappedToDisk(page) test_bit(PG_mappedtodisk, &(page)->flags)
 #define SetPageMappedToDisk(page) set_bit(PG_mappedtodisk, &(page)->flags)
 #define ClearPageMappedToDisk(page) clear_bit(PG_mappedtodisk, &(page)->flags)
@@ -286,7 +293,11 @@ extern unsigned long __read_page_state(unsigned offset);
 #define ClearPageReclaim(page) clear_bit(PG_reclaim, &(page)->flags)
 #define TestClearPageReclaim(page) test_and_clear_bit(PG_reclaim, &(page)->flags)
 
+#ifdef CONFIG_HUGETLB_PAGE
 #define PageCompound(page)     test_bit(PG_compound, &(page)->flags)
+#else
+#define PageCompound(page)     0
+#endif
 #define SetPageCompound(page)  set_bit(PG_compound, &(page)->flags)
 #define ClearPageCompound(page)        clear_bit(PG_compound, &(page)->flags)