|
@@ -496,8 +496,8 @@ static inline int lock_page_or_retry(struct page *page, struct mm_struct *mm,
|
|
|
}
|
|
|
|
|
|
/*
|
|
|
- * This is exported only for wait_on_page_locked/wait_on_page_writeback.
|
|
|
- * Never use this directly!
|
|
|
+ * This is exported only for wait_on_page_locked/wait_on_page_writeback,
|
|
|
+ * and for filesystems which need to wait on PG_private.
|
|
|
*/
|
|
|
extern void wait_on_page_bit(struct page *page, int bit_nr);
|
|
|
|
|
@@ -512,6 +512,12 @@ static inline int wait_on_page_locked_killable(struct page *page)
|
|
|
return 0;
|
|
|
}
|
|
|
|
|
|
+extern wait_queue_head_t *page_waitqueue(struct page *page);
|
|
|
+static inline void wake_up_page(struct page *page, int bit)
|
|
|
+{
|
|
|
+ __wake_up_bit(page_waitqueue(page), &page->flags, bit);
|
|
|
+}
|
|
|
+
|
|
|
/*
|
|
|
* Wait for a page to be unlocked.
|
|
|
*
|