* [PATCH 14/30] jffs2: Remove calls to set/clear the folio error flag
[not found] <20240420025029.2166544-1-willy@infradead.org>
@ 2024-04-20 2:50 ` Matthew Wilcox (Oracle)
2024-04-22 14:46 ` Zhihao Cheng
0 siblings, 1 reply; 3+ messages in thread
From: Matthew Wilcox (Oracle) @ 2024-04-20 2:50 UTC (permalink / raw)
To: linux-fsdevel
Cc: Matthew Wilcox (Oracle), David Woodhouse, Richard Weinberger, linux-mtd
Nobody checks the error flag on jffs2 folios, so stop setting and
clearing it. We can also remove the call to clear the uptodate
flag; it will already be clear.
Convert one of these into a call to mapping_set_error() which will
actually be checked by other parts of the kernel.
Cc: David Woodhouse <dwmw2@infradead.org>
Cc: Richard Weinberger <richard@nod.at>
Cc: linux-mtd@lists.infradead.org
Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org>
---
fs/jffs2/file.c | 14 +++-----------
1 file changed, 3 insertions(+), 11 deletions(-)
diff --git a/fs/jffs2/file.c b/fs/jffs2/file.c
index 62ea76da7fdf..e12cb145147e 100644
--- a/fs/jffs2/file.c
+++ b/fs/jffs2/file.c
@@ -95,13 +95,8 @@ static int jffs2_do_readpage_nolock (struct inode *inode, struct page *pg)
ret = jffs2_read_inode_range(c, f, pg_buf, pg->index << PAGE_SHIFT,
PAGE_SIZE);
- if (ret) {
- ClearPageUptodate(pg);
- SetPageError(pg);
- } else {
+ if (!ret)
SetPageUptodate(pg);
- ClearPageError(pg);
- }
flush_dcache_page(pg);
kunmap(pg);
@@ -304,10 +299,8 @@ static int jffs2_write_end(struct file *filp, struct address_space *mapping,
kunmap(pg);
- if (ret) {
- /* There was an error writing. */
- SetPageError(pg);
- }
+ if (ret)
+ mapping_set_error(mapping, ret);
/* Adjust writtenlen for the padding we did, so we don't confuse our caller */
writtenlen -= min(writtenlen, (start - aligned_start));
@@ -330,7 +323,6 @@ static int jffs2_write_end(struct file *filp, struct address_space *mapping,
it gets reread */
jffs2_dbg(1, "%s(): Not all bytes written. Marking page !uptodate\n",
__func__);
- SetPageError(pg);
ClearPageUptodate(pg);
}
--
2.43.0
______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH 14/30] jffs2: Remove calls to set/clear the folio error flag
2024-04-20 2:50 ` [PATCH 14/30] jffs2: Remove calls to set/clear the folio error flag Matthew Wilcox (Oracle)
@ 2024-04-22 14:46 ` Zhihao Cheng
2024-04-22 15:56 ` Richard Weinberger
0 siblings, 1 reply; 3+ messages in thread
From: Zhihao Cheng @ 2024-04-22 14:46 UTC (permalink / raw)
To: Matthew Wilcox (Oracle), linux-fsdevel
Cc: David Woodhouse, Richard Weinberger, linux-mtd
在 2024/4/20 10:50, Matthew Wilcox (Oracle) 写道:
> Nobody checks the error flag on jffs2 folios, so stop setting and
> clearing it. We can also remove the call to clear the uptodate
> flag; it will already be clear.
>
> Convert one of these into a call to mapping_set_error() which will
> actually be checked by other parts of the kernel.
>
> Cc: David Woodhouse <dwmw2@infradead.org>
> Cc: Richard Weinberger <richard@nod.at>
> Cc: linux-mtd@lists.infradead.org
> Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org>
> ---
> fs/jffs2/file.c | 14 +++-----------
> 1 file changed, 3 insertions(+), 11 deletions(-)
xfstests passed. Looks like the change is harmless.
Tested-by: Reviewed-by: Zhihao Cheng <chengzhihao1@huawei.com>
>
> diff --git a/fs/jffs2/file.c b/fs/jffs2/file.c
> index 62ea76da7fdf..e12cb145147e 100644
> --- a/fs/jffs2/file.c
> +++ b/fs/jffs2/file.c
> @@ -95,13 +95,8 @@ static int jffs2_do_readpage_nolock (struct inode *inode, struct page *pg)
> ret = jffs2_read_inode_range(c, f, pg_buf, pg->index << PAGE_SHIFT,
> PAGE_SIZE);
>
> - if (ret) {
> - ClearPageUptodate(pg);
> - SetPageError(pg);
> - } else {
> + if (!ret)
> SetPageUptodate(pg);
> - ClearPageError(pg);
> - }
>
> flush_dcache_page(pg);
> kunmap(pg);
> @@ -304,10 +299,8 @@ static int jffs2_write_end(struct file *filp, struct address_space *mapping,
>
> kunmap(pg);
>
> - if (ret) {
> - /* There was an error writing. */
> - SetPageError(pg);
> - }
> + if (ret)
> + mapping_set_error(mapping, ret);
>
> /* Adjust writtenlen for the padding we did, so we don't confuse our caller */
> writtenlen -= min(writtenlen, (start - aligned_start));
> @@ -330,7 +323,6 @@ static int jffs2_write_end(struct file *filp, struct address_space *mapping,
> it gets reread */
> jffs2_dbg(1, "%s(): Not all bytes written. Marking page !uptodate\n",
> __func__);
> - SetPageError(pg);
> ClearPageUptodate(pg);
> }
>
>
______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH 14/30] jffs2: Remove calls to set/clear the folio error flag
2024-04-22 14:46 ` Zhihao Cheng
@ 2024-04-22 15:56 ` Richard Weinberger
0 siblings, 0 replies; 3+ messages in thread
From: Richard Weinberger @ 2024-04-22 15:56 UTC (permalink / raw)
To: chengzhihao1; +Cc: Matthew Wilcox, linux-fsdevel, David Woodhouse, linux-mtd
----- Ursprüngliche Mail -----
> Von: "chengzhihao1" <chengzhihao1@huawei.com>
> An: "Matthew Wilcox" <willy@infradead.org>, "linux-fsdevel" <linux-fsdevel@vger.kernel.org>
> CC: "David Woodhouse" <dwmw2@infradead.org>, "richard" <richard@nod.at>, "linux-mtd" <linux-mtd@lists.infradead.org>
> Gesendet: Montag, 22. April 2024 16:46:37
> Betreff: Re: [PATCH 14/30] jffs2: Remove calls to set/clear the folio error flag
> 在 2024/4/20 10:50, Matthew Wilcox (Oracle) 写道:
>> Nobody checks the error flag on jffs2 folios, so stop setting and
>> clearing it. We can also remove the call to clear the uptodate
>> flag; it will already be clear.
>>
>> Convert one of these into a call to mapping_set_error() which will
>> actually be checked by other parts of the kernel.
>>
>> Cc: David Woodhouse <dwmw2@infradead.org>
>> Cc: Richard Weinberger <richard@nod.at>
>> Cc: linux-mtd@lists.infradead.org
>> Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org>
>> ---
>> fs/jffs2/file.c | 14 +++-----------
>> 1 file changed, 3 insertions(+), 11 deletions(-)
>
> xfstests passed. Looks like the change is harmless.
>
> Tested-by: Reviewed-by: Zhihao Cheng <chengzhihao1@huawei.com>
Acked-by: Richard Weinberger <richard@nod.at>
Thanks,
//richard
______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2024-04-22 15:56 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
[not found] <20240420025029.2166544-1-willy@infradead.org>
2024-04-20 2:50 ` [PATCH 14/30] jffs2: Remove calls to set/clear the folio error flag Matthew Wilcox (Oracle)
2024-04-22 14:46 ` Zhihao Cheng
2024-04-22 15:56 ` Richard Weinberger
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).