diff options
Diffstat (limited to 'include/linux/page-flags.h')
-rw-r--r-- | include/linux/page-flags.h | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/include/linux/page-flags.h b/include/linux/page-flags.h index d1fe1a761047..ca71a1d347a0 100644 --- a/include/linux/page-flags.h +++ b/include/linux/page-flags.h | |||
@@ -317,13 +317,23 @@ CLEARPAGEFLAG(Uptodate, uptodate) | |||
317 | extern void cancel_dirty_page(struct page *page, unsigned int account_size); | 317 | extern void cancel_dirty_page(struct page *page, unsigned int account_size); |
318 | 318 | ||
319 | int test_clear_page_writeback(struct page *page); | 319 | int test_clear_page_writeback(struct page *page); |
320 | int test_set_page_writeback(struct page *page); | 320 | int __test_set_page_writeback(struct page *page, bool keep_write); |
321 | |||
322 | #define test_set_page_writeback(page) \ | ||
323 | __test_set_page_writeback(page, false) | ||
324 | #define test_set_page_writeback_keepwrite(page) \ | ||
325 | __test_set_page_writeback(page, true) | ||
321 | 326 | ||
322 | static inline void set_page_writeback(struct page *page) | 327 | static inline void set_page_writeback(struct page *page) |
323 | { | 328 | { |
324 | test_set_page_writeback(page); | 329 | test_set_page_writeback(page); |
325 | } | 330 | } |
326 | 331 | ||
332 | static inline void set_page_writeback_keepwrite(struct page *page) | ||
333 | { | ||
334 | test_set_page_writeback_keepwrite(page); | ||
335 | } | ||
336 | |||
327 | #ifdef CONFIG_PAGEFLAGS_EXTENDED | 337 | #ifdef CONFIG_PAGEFLAGS_EXTENDED |
328 | /* | 338 | /* |
329 | * System with lots of page flags available. This allows separate | 339 | * System with lots of page flags available. This allows separate |