From: "Matthew Wilcox (Oracle)" willy@infradead.org
commit 0b768a9610c6de9811c6d33900bebfb665192ee1 upstream
The pagecache handles readpage failing by itself; it doesn't want filesystems to remove pages from under it.
Signed-off-by: Matthew Wilcox (Oracle) willy@infradead.org Signed-off-by: Kuniyuki Iwashima kuniyu@amazon.com --- When NFS server returns NFS4ERR_SERVERFAULT, the client returned Remote I/O error immediately on 4.14 and 6.1, but on 5.4/5.10/5.15, the client retries forever and get stuck until userspace aborts it.
The patch fixed the issue but did not have Fixes: tag.
Please backport this to 5.4/5.10/5.15. --- fs/nfs/read.c | 4 ---- 1 file changed, 4 deletions(-)
diff --git a/fs/nfs/read.c b/fs/nfs/read.c index 08d6cc57cbc3..b02372ec07a5 100644 --- a/fs/nfs/read.c +++ b/fs/nfs/read.c @@ -120,12 +120,8 @@ static void nfs_readpage_release(struct nfs_page *req, int error) if (nfs_error_is_fatal_on_server(error) && error != -ETIMEDOUT) SetPageError(page); if (nfs_page_group_sync_on_bit(req, PG_UNLOCKPAGE)) { - struct address_space *mapping = page_file_mapping(page); - if (PageUptodate(page)) nfs_readpage_to_fscache(inode, page, 0); - else if (!PageError(page) && !PagePrivate(page)) - generic_error_remove_page(mapping, page); unlock_page(page); } nfs_release_request(req);
On Wed, Jun 26, 2024 at 11:46:14AM -0700, Kuniyuki Iwashima wrote:
From: "Matthew Wilcox (Oracle)" willy@infradead.org
commit 0b768a9610c6de9811c6d33900bebfb665192ee1 upstream
The pagecache handles readpage failing by itself; it doesn't want filesystems to remove pages from under it.
Signed-off-by: Matthew Wilcox (Oracle) willy@infradead.org Signed-off-by: Kuniyuki Iwashima kuniyu@amazon.com
When NFS server returns NFS4ERR_SERVERFAULT, the client returned Remote I/O error immediately on 4.14 and 6.1, but on 5.4/5.10/5.15, the client retries forever and get stuck until userspace aborts it.
The patch fixed the issue but did not have Fixes: tag.
Please backport this to 5.4/5.10/5.15.
Now queued up, thanks.
greg k-h
linux-stable-mirror@lists.linaro.org