|
@@ -155,6 +155,22 @@ void remove_from_page_cache(struct page *page)
|
|
|
}
|
|
|
EXPORT_SYMBOL(remove_from_page_cache);
|
|
|
|
|
|
+/**
|
|
|
+ * delete_from_page_cache - delete page from page cache
|
|
|
+ * @page: the page which the kernel is trying to remove from page cache
|
|
|
+ *
|
|
|
+ * This must be called only on pages that have
|
|
|
+ * been verified to be in the page cache and locked.
|
|
|
+ * It will never put the page into the free list,
|
|
|
+ * the caller has a reference on the page.
|
|
|
+ */
|
|
|
+void delete_from_page_cache(struct page *page)
|
|
|
+{
|
|
|
+ remove_from_page_cache(page);
|
|
|
+ page_cache_release(page);
|
|
|
+}
|
|
|
+EXPORT_SYMBOL(delete_from_page_cache);
|
|
|
+
|
|
|
static int sync_page(void *word)
|
|
|
{
|
|
|
struct address_space *mapping;
|