diff options
| author | Dmitry Torokhov <dmitry.torokhov@gmail.com> | 2012-10-30 03:20:56 -0400 |
|---|---|---|
| committer | Dmitry Torokhov <dmitry.torokhov@gmail.com> | 2012-10-30 03:20:56 -0400 |
| commit | 53279f36dccffc26ff536003fd6bb97cc21c3b82 (patch) | |
| tree | 9d16e497c0e4158c7c054c479bd0e9ff0388d7bb /include/linux/pageblock-flags.h | |
| parent | a6e8c0a25377e27958b11b20e1927885ae7c9857 (diff) | |
| parent | 8f0d8163b50e01f398b14bcd4dc039ac5ab18d64 (diff) | |
Merge tag 'v3.7-rc3' into next to sync up with recent USB and MFD changes
Diffstat (limited to 'include/linux/pageblock-flags.h')
| -rw-r--r-- | include/linux/pageblock-flags.h | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/include/linux/pageblock-flags.h b/include/linux/pageblock-flags.h index 19ef95d293ae..be655e4a2a75 100644 --- a/include/linux/pageblock-flags.h +++ b/include/linux/pageblock-flags.h | |||
| @@ -30,6 +30,9 @@ enum pageblock_bits { | |||
| 30 | PB_migrate, | 30 | PB_migrate, |
| 31 | PB_migrate_end = PB_migrate + 3 - 1, | 31 | PB_migrate_end = PB_migrate + 3 - 1, |
| 32 | /* 3 bits required for migrate types */ | 32 | /* 3 bits required for migrate types */ |
| 33 | #ifdef CONFIG_COMPACTION | ||
| 34 | PB_migrate_skip,/* If set the block is skipped by compaction */ | ||
| 35 | #endif /* CONFIG_COMPACTION */ | ||
| 33 | NR_PAGEBLOCK_BITS | 36 | NR_PAGEBLOCK_BITS |
| 34 | }; | 37 | }; |
| 35 | 38 | ||
| @@ -65,10 +68,22 @@ unsigned long get_pageblock_flags_group(struct page *page, | |||
| 65 | void set_pageblock_flags_group(struct page *page, unsigned long flags, | 68 | void set_pageblock_flags_group(struct page *page, unsigned long flags, |
| 66 | int start_bitidx, int end_bitidx); | 69 | int start_bitidx, int end_bitidx); |
| 67 | 70 | ||
| 71 | #ifdef CONFIG_COMPACTION | ||
| 72 | #define get_pageblock_skip(page) \ | ||
| 73 | get_pageblock_flags_group(page, PB_migrate_skip, \ | ||
| 74 | PB_migrate_skip) | ||
| 75 | #define clear_pageblock_skip(page) \ | ||
| 76 | set_pageblock_flags_group(page, 0, PB_migrate_skip, \ | ||
| 77 | PB_migrate_skip) | ||
| 78 | #define set_pageblock_skip(page) \ | ||
| 79 | set_pageblock_flags_group(page, 1, PB_migrate_skip, \ | ||
| 80 | PB_migrate_skip) | ||
| 81 | #endif /* CONFIG_COMPACTION */ | ||
| 82 | |||
| 68 | #define get_pageblock_flags(page) \ | 83 | #define get_pageblock_flags(page) \ |
| 69 | get_pageblock_flags_group(page, 0, NR_PAGEBLOCK_BITS-1) | 84 | get_pageblock_flags_group(page, 0, PB_migrate_end) |
| 70 | #define set_pageblock_flags(page, flags) \ | 85 | #define set_pageblock_flags(page, flags) \ |
| 71 | set_pageblock_flags_group(page, flags, \ | 86 | set_pageblock_flags_group(page, flags, \ |
| 72 | 0, NR_PAGEBLOCK_BITS-1) | 87 | 0, PB_migrate_end) |
| 73 | 88 | ||
| 74 | #endif /* PAGEBLOCK_FLAGS_H */ | 89 | #endif /* PAGEBLOCK_FLAGS_H */ |
