summarylogtreecommitdiffstats
path: root/0003-Linux-Introduce-file-mapping-readpage-helpers.patch
diff options
context:
space:
mode:
Diffstat (limited to '0003-Linux-Introduce-file-mapping-readpage-helpers.patch')
-rw-r--r--0003-Linux-Introduce-file-mapping-readpage-helpers.patch103
1 files changed, 0 insertions, 103 deletions
diff --git a/0003-Linux-Introduce-file-mapping-readpage-helpers.patch b/0003-Linux-Introduce-file-mapping-readpage-helpers.patch
deleted file mode 100644
index da1f03cbb0de..000000000000
--- a/0003-Linux-Introduce-file-mapping-readpage-helpers.patch
+++ /dev/null
@@ -1,103 +0,0 @@
-From 97054ed3d994f8d6218bf8db05c41ead218200e3 Mon Sep 17 00:00:00 2001
-From: Cheyenne Wills <cwills@sinenomine.net>
-Date: Tue, 5 Jul 2022 10:28:10 -0600
-Subject: [PATCH 3/6] Linux: Introduce file mapping readpage helpers
-
-Create a helper function that determines if a file's
- i_mapping->a_ops->readpage
-is NULL.
-
-Create a helper function that calls a file's
- i_mapping->a_ops->readpage
-
-There are no functional changes with this commit.
-
-Note: This commit isolates references to 'readpage' so that future
-commits can change the name in a more straight forward manner.
-
-Change-Id: If3ad33766c7a3bce27c2aa3c3b409157264230b1
-Reviewed-on: https://gerrit.openafs.org/15039
-Tested-by: BuildBot <buildbot@rampaginggeek.com>
-Reviewed-by: Andrew Deason <adeason@sinenomine.net>
-Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
-(cherry picked from commit a81f7300f08d6e515adbde4bce4b72a3102b60f9)
----
- src/afs/LINUX/osi_vnodeops.c | 34 +++++++++++++++++++++++++++++-----
- 1 file changed, 29 insertions(+), 5 deletions(-)
-
-diff --git a/src/afs/LINUX/osi_vnodeops.c b/src/afs/LINUX/osi_vnodeops.c
-index 54118637f..b834a405c 100644
---- a/src/afs/LINUX/osi_vnodeops.c
-+++ b/src/afs/LINUX/osi_vnodeops.c
-@@ -2206,6 +2206,18 @@ afs_linux_put_link(struct dentry *dentry, struct nameidata *nd)
-
- #endif /* USABLE_KERNEL_PAGE_SYMLINK_CACHE */
-
-+/*
-+ * Call the mapping function that reads data for a given page.
-+ * Note: When we return, it is expected that the page is unlocked. It is the
-+ * responsibility of the called function (e.g. ->readpage) to unlock the given
-+ * page, even when an error occurs.
-+ */
-+static int
-+mapping_read_page(struct address_space *mapping, struct page *page)
-+{
-+ return mapping->a_ops->readpage(NULL, page);
-+}
-+
- /* Populate a page by filling it from the cache file pointed at by cachefp
- * (which contains indicated chunk)
- * If task is NULL, the page copy occurs syncronously, and the routine
-@@ -2272,9 +2284,9 @@ afs_linux_read_cache(struct file *cachefp, struct page *page,
-
- if (!PageUptodate(cachepage)) {
- ClearPageError(cachepage);
-- /* Note that ->readpage always handles unlocking the given page, even
-- * when an error is returned. */
-- code = cachemapping->a_ops->readpage(NULL, cachepage);
-+ /* Note that mapping_read_page always handles unlocking the given page,
-+ * even when an error is returned. */
-+ code = mapping_read_page(cachemapping, cachepage);
- if (!code && !task) {
- wait_on_page_locked(cachepage);
- }
-@@ -2308,6 +2320,17 @@ afs_linux_read_cache(struct file *cachefp, struct page *page,
- return code;
- }
-
-+/*
-+ * Return true if the file has a mapping that can read pages
-+ */
-+static int inline
-+file_can_read_pages(struct file *fp)
-+{
-+ if (fp->f_dentry->d_inode->i_mapping->a_ops->readpage != NULL)
-+ return 1;
-+ return 0;
-+}
-+
- static int inline
- afs_linux_readpage_fastpath(struct file *fp, struct page *pp, int *codep)
- {
-@@ -2403,7 +2426,8 @@ afs_linux_readpage_fastpath(struct file *fp, struct page *pp, int *codep)
- AFS_GLOCK();
- goto out;
- }
-- if (!cacheFp->f_dentry->d_inode->i_mapping->a_ops->readpage) {
-+
-+ if (!file_can_read_pages(cacheFp)) {
- cachefs_noreadpage = 1;
- AFS_GLOCK();
- goto out;
-@@ -2871,7 +2895,7 @@ get_dcache_readahead(struct dcache **adc, struct file **acacheFp,
- code = -1;
- goto out;
- }
-- if (cacheFp->f_dentry->d_inode->i_mapping->a_ops->readpage == NULL) {
-+ if (!file_can_read_pages(cacheFp)) {
- cachefs_noreadpage = 1;
- /* No mapping function */
- code = -1;
---
-2.37.1
-