CVE-2026-80892 PUBLISHED

erofs: cap LZMA stream pool size

Assigner: Linux
Reserved: 26.08.2026 Published: 04.09.2026 Updated: 04.09.2026

In the Linux kernel, the following vulnerability has been resolved:

erofs: cap LZMA stream pool size

fs/erofs/decompressor_lzma.c sizes the module-global MicroLZMA stream pool from num_possible_cpus() when the lzma_streams module parameter is unset, then z_erofs_load_lzma_config() preallocates one image-supplied dictionary per stream, accepting dictionaries up to 8 MiB. On high-CPU systems, a small EROFS image can pin hundreds of MiB of vmalloc-backed decoder state until the erofs module is unloaded.

Impact: An EROFS image mounted by the system can pin up to 8 MiB of vmalloc memory per LZMA stream, either as intended or unexpectedly.

Bound the default stream count by a new CONFIG_EROFS_FS_ZIP_LZMA_DEFAULT_MAX_STREAMS option, default 16, so the worst-case default preallocation is 128 MiB if the number of CPUs is no less than 16 while preserving the existing per-image dictionary limit. An explicit lzma_streams module parameter is still honoured as-is, so administrators who deliberately size the pool are not affected.

Product Status

Vendor Linux
Product Linux
Versions Default: unaffected
  • affected from 622ceaddb7649ca328832f50ba1400af778d75fa to 682cb3ece37fc5141e73bc726ccf4adb833e5189 (excl.)
  • affected from 622ceaddb7649ca328832f50ba1400af778d75fa to e8b3d09aa8889dda9be9cbb3d2f0218c4b9acde4 (excl.)
  • affected from 622ceaddb7649ca328832f50ba1400af778d75fa to 0c676903cb2a61992ded8e7907609cc6b0f11744 (excl.)
  • affected from 622ceaddb7649ca328832f50ba1400af778d75fa to 5aaa06dfc10f8398c8807453dbec738ea9af10e4 (excl.)
  • affected from 622ceaddb7649ca328832f50ba1400af778d75fa to e52da169b8c0d19bb2d803f2a07fe0e5a00462d6 (excl.)
  • affected from 622ceaddb7649ca328832f50ba1400af778d75fa to c9b47e6b23114e939b17f818471c7a46e59006e7 (excl.)
Vendor Linux
Product Linux
Versions Default: affected
  • Version 5.16 is affected
  • unaffected from 0 to 5.16 (excl.)
  • unaffected from 6.1.184 to 6.1.* (incl.)
  • unaffected from 6.6.151 to 6.6.* (incl.)
  • unaffected from 6.12.103 to 6.12.* (incl.)
  • unaffected from 6.18.44 to 6.18.* (incl.)
  • unaffected from 7.1.8 to 7.1.* (incl.)
  • unaffected from 7.2 to * (incl.)

References