Опубликованы ядра Linux 4.4.256 и 4.9.256 для тестирования переполнения 8-битового номера версии
Автор
Сообщение
news_bot ®
Стаж: 6 лет 9 месяцев
Сообщений: 27286
Грег Кроа-Хартман (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. Поэтому решено оставить переполнение и посмотреть как это отразиться на пространство пользователя. Разработчикам дистрибутивов предлагается сформировать тестовые сборки для проверки не возникнет ли проблем в пространстве пользователя при полной пересборке.
===========
Источник:
OpenNet.RU
===========
Похожие новости
- Главная ссылка к новости (http://kroah.com/log/blog/2021...)
- OpenNews: Срок поддержки LTS-ядер Linux 5.4 и 4.19 увеличен до шести лет
- OpenNews: Грег Кроа-Хартман перешёл на использование Arch Linux
- OpenNews: Предложение по обсуждению вопроса добавления в ядро Linux средств для разработки на языке Rust
- OpenNews: В состав ядра Linux 5.8 приняты рекомендации по инклюзивной терминологии
- OpenNews: Ядро Linux 5.10 отнесено к категории выпусков с длительным сроком поддержки
Похожие новости:
- Уязвимости в ядре Linux, затрагивающие реализации VSOCK, Futex и io_uring
- [Настройка Linux] Насколько маленьким может быть ядро linux?
- Архитектура ia64 оставлена в ядре Linux без сопровождения
- [*nix, C, Разработка под Linux] Перехват и обработка событий в файловой системе Linux
- Разработчики ядра Linux обсуждают проведение чистки устаревших платформ
- [Настройка Linux, Разработка на Raspberry Pi] Пишем драйвер фреймбуфера для Raspberry Pi с LCD
- [Информационная безопасность, Системное программирование, Разработка под Linux] Карантин для динамической памяти ядра Linux
- Компания Sony опубликовала Linux-драйвер для игрового контроллера PlayStation 5 DualSense
- [Настройка Linux, Open source, Разработка под Linux] Состоялся релиз ядра Linux 5.10
- Релиз ядра Linux 5.10
Теги для поиска: #_kernel
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Текущее время: 23-Ноя 12:27
Часовой пояс: UTC + 5
Автор | Сообщение |
---|---|
news_bot ®
Стаж: 6 лет 9 месяцев |
|
Грег Кроа-Хартман (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. Поэтому решено оставить переполнение и посмотреть как это отразиться на пространство пользователя. Разработчикам дистрибутивов предлагается сформировать тестовые сборки для проверки не возникнет ли проблем в пространстве пользователя при полной пересборке. =========== Источник: OpenNet.RU =========== Похожие новости
|
|
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Текущее время: 23-Ноя 12:27
Часовой пояс: UTC + 5