From: Alex Tomas [RFC] delayed allocation for ext4 booked-page-flag.patch adds PG_booked bit to page->flags. it's used in delayed allocation to mark space is already reserved for page (including possible metadata) Signed-off-by: Alex Tomas --- --- include/linux/page-flags.h | 5 +++++ 1 file changed, 5 insertions(+) Index: linux-2.6.23-rc2/include/linux/page-flags.h =================================================================== --- linux-2.6.23-rc2.orig/include/linux/page-flags.h 2007-08-06 22:18:09.000000000 -0700 +++ linux-2.6.23-rc2/include/linux/page-flags.h 2007-08-06 22:18:57.000000000 -0700 @@ -89,6 +89,7 @@ #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 */ +#define PG_booked 20 /* Has blocks reserved on-disk */ /* 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 */ @@ -211,6 +212,10 @@ static inline void SetPageUptodate(struc #define SetPageReadahead(page) set_bit(PG_readahead, &(page)->flags) #define ClearPageReadahead(page) clear_bit(PG_readahead, &(page)->flags) +#define PageBooked(page) test_bit(PG_booked, &(page)->flags) +#define SetPageBooked(page) set_bit(PG_booked, &(page)->flags) +#define ClearPageBooked(page) clear_bit(PG_booked, &(page)->flags) + #define PageReclaim(page) test_bit(PG_reclaim, &(page)->flags) #define SetPageReclaim(page) set_bit(PG_reclaim, &(page)->flags) #define ClearPageReclaim(page) clear_bit(PG_reclaim, &(page)->flags)