Опубликованы ядра Linux 4.4.256 и 4.9.256 для тестирования переполнения 8-битового номера версии

6 февраля 2021 года

Грег Кроа-Хартман (Greg Kroah-Hartman) опубликовал выпуски ядра Linux 4.4.256 и 4.9.256, которые сформированы специально для проверки корректности обработки значения цифры версии, не укладывающееся в однобайтовое значение. Изменения в опубликованных выпусках ограничиваются только увеличением номера версии в Makefile для того, чтобы проверить не возникнет ли проблем в пространстве пользователя.

Изначально под счётчик номера версии в ядре было выделено 8-битовое значение, что делает вызов макроса KERNEL_VERSION(4, 4, 256) эквивалентным KERNEL_VERSION(4, 5, 0). Значение макроса KERNEL_VERSION, вычисляемого как "(((a) < 16) + ((b) < 8) + (c))", экспортируется в пространство пользователя в форме константы LINUX_VERSION_CODE, которая используется при проверке текущей версии ядра. Для ядра подобное переполнение не вызывает проблем, но значение LINUX_VERSION_CODE проверяется и некоторыми компонентами в пространстве пользователя, такими как GCC и Glibc, что потенциально может привести к непредсказуемым проблемам.

Изначально разработчики ядра планировали перейти на 16-разрядный счётчик вместо 8-разрядного, но это оказалось невозможным так как константа LINUX_VERSION_CODE, вычисляемая с использованием 8-битного значения, экспортируется в пространство пользователя и замена типа приведёт к нарушению ABI. Поэтому решено оставить переполнение и посмотреть как это отразиться на пространство пользователя. Разработчикам дистрибутивов предлагается сформировать тестовые сборки для проверки не возникнет ли проблем в пространстве пользователя при полной пересборке.

Источники

править


 
 
Creative Commons
Эта статья содержит материалы из статьи «Опубликованы ядра Linux 4.4.256 и 4.9.256 для тестирования переполнения 8-битового номера версии», опубликованной OpenNET и распространяющейся на условиях лицензии Creative Commons Attribution (CC BY) — указание автора, источник и лицензию.
 
Эта статья загружена автоматически ботом NewsBots и ещё не проверялась редакторами Викиновостей.
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.

Комментарии

Викиновости и Wikimedia Foundation не несут ответственности за любые материалы и точки зрения, находящиеся на странице и в разделе комментариев.