diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/page-flags.h | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/include/linux/page-flags.h b/include/linux/page-flags.h index b5d13841604..70473da47b3 100644 --- a/include/linux/page-flags.h +++ b/include/linux/page-flags.h | |||
@@ -362,7 +362,7 @@ static inline void ClearPageCompound(struct page *page) | |||
362 | * pages on the LRU and/or pagecache. | 362 | * pages on the LRU and/or pagecache. |
363 | */ | 363 | */ |
364 | TESTPAGEFLAG(Compound, compound) | 364 | TESTPAGEFLAG(Compound, compound) |
365 | __PAGEFLAG(Head, compound) | 365 | __SETPAGEFLAG(Head, compound) __CLEARPAGEFLAG(Head, compound) |
366 | 366 | ||
367 | /* | 367 | /* |
368 | * PG_reclaim is used in combination with PG_compound to mark the | 368 | * PG_reclaim is used in combination with PG_compound to mark the |
@@ -374,8 +374,14 @@ __PAGEFLAG(Head, compound) | |||
374 | * PG_compound & PG_reclaim => Tail page | 374 | * PG_compound & PG_reclaim => Tail page |
375 | * PG_compound & ~PG_reclaim => Head page | 375 | * PG_compound & ~PG_reclaim => Head page |
376 | */ | 376 | */ |
377 | #define PG_head_mask ((1L << PG_compound)) | ||
377 | #define PG_head_tail_mask ((1L << PG_compound) | (1L << PG_reclaim)) | 378 | #define PG_head_tail_mask ((1L << PG_compound) | (1L << PG_reclaim)) |
378 | 379 | ||
380 | static inline int PageHead(struct page *page) | ||
381 | { | ||
382 | return ((page->flags & PG_head_tail_mask) == PG_head_mask); | ||
383 | } | ||
384 | |||
379 | static inline int PageTail(struct page *page) | 385 | static inline int PageTail(struct page *page) |
380 | { | 386 | { |
381 | return ((page->flags & PG_head_tail_mask) == PG_head_tail_mask); | 387 | return ((page->flags & PG_head_tail_mask) == PG_head_tail_mask); |