mirror of
https://github.com/torvalds/linux.git
synced 2024-11-21 19:41:42 +00:00
orangefs: Remove calls to set/clear the error flag
Nobody checks the error flag on orangefs folios, so stop setting and clearing it. We can also use folio_end_read() to simplify orangefs_read_folio(). Cc: Martin Brandenburg <martin@omnibond.com> Cc: devel@lists.orangefs.org Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org> Link: https://lore.kernel.org/r/20240530202110.2653630-11-willy@infradead.org Tested-by: Mike Marshall <hubcap@omnibond.com> Signed-off-by: Christian Brauner <brauner@kernel.org>
This commit is contained in:
parent
8f3ab6e4be
commit
86b3d5f6df
@ -56,7 +56,6 @@ static int orangefs_writepage_locked(struct page *page,
|
||||
ret = wait_for_direct_io(ORANGEFS_IO_WRITE, inode, &off, &iter, wlen,
|
||||
len, wr, NULL, NULL);
|
||||
if (ret < 0) {
|
||||
SetPageError(page);
|
||||
mapping_set_error(page->mapping, ret);
|
||||
} else {
|
||||
ret = 0;
|
||||
@ -119,7 +118,6 @@ static int orangefs_writepages_work(struct orangefs_writepages *ow,
|
||||
0, &wr, NULL, NULL);
|
||||
if (ret < 0) {
|
||||
for (i = 0; i < ow->npages; i++) {
|
||||
SetPageError(ow->pages[i]);
|
||||
mapping_set_error(ow->pages[i]->mapping, ret);
|
||||
if (PagePrivate(ow->pages[i])) {
|
||||
wrp = (struct orangefs_write_range *)
|
||||
@ -303,15 +301,10 @@ static int orangefs_read_folio(struct file *file, struct folio *folio)
|
||||
iov_iter_zero(~0U, &iter);
|
||||
/* takes care of potential aliasing */
|
||||
flush_dcache_folio(folio);
|
||||
if (ret < 0) {
|
||||
folio_set_error(folio);
|
||||
} else {
|
||||
folio_mark_uptodate(folio);
|
||||
if (ret > 0)
|
||||
ret = 0;
|
||||
}
|
||||
/* unlock the folio after the ->read_folio() routine completes */
|
||||
folio_unlock(folio);
|
||||
return ret;
|
||||
folio_end_read(folio, ret == 0);
|
||||
return ret;
|
||||
}
|
||||
|
||||
static int orangefs_write_begin(struct file *file,
|
||||
|
@ -274,10 +274,8 @@ orangefs_bufmap_map(struct orangefs_bufmap *bufmap,
|
||||
gossip_err("orangefs error: asked for %d pages, only got %d.\n",
|
||||
bufmap->page_count, ret);
|
||||
|
||||
for (i = 0; i < ret; i++) {
|
||||
SetPageError(bufmap->page_array[i]);
|
||||
for (i = 0; i < ret; i++)
|
||||
unpin_user_page(bufmap->page_array[i]);
|
||||
}
|
||||
return -ENOMEM;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user