Пользователи систем, использующих механизм zRAM для хранения раздела подкачки в памяти в сжатом виде, столкнулись с проблемой, приводящей к сбою загрузки после обновления ядра Linux до версии 6.12. Проблема проявляется в Gentoo, Void и других дистрибутивах, поддерживающих zRAM и предлагающих пакеты с новыми версиями ядра.
Причиной сбоя стало включённое в ядро 6.12 изменение, добавляющее возможность настойки алгоритмов сжатия во время работы. Попутно в Kconfig была измена логика выбора доступных алгоритмов сжатия на этапе сборки ядра. Изменение привело к проблемам в дистрибутивах, полагавшихся на настройки по умолчанию и по отдельности не включивших все доступные алгоритмы zRAM в конфигурации Kconfig для ядра 6.12.
После обновления до ядра 6.12 в подобных дистрибутивах доступным для выбора остался только выставленный по умолчанию базовый алгоритм сжатия, а не все поддерживаемые алгоритмы.
Соответственно, при попытке включения zRAM с алгоритмов, не совпадающих с алгоритмом по умолчанию, возникал сбой при загрузке. Например, при выборе алгоритма lz4 при загрузке возникала ошибка “zramctl: /dev/zram0: failed to set algorithm: Invalid argument”, так как из алгоритмов оставалась только поддержка lzo, вместо ранее поддерживаемых lzo, lz4, lz4hc, 842 и zstd.
Проблема решается включением в Kconfig каждого бэкенда сжатия по отдельности (настройки CONFIG_ZRAM_BACKEND_* были добавлены в ядре 6.12):