summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorMatthew Wilcox (Oracle) <willy@infradead.org>2021-04-23 04:58:32 +0200
committerMatthew Wilcox (Oracle) <willy@infradead.org>2021-09-27 15:27:30 +0200
commitb47393f8448ade8bafe09ed302ce2a15093e9718 (patch)
tree1d4317c21fb3ccbed8a7787b58344262c17bd479 /include
parentmm/filemap: Convert page wait queues to be folios (diff)
downloadlinux-b47393f8448ade8bafe09ed302ce2a15093e9718.tar.xz
linux-b47393f8448ade8bafe09ed302ce2a15093e9718.zip
mm/filemap: Add folio private_2 functions
end_page_private_2() becomes folio_end_private_2(), wait_on_page_private_2() becomes folio_wait_private_2() and wait_on_page_private_2_killable() becomes folio_wait_private_2_killable(). Adjust the fscache equivalents to call page_folio() before calling these functions to avoid adding wrappers. Ends up costing 1 byte of text in ceph & netfs, but the core shrinks by three calls to page_folio(). Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org> Acked-by: Vlastimil Babka <vbabka@suse.cz> Reviewed-by: William Kucharski <william.kucharski@oracle.com> Reviewed-by: Christoph Hellwig <hch@lst.de> Reviewed-by: David Howells <dhowells@redhat.com> Acked-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
Diffstat (limited to 'include')
-rw-r--r--include/linux/netfs.h6
-rw-r--r--include/linux/pagemap.h6
2 files changed, 6 insertions, 6 deletions
diff --git a/include/linux/netfs.h b/include/linux/netfs.h
index 5d6a4158a9a6..3d4cbf2f7dc4 100644
--- a/include/linux/netfs.h
+++ b/include/linux/netfs.h
@@ -55,7 +55,7 @@ static inline void set_page_fscache(struct page *page)
*/
static inline void end_page_fscache(struct page *page)
{
- end_page_private_2(page);
+ folio_end_private_2(page_folio(page));
}
/**
@@ -66,7 +66,7 @@ static inline void end_page_fscache(struct page *page)
*/
static inline void wait_on_page_fscache(struct page *page)
{
- wait_on_page_private_2(page);
+ folio_wait_private_2(page_folio(page));
}
/**
@@ -82,7 +82,7 @@ static inline void wait_on_page_fscache(struct page *page)
*/
static inline int wait_on_page_fscache_killable(struct page *page)
{
- return wait_on_page_private_2_killable(page);
+ return folio_wait_private_2_killable(page_folio(page));
}
enum netfs_read_source {
diff --git a/include/linux/pagemap.h b/include/linux/pagemap.h
index ebc62e9e453b..05f91bfc048d 100644
--- a/include/linux/pagemap.h
+++ b/include/linux/pagemap.h
@@ -795,9 +795,9 @@ static inline void set_page_private_2(struct page *page)
SetPagePrivate2(page);
}
-void end_page_private_2(struct page *page);
-void wait_on_page_private_2(struct page *page);
-int wait_on_page_private_2_killable(struct page *page);
+void folio_end_private_2(struct folio *folio);
+void folio_wait_private_2(struct folio *folio);
+int folio_wait_private_2_killable(struct folio *folio);
/*
* Add an arbitrary waiter to a page's wait queue