summaryrefslogtreecommitdiff
path: root/tools/perf/scripts/python/bin/stackcollapse-record
diff options
context:
space:
mode:
authorRan Hongyun <ranhongyun1@huawei.com>2026-07-13 19:55:25 +0800
committerChristian Brauner <brauner@kernel.org>2026-09-16 10:26:47 +0200
commit1f7745fb3580152ca902ef181b605f33cabfb1d0 (patch)
tree6f1fe5c9fb273eee61158d52d6c9de7d2eac598c /tools/perf/scripts/python/bin/stackcollapse-record
parent1abd643f3783ea8f8e273c18697ff0413aa92dc7 (diff)
downloadlinux-next-1f7745fb3580152ca902ef181b605f33cabfb1d0.tar.gz
linux-next-1f7745fb3580152ca902ef181b605f33cabfb1d0.zip
squashfs: Add dictionary size range check to prevent shift-out-of-bounds
When an abnormal SquashFS image (COMP_OPTS flag is 1 but dictionary size is 0) is mounted, and performs shift operations using dictionarysize, the shift exponent is -1, causing a shift-out-of-bounds. Detail as below: squashfs_comp_opts(msblk, buffer, length) squashfs_xz_comp_opts() if (comp_opts) n = ffs(opts->dict_size) - 1;<----opts->dict_size=0, n=-1 if (opts->dict_size != (1 << n) && opts->dict_size != (1 << n) + (1 << (n + 1))) <----shift-out-of-bounds Fix it by adding a dictionary size range check before the shift operation. Fixes: ff750311d30a ("Squashfs: add compression options support to xz decompressor") Signed-off-by: Ran Hongyun <ranhongyun1@huawei.com> Link: https://patch.msgid.link/20260713115525.2661734-1-ranhongyun1@huawei.com Reviewed-by: Phillip Lougher <phillip@squashfs.org.uk> Reviewed-by: Zhihao Cheng <chengzhihao1@huawei.com> Signed-off-by: Christian Brauner (Amutable) <brauner@kernel.org>
Diffstat (limited to 'tools/perf/scripts/python/bin/stackcollapse-record')
0 files changed, 0 insertions, 0 deletions