[PATCH 14/30] jffs2: Remove calls to set/clear the folio error flag
Zhihao Cheng
chengzhihao1 at huawei.com
Mon Apr 22 07:46:37 PDT 2024
在 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 at infradead.org>
> Cc: Richard Weinberger <richard at nod.at>
> Cc: linux-mtd at lists.infradead.org
> Signed-off-by: Matthew Wilcox (Oracle) <willy at 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 at 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);
> }
>
>
More information about the linux-mtd
mailing list