LINUX.ORG.RU

glibc 2.44

 


1

2

25 июля 2026 года состоялся выпуск GNU C Library 2.44 — новой стабильной версии основной системной библиотеки большинства дистрибутивов GNU/Linux. Glibc предоставляет приложениям стандартные функции для работы с памятью, файлами, процессами, потоками, сетью и системными вызовами. Выпуск продолжает шестимесячный цикл разработки и ориентирован на стандарты ISO C23 и POSIX.1-2024.

Одним из главных новшеств стал файл /etc/tunables.conf, через который администраторы смогут задавать параметры glibc сразу для всей системы. После изменения файла необходимо выполнить ldconfig. Ранее подобные настройки обычно передавались через переменную окружения GLIBC_TUNABLES. Разработчики предупреждают, что формат и расположение нового файла пока не считаются стабильным интерфейсом и в будущих версиях могут измениться.

Основные изменения glibc 2.44:

  • Управление Transparent Huge Pages. Добавлен параметр glibc.elf.thp, позволяющий использовать Transparent Huge Pages для отображения доступных только для чтения сегментов. Скорректировано и применение THP в распределителе памяти malloc.
  • Улучшение математических функций. Из проекта CORE-MATH перенесены оптимизированные и корректно округляемые реализации cosh, sinh и tanh, а также ряд улучшений для уже существующих функций. Новая реализация cosh с использованием FMA в некоторых сценариях обеспечивает прирост производительности примерно на 35%.
  • Оптимизации для AArch64. Для SVE и AdvSIMD векторизована обработка особых случаев в функциях log, exp, sin, sinh, cosh, asinh, acosh и atanh. Также усилена защита Guarded Control Stack: после включения GCS приложение больше не сможет отключить или изменить отдельные операции теневого стека через prctl.
  • Оптимизации для RISC-V. Реализованы использующие векторное расширение варианты memcpy, memmove, memcmp, strlen, strcmp, strcpy, strncpy, strchr, strrchr и других функций обработки строк и памяти.
  • Поддержка LoongArch32. В библиотеку добавлена начальная поддержка 32-разрядного варианта архитектуры LoongArch.
  • Статические PIE для ARM. Добавлена поддержка статически скомпонованных позиционно-независимых исполняемых файлов для arm-*-linux-gnueabi.
  • Изменения для C++26. Макрос assert стал вариативным и теперь может принимать более сложные выражения, содержащие запятые.
  • Предварительно подготовленный кэш загрузчика. ldconfig получил возможность устанавливать заранее сформированные файлы ld.so.cache.
  • Новая локаль. Добавлена локаль hrx_BR для языка хунсрик, распространённого среди части населения Бразилии.

Одновременно прекращена поддержка 31-разрядной конфигурации s390-linux-gnu. Удалены параметры сборки --enable-memory-tagging и --enable-static-nss: первый управлял экспериментальной реализацией маркировки памяти для AArch64, которая также удалена, а второй фактически не влиял на сборку со времён glibc 2.33.

В glibc 2.44 исправлены три уязвимости. CVE-2026-4437 и CVE-2026-4438 связаны с некорректной обработкой DNS-ответов функциями gethostbyaddr и gethostbyaddr_r. CVE-2026-4046 позволяла вызвать аварийное завершение iconv при обработке специально подготовленных недоверенных данных. Помимо этого устранено несколько десятков ошибок в динамическом загрузчике, malloc, stdio, NSS, обработке локалей и статически скомпонованных программах.

Исходные тексты glibc 2.44 доступны на FTP-серверах проекта GNU. В дальнейшем библиотека должна появиться в новых выпусках дистрибутивов, включая Fedora 45 и Ubuntu 26.10.

>>> Источник

★★★★★

Проверено: cetjs2 ()
Ответ на: комментарий от Jaeger1999

И почему я не сомневался, что первым же комментарием в сишном треде будет комментарий от раст-истерички с криками «нинужна!»

PPP328 ★★★★★
()

главных новшеств стал файл /etc/tunables.conf

почему не
/etc/glibс_xxx.conf ???
откуда такая любовь к «бесконтекстному поименованию»? может я чего не знаю?! :о)

