erofs: fix kvcalloc() misuse with __GFP_NOFAIL
authorGao Xiang <hsiangkao@linux.alibaba.com>
Tue, 10 Jan 2023 07:49:27 +0000 (15:49 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 1 Feb 2023 07:34:07 +0000 (08:34 +0100)
commit7b28a8920844042ca9f44934d8f15d210ef42c75
treef0c885b5287d8ca569feaf2d83d1ba016e1e23c3
parentd7c71f93cfac8553efc6eea2d97012616aa7ec4c
erofs: fix kvcalloc() misuse with __GFP_NOFAIL

[ Upstream commit 12724ba38992bd045e92a9a88a868a530f89d13e ]

As reported by syzbot [1], kvcalloc() cannot work with  __GFP_NOFAIL.
Let's use kcalloc() instead.

[1] https://lore.kernel.org/r/0000000000007796bd05f1852ec2@google.com

Reported-by: syzbot+c3729cda01706a04fb98@syzkaller.appspotmail.com
Fixes: fe3e5914e6dc ("erofs: try to leave (de)compressed_pages on stack if possible")
Fixes: 4f05687fd703 ("erofs: introduce struct z_erofs_decompress_backend")
Reviewed-by: Chao Yu <chao@kernel.org>
Signed-off-by: Gao Xiang <hsiangkao@linux.alibaba.com>
Link: https://lore.kernel.org/r/20230110074927.41651-1-hsiangkao@linux.alibaba.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
fs/erofs/zdata.c