mirror of
https://github.com/torvalds/linux.git
synced 2024-11-22 04:02:20 +00:00
nfs: Remove calls to folio_set_error
Common code doesn't test the error flag, so we don't need to set it in nfs. We can use folio_end_read() to combine the setting (or not) of the uptodate flag and clearing the lock flag. Cc: Trond Myklebust <trond.myklebust@hammerspace.com> Cc: Anna Schumaker <anna@kernel.org> Cc: linux-nfs@vger.kernel.org Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org> Link: https://lore.kernel.org/r/20240530202110.2653630-10-willy@infradead.org Signed-off-by: Christian Brauner <brauner@kernel.org>
This commit is contained in:
parent
d15b00b1e5
commit
8f3ab6e4be
@ -122,8 +122,6 @@ static void nfs_readpage_release(struct nfs_page *req, int error)
|
|||||||
{
|
{
|
||||||
struct folio *folio = nfs_page_to_folio(req);
|
struct folio *folio = nfs_page_to_folio(req);
|
||||||
|
|
||||||
if (nfs_error_is_fatal_on_server(error) && error != -ETIMEDOUT)
|
|
||||||
folio_set_error(folio);
|
|
||||||
if (nfs_page_group_sync_on_bit(req, PG_UNLOCKPAGE))
|
if (nfs_page_group_sync_on_bit(req, PG_UNLOCKPAGE))
|
||||||
if (nfs_netfs_folio_unlock(folio))
|
if (nfs_netfs_folio_unlock(folio))
|
||||||
folio_unlock(folio);
|
folio_unlock(folio);
|
||||||
|
@ -32,16 +32,8 @@ static int nfs_symlink_filler(struct file *file, struct folio *folio)
|
|||||||
int error;
|
int error;
|
||||||
|
|
||||||
error = NFS_PROTO(inode)->readlink(inode, &folio->page, 0, PAGE_SIZE);
|
error = NFS_PROTO(inode)->readlink(inode, &folio->page, 0, PAGE_SIZE);
|
||||||
if (error < 0)
|
folio_end_read(folio, error == 0);
|
||||||
goto error;
|
return error;
|
||||||
folio_mark_uptodate(folio);
|
|
||||||
folio_unlock(folio);
|
|
||||||
return 0;
|
|
||||||
|
|
||||||
error:
|
|
||||||
folio_set_error(folio);
|
|
||||||
folio_unlock(folio);
|
|
||||||
return -EIO;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static const char *nfs_get_link(struct dentry *dentry,
|
static const char *nfs_get_link(struct dentry *dentry,
|
||||||
|
@ -311,7 +311,6 @@ static void nfs_mapping_set_error(struct folio *folio, int error)
|
|||||||
{
|
{
|
||||||
struct address_space *mapping = folio_file_mapping(folio);
|
struct address_space *mapping = folio_file_mapping(folio);
|
||||||
|
|
||||||
folio_set_error(folio);
|
|
||||||
filemap_set_wb_err(mapping, error);
|
filemap_set_wb_err(mapping, error);
|
||||||
if (mapping->host)
|
if (mapping->host)
|
||||||
errseq_set(&mapping->host->i_sb->s_wb_err,
|
errseq_set(&mapping->host->i_sb->s_wb_err,
|
||||||
|
Loading…
Reference in New Issue
Block a user