]> git.proxmox.com Git - mirror_ubuntu-jammy-kernel.git/blobdiff - fs/buffer.c
[PATCH] page migration reorg
[mirror_ubuntu-jammy-kernel.git] / fs / buffer.c
index 62cfd17dc5fee6c87a1dbaabe5e01299e89dc5ad..1d3683d496f8b0dbab6e3251511532c9904b5236 100644 (file)
@@ -3050,66 +3050,6 @@ asmlinkage long sys_bdflush(int func, long data)
        return 0;
 }
 
-/*
- * Migration function for pages with buffers. This function can only be used
- * if the underlying filesystem guarantees that no other references to "page"
- * exist.
- */
-#ifdef CONFIG_MIGRATION
-int buffer_migrate_page(struct page *newpage, struct page *page)
-{
-       struct address_space *mapping = page->mapping;
-       struct buffer_head *bh, *head;
-
-       if (!mapping)
-               return -EAGAIN;
-
-       if (!page_has_buffers(page))
-               return migrate_page(newpage, page);
-
-       head = page_buffers(page);
-
-       if (migrate_page_remove_references(newpage, page, 3))
-               return -EAGAIN;
-
-       bh = head;
-       do {
-               get_bh(bh);
-               lock_buffer(bh);
-               bh = bh->b_this_page;
-
-       } while (bh != head);
-
-       ClearPagePrivate(page);
-       set_page_private(newpage, page_private(page));
-       set_page_private(page, 0);
-       put_page(page);
-       get_page(newpage);
-
-       bh = head;
-       do {
-               set_bh_page(bh, newpage, bh_offset(bh));
-               bh = bh->b_this_page;
-
-       } while (bh != head);
-
-       SetPagePrivate(newpage);
-
-       migrate_page_copy(newpage, page);
-
-       bh = head;
-       do {
-               unlock_buffer(bh);
-               put_bh(bh);
-               bh = bh->b_this_page;
-
-       } while (bh != head);
-
-       return 0;
-}
-EXPORT_SYMBOL(buffer_migrate_page);
-#endif
-
 /*
  * Buffer-head allocation
  */