Выпуск систСмной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Glibc 2.36

ПослС ΡˆΠ΅ΡΡ‚ΠΈ мСсяцСв Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½ Ρ€Π΅Π»ΠΈΠ· систСмной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ GNU C Library (glibc) 2.36, которая ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ слСдуСт трСбованиям стандартов ISO C11 ΠΈ POSIX.1-2017. Π’ состав Π½ΠΎΠ²ΠΎΠ³ΠΎ выпуска Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ исправлСния ΠΎΡ‚ 59 Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ².

Из Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹Ρ… Π² Glibc 2.36 ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ:

  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π½ΠΎΠ²ΠΎΠ³ΠΎ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠΉ адрСсов DT_RELR (relative relocation), ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π΅Π³ΠΎ ΡΠΎΠΊΡ€Π°Ρ‚ΠΈΡ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠΉ Π² раздСляСмых ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°Ρ… ΠΈ исполняСмых Ρ„Π°ΠΉΠ»Π°Ρ…, скомпонованных Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ с PIE (Position-independent executables). Для использования поля DT_RELR Π² ELF-Ρ„Π°ΠΉΠ»Π°Ρ… Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠ° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΎΠΏΡ†ΠΈΠΈ «-z pack-relative-relocs» Π² ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²Ρ‰ΠΈΠΊΠ΅, появившаяся Π² выпускС Π½Π°Π±ΠΎΡ€Π° binutils 2.38.
  • Для ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Linux Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ pidfd_open, pidfd_getfd ΠΈ pidfd_send_signal, ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠ΅ доступ ΠΊ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ pidfd, ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‰Π΅ΠΉ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ ситуации с ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½Ρ‹ΠΌ использованиСм PID для Π±ΠΎΠ»Π΅Π΅ Ρ‚ΠΎΡ‡Π½ΠΎΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ процСссов, ΠΎΠ±Ρ€Π°Ρ‰Π°ΡŽΡ‰ΠΈΡ…ΡΡ ΠΊ отслСТиваСмым Ρ„Π°ΠΉΠ»Π°ΠΌ (pidfd связываСтся с ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΌ процСссом ΠΈ Π½Π΅ мСняСтся, Π² Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ PID ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ привязан ΠΊ Π΄Ρ€ΡƒΠ³ΠΎΠΌΡƒ процСссу послС Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ процСсса, ассоциированного с этим PID).
  • Для ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Linux Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° функция process_madvise(), ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π°Ρ ΠΎΠ΄Π½ΠΎΠΌΡƒ процСссу Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ систСмный Π²Ρ‹Π·ΠΎΠ² madvise() ΠΎΡ‚ ΠΈΠΌΠ΅Π½ΠΈ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ процСсса, идСнтифицируя Ρ†Π΅Π»Π΅Π²ΠΎΠΉ процСсс ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ pidfd. Π§Π΅Ρ€Π΅Π· madvise() ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ядро ΠΎΠ± особСнностях Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ для ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ управлСния ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ процСсса, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π½Π° основС ΠΏΠ΅Ρ€Π΅Π΄Π°Π½Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ядро ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠ½ΠΈΡ†ΠΈΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ высвобоТдСниС Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ свободной памяти. Π’Ρ‹Π·ΠΎΠ² madvise() Π΄Ρ€ΡƒΠ³ΠΈΠΌ процСссом ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π² ситуации, ΠΊΠΎΠ³Π΄Π° информация, нСобходимая для ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ, нСизвСстна Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΌΡƒ процСссу, Π° координируСтся ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΌ Ρ„ΠΎΠ½ΠΎΠ²Ρ‹ΠΌ ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΠΌ процСссом, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠ½ΠΈΡ†ΠΈΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠ·ΡŠΡΡ‚ΠΈΠ΅ Ρƒ процСссов Π½Π΅ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠΉ памяти.
  • Для ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Linux Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° функция process_mrelease(), ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π°Ρ ΡƒΡΠΊΠΎΡ€ΠΈΡ‚ΡŒ освобоТдСниС памяти процСсса, Π·Π°Π²Π΅Ρ€ΡˆΠ°ΡŽΡ‰Π΅Π³ΠΎ своё Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅. Π’ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Ρ… условиях освобоТдСниС рСсурсов ΠΈ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠ΅ процСсса выполняСтся Π½Π΅ ΠΌΠ³Π½ΠΎΠ²Π΅Π½Π½ΠΎ ΠΈ ΠΏΠΎ Ρ€Π°Π·Π½Ρ‹ΠΌ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π°ΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ ΠΌΠ΅ΡˆΠ°Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½ΠΈΡ€ΡƒΡŽΡ‰ΠΈΡ… Π² пространствС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ систСм Ρ€Π°Π½Π½Π΅Π³ΠΎ рСагирования Π½Π° Π½Π΅Ρ…Π²Π°Ρ‚ΠΊΡƒ памяти, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ oomd (прСдоставляСтся Π² systemd). ΠŸΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ Π²Ρ‹Π·ΠΎΠ²Π° process_mrelease ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Π΅ систСмы ΠΌΠΎΠ³ΡƒΡ‚ Π±ΠΎΠ»Π΅Π΅ прСдсказуСмо ΠΈΠ½ΠΈΡ†ΠΈΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ памяти ΠΎΡ‚ ΠΏΡ€ΠΈΠ½ΡƒΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π·Π°Π²Π΅Ρ€ΡˆΠ°Π΅ΠΌΡ‹Ρ… процСссов.
  • Π’ΠΎ Π²ΡΡ‚Ρ€ΠΎΠ΅Π½Π½ΡƒΡŽ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ DNS-Ρ€Π΅Π·ΠΎΠ»Π²Π΅Ρ€Π° Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΎΠΏΡ†ΠΈΠΈ «no-aaaa», ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π΅ΠΉ для упрощСния диагностики ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΡƒ DNS-запросов записСй AAAA (ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ адрСса IPv6 ΠΏΠΎ ΠΈΠΌΠ΅Π½ΠΈ хоста), Π² Ρ‚ΠΎΠΌ числС ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ NSS-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… getaddrinfo(). ΠžΠΏΡ†ΠΈΡ Π½Π΅ влияСт Π½Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ привязок IPv6-адрСсов, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹Ρ… Π² /etc/hosts ΠΈ Π²Ρ‹Π·ΠΎΠ²Ρ‹ getaddrinfo() с Ρ„Π»Π°Π³ΠΎΠΌ AI_PASSIVE.
  • Для ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Linux Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ fsopen, fsmount, move_mount, fsconfig, fspick, open_tree ΠΈ mount_setattr, ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠ΅ доступ ΠΊ Π½ΠΎΠ²ΠΎΠΌΡƒ API ядра для управлСния ΠΌΠΎΠ½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Ρ„Π°ΠΉΠ»ΠΎΠ²Ρ‹Ρ… систСм с ΡƒΡ‡Ρ‘Ρ‚ΠΎΠΌ пространств ΠΈΠΌΡ‘Π½ Ρ‚ΠΎΡ‡Π΅ΠΊ монтирования (mount namespaces). ΠŸΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Ρ€Π°Π·Π΄Π΅Π»ΡŒΠ½ΠΎ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Ρ€Π°Π·Π½Ρ‹Π΅ стадии монтирования (ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ супСрблок, ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎΠ± Π€Π‘, ΠΏΡ€ΠΈΠΌΠΎΠ½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, ΠΏΡ€ΠΈΠΊΡ€Π΅ΠΏΠΈΡ‚ΡŒ ΠΊ Ρ‚ΠΎΡ‡ΠΊΠ΅ монтирования), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π°Π½Π΅Π΅ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΠ»ΠΈΡΡŒ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΎΠ±Ρ‰Π΅ΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ mount(). Π Π°Π·Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ Ρ„ΡƒΠ½Π΅Ρ†ΠΈΠΈ Π΄Π°ΡŽΡ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ слоТныС сцСнарии монтирования ΠΈ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Ρ‚Π°ΠΊΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, ΠΊΠ°ΠΊ пСрСнастройка супСрблока, Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΎΠΏΡ†ΠΈΠΉ, ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Ρ‚ΠΎΡ‡ΠΊΠΈ монтирования ΠΈ пСрСнос Π² Π΄Ρ€ΡƒΠ³ΠΎΠ΅ пространство ΠΈΠΌΡ‘Π½. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Ρ€Π°Π·Π΄Π΅Π»ΡŒΠ½Π°Ρ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° позволяСт Ρ‚ΠΎΡ‡Π½ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Ρ‹ Π²Ρ‹Π²ΠΎΠ΄Π° ΠΊΠΎΠ΄ΠΎΠ² ошибок ΠΈ Π·Π°Π΄Π°Π²Π°Ρ‚ΡŒ нСсколько источников для многослойных Π€Π‘, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ overlayfs.
  • Π’ localedef Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ² с опрСдСлСниями Π»ΠΎΠΊΠ°Π»Π΅ΠΉ, поставляСмых Π² ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠ΅ UTF-8 вмСсто ASCII.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ для прСобразования ΠΌΠ½ΠΎΠ³ΠΎΠ±Π°ΠΉΡ‚ΠΎΠ²Ρ‹Ρ… ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΎΠΊ mbrtoc8 ΠΈ c8rtomb, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ спСцификациям ISO C2X N2653 ΠΈ C++20 P0482R6.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Ρ‚ΠΈΠΏΠ° char8_t, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½ΠΎΠ³ΠΎ Π² Ρ‡Π΅Ρ€Π½ΠΎΠ²ΠΈΠΊΠ΅ стандарта ISO C2X N2653.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ arc4random, arc4random_buf ΠΈ arc4random_uniform, ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠ΅ обвязки Π½Π°Π΄ систСмным Π²Ρ‹Π·ΠΎΠ²ΠΎΠΌ getrandom ΠΈ интСрфСйсом /dev/urandom, Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°ΡŽΡ‰ΠΈΠ΅ псСвдослучайныС числа высокого качСства.
  • ΠŸΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅ Linux Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ Π½Π°Π±ΠΎΡ€Π° ΠΊΠΎΠΌΠ°Π½Π΄ LoongArch, примСняСмой Π² процСссорах Loongson 3 5000 ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‰Π΅ΠΉ Π½ΠΎΠ²Ρ‹ΠΉ RISC ISA, ΠΏΠΎΡ…ΠΎΠΆΠΈΠΉ Π½Π° MIPS ΠΈ RISC-V. Π’ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΌ Π²ΠΈΠ΄Π΅ доступна Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° 64-разрядного Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π° LoongArch (LA64). Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ трСбуСтся Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ вСрсий binutils 2.38, GCC 12 ΠΈ ядра Linux 5.19.
  • ОбъявлСн ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠΈΠΌ ΠΈ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠ΄Π°Π»Ρ‘Π½ Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ выпускС ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ prelink, Π° Ρ‚Π°ΠΊΠΆΠ΅ связанныС с Π½ΠΈΠΌ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ окруТСния LD_TRACE_PRELINKING ΠΈ LD_USE_LOAD_BIAS ΠΈ возмоТности ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²Ρ‰ΠΈΠΊΠ°.
  • Π£Π΄Π°Π»Ρ‘Π½ ΠΊΠΎΠ΄ для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ вСрсии ядра Linux ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ окруТСния LD_ASSUME_KERNEL. Минимально поддСрТиваСмая ΠΏΡ€ΠΈ сборкС Glibc вСрсия ядра опрСдСляСтся Ρ‡Π΅Ρ€Π΅Π· ELF-ΠΏΠΎΠ»Π΅ NT_GNU_ABI_TAG.
  • На ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅ Linux ΠΏΡ€Π΅ΠΊΡ€Π°Ρ‰Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ окруТСния LD_LIBRARY_VERSION.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