]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
squashfs: remove calls to set the folio error flag
authorMatthew Wilcox (Oracle) <willy@infradead.org>
Sat, 20 Apr 2024 02:50:18 +0000 (03:50 +0100)
committerAndrew Morton <akpm@linux-foundation.org>
Wed, 8 May 2024 15:41:28 +0000 (08:41 -0700)
Nobody checks the error flag on squashfs folios, so stop setting it.

Link: https://lkml.kernel.org/r/20240420025029.2166544-24-willy@infradead.org
Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org>
Tested-by: Phillip Lougher <phillip@squashfs.org.uk>
Reviewed-by: Phillip Lougher <phillip@squashfs.org.uk>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
fs/squashfs/file.c
fs/squashfs/file_direct.c

index e8df6430444b0143ce5bb6576233a8124914eb3c..a8c1e7f9a6092355d8493b415f328254489a955e 100644 (file)
@@ -375,8 +375,6 @@ void squashfs_fill_page(struct page *page, struct squashfs_cache_entry *buffer,
        flush_dcache_page(page);
        if (copied == avail)
                SetPageUptodate(page);
-       else
-               SetPageError(page);
 }
 
 /* Copy data into page cache  */
@@ -471,7 +469,7 @@ static int squashfs_read_folio(struct file *file, struct folio *folio)
 
                res = read_blocklist(inode, index, &block);
                if (res < 0)
-                       goto error_out;
+                       goto out;
 
                if (res == 0)
                        res = squashfs_readpage_sparse(page, expected);
@@ -483,8 +481,6 @@ static int squashfs_read_folio(struct file *file, struct folio *folio)
        if (!res)
                return 0;
 
-error_out:
-       SetPageError(page);
 out:
        pageaddr = kmap_atomic(page);
        memset(pageaddr, 0, PAGE_SIZE);
index 763a3f7a75f6dd4fa6d2d6ddcb93f3faba7a974d..2a689ce71de98a7d3d021ac2ccb828548189914c 100644 (file)
@@ -106,14 +106,13 @@ int squashfs_readpage_block(struct page *target_page, u64 block, int bsize,
        return 0;
 
 mark_errored:
-       /* Decompression failed, mark pages as errored.  Target_page is
+       /* Decompression failed.  Target_page is
         * dealt with by the caller
         */
        for (i = 0; i < pages; i++) {
                if (page[i] == NULL || page[i] == target_page)
                        continue;
                flush_dcache_page(page[i]);
-               SetPageError(page[i]);
                unlock_page(page[i]);
                put_page(page[i]);
        }