The patch titled Subject: squashfs: fix page indices has been added to the -mm mm-nonmm-unstable branch. Its filename is squashfs-cache-partial-compressed-blocks-fix-3.patch This patch will shortly appear at https://git.kernel.org/pub/scm/linux/kernel/git/akpm/25-new.git/tree/patches/squashfs-cache-partial-compressed-blocks-fix-3.patch This patch will later appear in the mm-nonmm-unstable branch at git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm Before you just go and hit "reply", please: a) Consider who else should be cc'ed b) Prefer to cc a suitable mailing list as well c) Ideally: find the original patch on the mailing list and do a reply-to-all to that, adding suitable additional cc's *** Remember to use Documentation/process/submit-checklist.rst when testing your code *** The -mm tree is included into linux-next via the mm-everything branch at git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm and is updated there every 2-3 working days ------------------------------------------------------ From: Vincent Whitchurch <vincent.whitchurch@xxxxxxxx> Subject: squashfs: fix page indices Date: Fri, 26 May 2023 15:25:46 +0200 The page cache functions want the page index as an argument but we're currently passing in the byte address. Link: https://lkml.kernel.org/r/20230526-squashfs-cache-fixup-v1-2-d54a7fa23e7b@xxxxxxxx Signed-off-by: Vincent Whitchurch <vincent.whitchurch@xxxxxxxx> Reviewed-by: Christoph Hellwig <hch@xxxxxx> Reviewed-by: Phillip Lougher <phillip@xxxxxxxxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- fs/squashfs/block.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) --- a/fs/squashfs/block.c~squashfs-cache-partial-compressed-blocks-fix-3 +++ a/fs/squashfs/block.c @@ -142,7 +142,7 @@ static int squashfs_bio_read_cached(stru if (head_to_cache) { int ret = add_to_page_cache_lru(head_to_cache, cache_mapping, - read_start, GFP_NOIO); + read_start >> PAGE_SHIFT, GFP_NOIO); if (!ret) { SetPageUptodate(head_to_cache); @@ -153,7 +153,7 @@ static int squashfs_bio_read_cached(stru if (tail_to_cache) { int ret = add_to_page_cache_lru(tail_to_cache, cache_mapping, - read_end - PAGE_SIZE, GFP_NOIO); + (read_end >> PAGE_SHIFT) - 1, GFP_NOIO); if (!ret) { SetPageUptodate(tail_to_cache); @@ -192,7 +192,7 @@ static int squashfs_bio_read(struct supe if (cache_mapping) page = find_get_page(cache_mapping, - read_start + i * PAGE_SIZE); + (read_start >> PAGE_SHIFT) + i); if (!page) page = alloc_page(GFP_NOIO); _ Patches currently in -mm which might be from vincent.whitchurch@xxxxxxxx are squashfs-cache-partial-compressed-blocks.patch squashfs-cache-partial-compressed-blocks-fix-2.patch squashfs-cache-partial-compressed-blocks-fix-3.patch