The patch titled Subject: squashfs: fix invalid pointer dereference in squashfs_cache_delete has been added to the -mm mm-hotfixes-unstable branch. Its filename is squashfs-fix-invalid-pointer-dereference-in-squashfs_cache_delete.patch This patch will shortly appear at https://git.kernel.org/pub/scm/linux/kernel/git/akpm/25-new.git/tree/patches/squashfs-fix-invalid-pointer-dereference-in-squashfs_cache_delete.patch This patch will later appear in the mm-hotfixes-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: Zhiyu Zhang <zhiyuzhang999@xxxxxxxxx> Subject: squashfs: fix invalid pointer dereference in squashfs_cache_delete Date: Thu, 6 Mar 2025 21:28:55 +0800 When mounting a squashfs fails, squashfs_cache_init() may return an error pointer (e.g., -ENOMEM) instead of NULL. However, squashfs_cache_delete() only checks for a NULL cache, and attempts to dereference the invalid pointer. This leads to a kernel crash (BUG: unable to handle kernel paging request in squashfs_cache_delete). This patch fixes the issue by checking IS_ERR(cache) before accessing it. Link: https://lkml.kernel.org/r/20250306132855.2030-1-zhiyuzhang999@xxxxxxxxx Fixes: 49ff29240ebb ("squashfs: make squashfs_cache_init() return ERR_PTR(-ENOMEM)") Signed-off-by: Zhiyu Zhang <zhiyuzhang999@xxxxxxxxx> Reported-by: Zhiyu Zhang <zhiyuzhang999@xxxxxxxxx> Closes: https://lore.kernel.org/linux-fsdevel/CALf2hKvaq8B4u5yfrE+BYt7aNguao99mfWxHngA+=o5hwzjdOg@xxxxxxxxxxxxxx/ Tested-by: Zhiyu Zhang <zhiyuzhang999@xxxxxxxxx> Reviewed-by: Phillip Lougher <phillip@xxxxxxxxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- fs/squashfs/cache.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) --- a/fs/squashfs/cache.c~squashfs-fix-invalid-pointer-dereference-in-squashfs_cache_delete +++ a/fs/squashfs/cache.c @@ -198,7 +198,7 @@ void squashfs_cache_delete(struct squash { int i, j; - if (cache == NULL) + if (IS_ERR(cache) || cache == NULL) return; for (i = 0; i < cache->entries; i++) { _ Patches currently in -mm which might be from zhiyuzhang999@xxxxxxxxx are squashfs-fix-invalid-pointer-dereference-in-squashfs_cache_delete.patch