From: Matthew Wilcox (Oracle) Date: Wed, 5 Mar 2025 20:47:31 +0000 (+0000) Subject: orangefs: Unify error & success paths in orangefs_writepages_work() X-Git-Tag: v6.15-rc1~239^2^2~2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f9ec21357f52254f300ab01199da76464103e821;p=thirdparty%2Fkernel%2Fstable.git orangefs: Unify error & success paths in orangefs_writepages_work() Both arms of this conditional now have the same loop, so sink it out of the conditional. Signed-off-by: "Matthew Wilcox (Oracle)" Link: https://lore.kernel.org/r/20250305204734.1475264-8-willy@infradead.org Tested-by: Mike Marshall Signed-off-by: Christian Brauner --- diff --git a/fs/orangefs/inode.c b/fs/orangefs/inode.c index 879d96c11b1cc..927c2829976c8 100644 --- a/fs/orangefs/inode.c +++ b/fs/orangefs/inode.c @@ -107,33 +107,23 @@ static int orangefs_writepages_work(struct orangefs_writepages *ow, wr.gid = ow->gid; ret = wait_for_direct_io(ORANGEFS_IO_WRITE, inode, &off, &iter, ow->len, 0, &wr, NULL, NULL); - if (ret < 0) { + if (ret < 0) mapping_set_error(ow->mapping, ret); - for (i = 0; i < ow->npages; i++) { - if (PagePrivate(ow->pages[i])) { - wrp = (struct orangefs_write_range *) - page_private(ow->pages[i]); - ClearPagePrivate(ow->pages[i]); - put_page(ow->pages[i]); - kfree(wrp); - } - end_page_writeback(ow->pages[i]); - unlock_page(ow->pages[i]); - } - } else { + else ret = 0; - for (i = 0; i < ow->npages; i++) { - if (PagePrivate(ow->pages[i])) { - wrp = (struct orangefs_write_range *) - page_private(ow->pages[i]); - ClearPagePrivate(ow->pages[i]); - put_page(ow->pages[i]); - kfree(wrp); - } - end_page_writeback(ow->pages[i]); - unlock_page(ow->pages[i]); + + for (i = 0; i < ow->npages; i++) { + if (PagePrivate(ow->pages[i])) { + wrp = (struct orangefs_write_range *) + page_private(ow->pages[i]); + ClearPagePrivate(ow->pages[i]); + put_page(ow->pages[i]); + kfree(wrp); } + end_page_writeback(ow->pages[i]); + unlock_page(ow->pages[i]); } + return ret; }