[PATCH] filemap: minor cleanup for filemap_write_and_wait_range

Miaohe Lin posted 1 patch 3 years, 9 months ago
mm/filemap.c | 18 ++++++------------
1 file changed, 6 insertions(+), 12 deletions(-)
[PATCH] filemap: minor cleanup for filemap_write_and_wait_range
Posted by Miaohe Lin 3 years, 9 months ago
Restructure the logic in filemap_write_and_wait_range to simplify the code
and make it more consistent with file_write_and_wait_range. No functional
change intended.

Signed-off-by: Miaohe Lin <linmiaohe@huawei.com>
---
 mm/filemap.c | 18 ++++++------------
 1 file changed, 6 insertions(+), 12 deletions(-)

diff --git a/mm/filemap.c b/mm/filemap.c
index 8ccb868c3d95..b561619cfafe 100644
--- a/mm/filemap.c
+++ b/mm/filemap.c
@@ -667,7 +667,7 @@ EXPORT_SYMBOL_GPL(filemap_range_has_writeback);
 int filemap_write_and_wait_range(struct address_space *mapping,
 				 loff_t lstart, loff_t lend)
 {
-	int err = 0;
+	int err = 0, err2;
 
 	if (mapping_needs_writeback(mapping)) {
 		err = __filemap_fdatawrite_range(mapping, lstart, lend,
@@ -678,18 +678,12 @@ int filemap_write_and_wait_range(struct address_space *mapping,
 		 * But the -EIO is special case, it may indicate the worst
 		 * thing (e.g. bug) happened, so we avoid waiting for it.
 		 */
-		if (err != -EIO) {
-			int err2 = filemap_fdatawait_range(mapping,
-						lstart, lend);
-			if (!err)
-				err = err2;
-		} else {
-			/* Clear any previously stored errors */
-			filemap_check_errors(mapping);
-		}
-	} else {
-		err = filemap_check_errors(mapping);
+		if (err != -EIO)
+			__filemap_fdatawait_range(mapping, lstart, lend);
 	}
+	err2 = filemap_check_errors(mapping);
+	if (!err)
+		err = err2;
 	return err;
 }
 EXPORT_SYMBOL(filemap_write_and_wait_range);
-- 
2.23.0
Re: [PATCH] filemap: minor cleanup for filemap_write_and_wait_range
Posted by Muchun Song 3 years, 9 months ago
On Mon, Jun 27, 2022 at 09:23:51PM +0800, Miaohe Lin wrote:
> Restructure the logic in filemap_write_and_wait_range to simplify the code
> and make it more consistent with file_write_and_wait_range. No functional
> change intended.
> 
> Signed-off-by: Miaohe Lin <linmiaohe@huawei.com>

Reviewed-by: Muchun Song <songmuchun@bytedance.com>

Thanks.
Re: [PATCH] filemap: minor cleanup for filemap_write_and_wait_range
Posted by Matthew Wilcox 3 years, 9 months ago
On Mon, Jun 27, 2022 at 09:23:51PM +0800, Miaohe Lin wrote:
> Restructure the logic in filemap_write_and_wait_range to simplify the code
> and make it more consistent with file_write_and_wait_range. No functional
> change intended.
> 
> Signed-off-by: Miaohe Lin <linmiaohe@huawei.com>

Looks OK to me at a quick glance.  I'll look at it more closely next
week when I'm back from holiday.
Re: [PATCH] filemap: minor cleanup for filemap_write_and_wait_range
Posted by Miaohe Lin 3 years, 9 months ago
On 2022/6/28 11:03, Matthew Wilcox wrote:
> On Mon, Jun 27, 2022 at 09:23:51PM +0800, Miaohe Lin wrote:
>> Restructure the logic in filemap_write_and_wait_range to simplify the code
>> and make it more consistent with file_write_and_wait_range. No functional
>> change intended.
>>
>> Signed-off-by: Miaohe Lin <linmiaohe@huawei.com>
> 
> Looks OK to me at a quick glance.  I'll look at it more closely next
> week when I'm back from holiday.

Thanks for your time. Enjoy your holiday. ;)

> 
> .
>