sunjob ★★★★★
()
Последнее исправление: sunjob (всего исправлений: 1)
Ответ на: комментарий от PPP328

И почему я не сомневался, что первым же комментарием в сишном треде будет комментарий от раст-истерички с криками «нинужна!»

Раз вы не высказали это сомнение до появления первого комментария, значит не было.

Шутка юмора.

VIT ★★★
()

по changelog прям-таки хороший релиз. Про CORE-MATH очень понравилось, прямо вкусно.

чуть подождать когда закроют свеже-внесённые баги и радоваться жизни :-)

MKuznetsov ★★★★★
()
Ответ на: комментарий от unclestephen

ну да, можно предположить что нагенерили ии-лапши, не провели ревью и сразу в «продакш»... ну тогда это очень печально :о(

sunjob ★★★★★
()

ну вы там тестируйте, а я пока на хорошо-запатченной предыдущей версии посижу

lbzip2: stdin: compression ratio is 1:4.636, space savings is 78.43%
>>> sys-libs/glibc-2.43-r2 merged.
>>> Regenerating /etc/ld.so.cache...

>>> Completed (1 of 1) sys-libs/glibc-2.43-r2::gentoo

Sylvia ★★★★★
()
Ответ на: комментарий от sunjob

Они придерживаются очень строгих правил генерирования кода - не более пяти строк за раз. Коммиттер несёт персональную ответственность за чистоту лицензии и качество кода. Поэтому шух-мух ии-лапша и в прод сомнительна.

VIT ★★★
()
Ответ на: комментарий от VIT

хорошо! какие ваши предположения по поводу

откуда такая любовь к «бесконтекстному поименованию»?

sunjob ★★★★★
()
Ответ на: комментарий от sunjob

откуда такая любовь к «бесконтекстному поименованию»?

Наверное с позиции разработчиков glibc - файлы напрямую в /etc для них, а для остальных - подпапки

GPFault ★★★
()
Ответ на: комментарий от GPFault

видите разницу?

/etc/tunables.conf
/etc/glibс_tune.conf

+

файлы напрямую в /etc

/etc - общесистемные, не требующие более одного файла
/etc/subdir - требующие бОлее сложной иерархии/файлов
думают так :о)

sunjob ★★★★★
()
Последнее исправление: sunjob (всего исправлений: 2)
Ответ на: комментарий от fat-II

Лучше пусть навайбкодит. Всё равно растаманскиц синтаксис не для людей.

И обязательно пусть притянет штук 50 первичных зависимостей, а те каждая ещё по 50 и так до бесконечности. Чтобы каждый школьник, написавший leftpad принял участие.

PPP328 ★★★★★
()
Ответ на: комментарий от Ololo_Trololo

формат и расположение нового файла пока не считаются стабильным интерфейсом и
в будущих версиях могут измениться.

т.е. у фичи пилотный запуск, поэтому - для тестировщиков и продвинутых (смотрим код и рулим)
не айс, но в нашем «любимом огороде» - так уже давно.
согласен, хотелось-бы чуть «поближе к человеку» :о)

п.с. толь дело в нашем любимом лазаре, все (ну почти все) понятно и на месте! :о)

sunjob ★★★★★
()
Последнее исправление: sunjob (всего исправлений: 2)
Ответ на: комментарий от devl547

не мои патчи, гентушные ) баги закрывают и CVE бэкпортами патчей из апстрима,
всё как везде в других нормальных дистрах

Sylvia ★★★★★
()
Ответ на: комментарий от PPP328

И почему я не сомневался, что первым же комментарием в сишном треде будет комментарий от раст-истерички с криками «нинужна!»

«Растеричка»?.. ;))

Somebody ★★★★
()
Ответ на: комментарий от Shadow

И нормальные libc у *BSD.

Во-первых, без гнутых quality of life расширений, типа canonicalize_file_name или strerrordesc_np довольно грустно.

Во-вторых, GNUтые расширения аккуратно защищены feature guard’ом, тогда как у BSD какой-нибудь shm_create_largepage болтается в открытую, и скомпилив программу под BSD у тебя нет никакой гарантии, что она соберётся под другие nix-системы.

У GNU инженерная культура на уровень выше.

r--r--r--
()
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.