]> git.baikalelectronics.ru Git - kernel.git/commit
squashfs: don't call kmalloc in decompressors
authorPhillip Lougher <phillip@squashfs.org.uk>
Mon, 22 Aug 2022 21:54:30 +0000 (22:54 +0100)
committerAndrew Morton <akpm@linux-foundation.org>
Sun, 28 Aug 2022 21:02:45 +0000 (14:02 -0700)
commit4e879c7ca512c74f5a94b9df520d4e9fe40c6987
treeb5fea4fe8fed9c9688db989c1ce7a6dafc0a4759
parent280ac913ed97b2aa1b264113fc9135c8af29660b
squashfs: don't call kmalloc in decompressors

The decompressors may be called while in an atomic section.  So move the
kmalloc() out of this path, and into the "page actor" init function.

This fixes a regression introduced by commit
fbc9ddd68265 ("squashfs: extend "page actor" to handle missing pages")

Link: https://lkml.kernel.org/r/20220822215430.15933-1-phillip@squashfs.org.uk
Fixes: fbc9ddd68265 ("squashfs: extend "page actor" to handle missing pages")
Reported-by: Chris Murphy <lists@colorremedies.com>
Signed-off-by: Phillip Lougher <phillip@squashfs.org.uk>
Cc: <stable@vger.kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
fs/squashfs/file.c
fs/squashfs/file_direct.c
fs/squashfs/page_actor.c
fs/squashfs/page_actor.h