Π Π΅Π»ΠΈΠ· ядра Linux 6.14

ПослС Π΄Π²ΡƒΡ… мСсяцСв Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Линус Π’ΠΎΡ€Π²Π°Π»ΡŒΠ΄Ρ прСдставил Ρ€Π΅Π»ΠΈΠ· ядра Linux 6.14. Π‘Ρ€Π΅Π΄ΠΈ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π·Π°ΠΌΠ΅Ρ‚Π½Ρ‹Ρ… ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ: Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ ntsync c ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Π°ΠΌΠΈ синхронизации Windows NT, настройка балансировки ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ чтСния Π² Btrfs RAID1, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° reflink Π² XFS Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ realtime, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π½Π΅ΠΊΡΡˆΠΈΡ€ΡƒΠ΅ΠΌΠΎΠ³ΠΎ Π±ΡƒΡ„Π΅Ρ€ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Π²Π²ΠΎΠ΄Π°/Π²Ρ‹Π²ΠΎΠ΄Π°, dmem cgroup для ограничСния памяти GPU, задСйствованиС io_uring Π² FUSE, Π΄Π΅Π»Π΅Π³ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠ² Π² NFS, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π°Ρ‚ΠΎΠΌΠ°Ρ€Π½ΠΎΠΉ записи Π² Device mapper, ускорСниС символичСских ссылок, ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ выполнСния скриптов, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Ρ‡ΠΈΠΏΠΎΠ² Qualcomm Snapdragon 8 Elite, Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ для NPU AMD.

Π’ Π½ΠΎΠ²ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ принято 12115 исправлСний ΠΎΡ‚ 1984 Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ², Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΏΠ°Ρ‚Ρ‡Π° β€” 39 ΠœΠ‘ (измСнСния Π·Π°Ρ‚Ρ€ΠΎΠ½ΡƒΠ»ΠΈ 10170 Ρ„Π°ΠΉΠ»ΠΎΠ², Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΎ 531586 строк ΠΊΠΎΠ΄Π°, ΡƒΠ΄Π°Π»Π΅Π½ΠΎ 235999 строк). Π’ ΠΏΡ€ΠΎΡˆΠ»ΠΎΠΌ выпускС Π±Ρ‹Π»ΠΎ 14172 исправлСний ΠΎΡ‚ 2086 Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ², Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΏΠ°Ρ‚Ρ‡Π° β€” 46 ΠœΠ‘. Около 41% всСх прСдставлСнных Π² 6.14 ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ связаны с Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π°ΠΌΠΈ устройств, ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ 13% ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΈΠΌΠ΅ΡŽΡ‚ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ ΠΊ обновлСнию ΠΊΠΎΠ΄Π°, спСцифичного для Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹Ρ… Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€, 14% связано с сСтСвым стСком, 7% β€” с Ρ„Π°ΠΉΠ»ΠΎΠ²Ρ‹ΠΌΠΈ систСмами ΠΈ 4% c Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΌΠΈ подсистСмами ядра.

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ Π½ΠΎΠ²ΡˆΠ΅ΡΡ‚Π²Π° Π² ядрС 6.14:

  • Дисковая подсистСма, Π²Π²ΠΎΠ΄/Π²Ρ‹Π²ΠΎΠ΄ ΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ²Ρ‹Π΅ систСмы
    • Π’ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмС Btrfs появилась ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π½ΠΎΠ²Ρ‹Ρ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² балансировки ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ чтСния ΠΌΠ΅ΠΆΠ΄Ρƒ накопитСлями, входящими Π² массив RAID1. Помимо Ρ€Π°Π½Π΅Π΅ Π΄Π΅ΠΉΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ распрСдСлСния Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Π½Π° основС ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ² процСссов (pid), Π² Π½ΠΎΠ²ΠΎΠΉ вСрсии ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Ρ‹ Ρ‚Ρ€ΠΈ Π½ΠΎΠ²Ρ‹Ρ… Ρ€Π΅ΠΆΠΈΠΌΠ° балансировки: Β«rotationΒ» (Ρ€Π°Π²Π½ΠΎΠΌΠ΅Ρ€Π½ΠΎΠ΅ распрСдСлСниС Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΏΠΎ всСм накопитСлям, Ρ€Π΅ΠΆΠΈΠΌ Π²ΠΊΠ»ΡŽΡ‡Ρ‘Π½ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ); Β«latencyΒ» (распрСдСлСниС с ΡƒΡ‡Ρ‘Ρ‚ΠΎΠΌ Π·Π°Π΄Π΅Ρ€ΠΆΠ΅ΠΊ, ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ΠΌ ΠΏΡ€ΠΈ сбоях ΠΈΠ»ΠΈ Π½Π΅ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Π΅ Π½Π°ΠΊΠΎΠΏΠΈΡ‚Π΅Π»Π΅ΠΉ); devid (Ρ€ΡƒΡ‡Π½ΠΎΠ΅ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅). Для измСнСния Ρ€Π΅ΠΆΠΈΠΌΠ° балансировки Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ интСрфСйс Β«/sys/fs/btrfs/<UUID>/read_policyΒ». Π‘Ρ€Π΅Π΄ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² Btrfs β€” рСализация ioctl FS_IOC_READ_VERITY_METADATA.
    • Π”ΠΎΠ±Π°Π²Π»Π΅Π½ Ρ€Π΅ΠΆΠΈΠΌ Π½Π΅ΠΊΡΡˆΠΈΡ€ΡƒΠ΅ΠΌΠΎΠ³ΠΎ Π±ΡƒΡ„Π΅Ρ€ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Π²Π²ΠΎΠ΄Π°/Π²Ρ‹Π²ΠΎΠ΄Π°, ΠΏΡ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π΄Π°Π½Π½Ρ‹Π΅ ΡƒΠ΄Π°Π»ΡΡŽΡ‚ΡΡ ΠΈΠ· страничного кэша сразу послС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½Ρ‹ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΏΠΎ ΠΈΡ… Ρ‡Ρ‚Π΅Π½ΠΈΡŽ ΠΈΠ»ΠΈ записи. ИзмСнСниС ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ΠΌ ΠΏΡ€ΠΈ использовании ΠΎΡ‡Π΅Π½ΡŒ быстрых устройств хранСния, ΠΊΡΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ Π² ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠΉ памяти ΠΈΠ·Π±Ρ‹Ρ‚ΠΎΡ‡Π½ΠΎ. Для Ρ‚Π°ΠΊΠΈΡ… устройств Π½ΠΎΠ²Ρ‹ΠΉ Ρ€Π΅ΠΆΠΈΠΌ позволяСт ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ излишнСС расходованиС памяти страничным кэшСм Π½Π΅ прибСгая ΠΊ использованию услоТнённого API прямого Π²Π²ΠΎΠ΄Π°/Π²Ρ‹Π²ΠΎΠ΄Π° (Direct I/O).
    • Π’ fsnotify, ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ отслСТивания ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² Π€Π‘, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΎ Π½ΠΎΠ²ΠΎΠ΅ событиС FS_PRE_ACCESS, Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΠΎΠ΅ Π½Π° стадии ΠΏΠ΅Ρ€Π΅Π΄ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ΠΌ ΠΊ содСрТимому Ρ„Π°ΠΉΠ»Π°. Π‘ΠΎΠ±Ρ‹Ρ‚ΠΈΠ΅ обрабатываСтся Π² синхронном Ρ€Π΅ΠΆΠΈΠΌΠ΅, Ρ‚.Π΅. ядро отправляСт событиС ΠΈ ΠΎΠΆΠΈΠ΄Π°Π΅Ρ‚ получСния ΠΎΡ‚Π²Π΅Ρ‚Π°. Если ΠΎΡ‚Π²Π΅Ρ‚ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ β€” опСрация выполняСтся, Π° Ссли ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΡ‘Π» сбой β€” систСмный Π²Ρ‹Π·ΠΎΠ² Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π² пространство ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΊΠΎΠ΄ ошибки. ΠŸΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ FS_PRE_ACCESS процСссом Π² пространствС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»Π° ΠΏΠΎ ΠΌΠ΅Ρ€Π΅ готовности Π΄Π°Π½Π½Ρ‹Ρ… Π² ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎΠΌ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅.
    • Π’ подсистСму FUSE, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΡƒΡŽ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ²Ρ‹Ρ… систСм Π² пространствС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ ядром ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠΌ Π² пространствС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ с использованиСм ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° Π²Π²ΠΎΠ΄Π°/Π²Ρ‹Π²ΠΎΠ΄Π° io_uring. ИзмСнСниС позволяСт ΠΏΠΎΠ²Ρ‹ΡΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ FUSE Π·Π° счёт сокращСния ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ контСкста ΠΌΠ΅ΠΆΠ΄Ρƒ ядром ΠΈ пространством ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ.
    • Π’ Ρ„Π°ΠΉΠ»ΠΎΠ²ΡƒΡŽ систСму XFS Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ использования ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠ³ΠΎ ΠΌΠ°ΠΏΠΏΠΈΠ½Π³Π° (rmap, reverse-mapping) Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с прСдсказуСмыми Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠ°ΠΌΠΈ (Β«realtime deviceΒ»). ΠžΠ±Ρ€Π°Ρ‚Π½Ρ‹ΠΉ ΠΌΠ°ΠΏΠΏΠΈΠ½Π³ позволяСт ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ для хранСния ΠΊΠ°ΠΊΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΉ Π±Π»ΠΎΠΊ Π½Π° устройствС хранСния. ΠŸΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ rmap Π² XFS для realtime-Ρ€Π΅ΠΆΠΈΠΌΠ° Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ reflink, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π΅ΠΉ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΊΠΎΠΏΠΈΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΏΡƒΡ‚Ρ‘ΠΌ клонирования ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»Π° ΠΈ создания ссылки Π½Π° ΡƒΠΆΠ΅ ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠ΅ΡΡ Π΄Π°Π½Π½Ρ‹Π΅ Π±Π΅Π· ΠΈΡ… фактичСского копирования.
    • Π’ VFS Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ ΠΊΡΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ€Π°Π·ΠΌΠ΅Ρ€Π° символичСских ссылок, позволившСС Π½Π° 1.5% ΡƒΡΠΊΠΎΡ€ΠΈΡ‚ΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ readlink (Π² тСстС с /initrd.img Π² ext4). ΠšΡΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΎ Π² Π€Π‘ ext4 ΠΈ tmpfs.
    • Π’ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ NFSv4.2 Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° дСлСгирования Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠ² Ρ„Π°ΠΉΠ»ΠΎΠ², ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π°Ρ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ Ρ‚Π°ΠΊΠΈΠΌΠΈ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π°ΠΌΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ², ΠΊΠ°ΠΊ врСмя измСнСния (mtime), Π½Π° сторонС NFS-ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°, Π±Π΅Π· нСобходимости сброса ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π½Π° сСрвСр. Π’ NFS Ρ‚Π°ΠΊΠΆΠ΅ ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° Β«LOCALIOΒ», ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π΅Π³ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ находятся Π»ΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ ΠΈ сСрвСр NFS Π½Π° ΠΎΠ΄Π½ΠΎΠΌ ΠΈ Ρ‚ΠΎΠΌ ΠΆΠ΅ хостС, для задСйствования ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΉ, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ использованиС ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠΌ прямого Π²Π²ΠΎΠ΄Π°/Π²Ρ‹Π²ΠΎΠ΄Π° (Direct I/O).
    • ΠŸΠΎΠ²Ρ‹ΡˆΠ΅Π½Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ чтСния Π² Ρ„Π°ΠΉΠ»ΠΎΠ²Ρ‹Ρ… систСмах NETFS, CIFS ΠΈ AFS (Andrew File System).
    • Π’ Squashfs Π²ΠΊΠ»ΡŽΡ‡Ρ‘Π½ Ρ€Π΅ΠΆΠΈΠΌ прямой Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Π±Π»ΠΎΠΊΠΎΠ² Π² страничный кэш (SQUASHFS_FILE_DIRECT), ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΉ ΠΎΠ±ΠΎΠΉΡ‚ΠΈΡΡŒ Π±Π΅Π· ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ кэша read_page. ИзмСнСниС ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ»ΠΎ ΡΠΎΠΊΡ€Π°Ρ‚ΠΈΡ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ€ памяти, потрСбляСмой ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ Squashfs.
    • Π’ систСмном Π²Ρ‹Π·ΠΎΠ²Π΅ statx() Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ Ρ„Π»Π°Π³ STATX_DIO_READ_ALIGN, для опрСдСлСния Ρ‚Ρ€Π΅Π±ΡƒΠ΅ΠΌΠΎΠ³ΠΎ выравнивания для ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ чтСния ΠΈΠ· Ρ„Π°ΠΉΠ»Π°.
    • Π’ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмС Bcachefs ΠΎΠ±Π½ΠΎΠ²Π»Ρ‘Π½ ΠΈ стабилизирован Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ дисковых структур. Π›ΡŽΠ±Ρ‹Π΅ дальнСйшиС измСнСния Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° Π±ΡƒΠ΄ΡƒΡ‚ отнСсСны ΠΊ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΈ Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΈ Π±ΡƒΠ΄ΡƒΡ‚ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒΡΡ Π² Ρ„ΠΎΡ€ΠΌΠ΅ ΠΎΠΏΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΉ. Π—Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½Π° ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ цСлостности Π€Π‘. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π² Bcachefs ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½Π° Ρ€Π°Π±ΠΎΡ‚Π° Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для чтСния; устранСны ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹, приводящиС ΠΊ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΡŽ ΠΊ памяти послС Π΅Ρ‘ освобоТдСния (use after free); Ρ€Π΅ΡˆΠ΅Π½Ρ‹ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ c reflink-указатСлями Π² fsck; исправлСна ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° пСрСзапуска Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ.
    • Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Ρ‘Π½ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ md-linear, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½Ρ‹ΠΉ для объСдинСния Π±Π»ΠΎΡ‡Π½Ρ‹Ρ… устройств. Π”Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ Ρ€Π°Π½Π΅Π΅ Π±Ρ‹Π» объявлСн ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠΈΠΌ ΠΈ ΡƒΠ΄Π°Π»Ρ‘Π½ ΠΈΠ· ядра 6.8, Π½ΠΎ ΠΊΠ°ΠΊ оказалось ΠΎΠ½ Π±Ρ‹Π» вострСбован ΠΈ поэтому Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ восстановлСн.
    • Π€Π°ΠΉΠ»ΠΎΠ²Ρ‹Π΅ систСмы F2FS ΠΈ SQUASHFS ΠΏΠ΅Ρ€Π΅Π²Π΅Π΄Π΅Π½Ρ‹ Π½Π° использованиС Ρ„ΠΎΠ»ΠΈΠ°Π½Ρ‚ΠΎΠ² страниц памяти (page folios).
    • Π€Π°ΠΉΠ»ΠΎΠ²Ρ‹Π΅ систСмы OCFS2 ΠΈ DLMFS ΠΏΠ΅Ρ€Π΅Π²Π΅Π΄Π΅Π½Ρ‹ Π½Π° использованиС Π½ΠΎΠ²ΠΎΠ³ΠΎ API монтирования Ρ€Π°Π·Π΄Π΅Π»ΠΎΠ².
    • Π’ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π΅ null_blk Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ Β«rotationalΒ», выставляСмый Ρ‡Π΅Ρ€Π΅Π· configfs ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΉ ΡΠΈΠΌΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ с устройством Π½Π° Π±Π°Π·Π΅ Π²Ρ€Π°Ρ‰Π°ΡŽΡ‰ΠΈΡ…ΡΡ дисков для упрощСния тСстирования Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ядра.
    • Π’ систСмС Device mapper ΠΈ Π² модулях dm-mirror, dm-io, dm-table, dm-linear, dm-stripe ΠΈ dm-raid1 Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π°Ρ‚ΠΎΠΌΠ°Ρ€Π½ΠΎΠΉ записи.
  • ΠŸΠ°ΠΌΡΡ‚ΡŒ ΠΈ систСмныС сСрвисы
    • Π—Π°Π²Π΅Ρ€ΡˆΠ΅Π½Π° интСграция Π² ядро Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π° ntsync, Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‰Π΅Π³ΠΎ символьноС устройство /dev/ntsync ΠΈ Π½Π°Π±ΠΎΡ€ ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²ΠΎΠ² для синхронизации, примСняСмых Π² ядрС Windows NT. РСализация ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²ΠΎΠ² Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ ядра позволяСт сущСствСнно ΠΏΠΎΠ΄Π½ΡΡ‚ΡŒ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Windows-ΠΈΠ³Ρ€, запускаСмых ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ Wine. ΠŸΡ€ΠΈΡ€ΠΎΡΡ‚ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ достигаСтся благодаря избавлСнию ΠΎΡ‚ Π½Π°ΠΊΠ»Π°Π΄Π½Ρ‹Ρ… расходов, связанных с ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ RPC Π² пространствС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π° для ядра Linux ΠΎΠ±ΡŠΡΡΠ½ΡΠ΅Ρ‚ΡΡ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π½ΠΎΡΡ‚ΡŒΡŽ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠΉ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ API синхронизации NT ΠΏΠΎΠ²Π΅Ρ€Ρ… ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²ΠΎΠ² Π² ядрС.
    • Π”ΠΎΠ±Π°Π²Π»Π΅Π½ Π½ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ cgroup DMEM для Ρ€Π°Π·Π΄Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΡƒΡ‡Ρ‘Ρ‚Π° областСй памяти устройств, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ GPU. DMEM позволяСт ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ cgroup для Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΡ… с GPU, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ΠΈ ΠΌΠΎΠ³Π»ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ Π½Π΅ влияя Π΄Ρ€ΡƒΠ³ Π½Π° Π΄Ρ€ΡƒΠ³Π°. Новая Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Ρ€Π΅ΡˆΠ°Π΅Ρ‚ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ с ΠΏΡ€ΠΈΠ½ΡƒΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠ΅ΠΌ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ с GPU ΠΏΡ€ΠΈ исчСрпании доступной памяти, благодаря ΡƒΡ‡Ρ‘Ρ‚Ρƒ ΠΎΡ‚Ρ€Π°ΠΆΡ‘Π½Π½ΠΎΠΉ памяти GPU ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠΉ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π°ΠΌΠΈ памяти CPU Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… cgroup.
    • ВнСсСны ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΠΎ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ сброса (flush) кэша TLB (Translation Lookaside Buffer), примСняСмого для ускорСния прСобразования Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… адрСсов Π² физичСскиС. Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π½Ρ‹Π΅ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ сводятся ΠΊ ΠΎΡ‚Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠΌΡƒ обновлСнию Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… структур Π΄Π°Π½Π½Ρ‹Ρ… Π²ΠΎ врСмя ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ контСкста, Ρ‡Ρ‚ΠΎ позволяСт ΠΏΠΎΠ²Ρ‹ΡΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΈ ΠΏΡ€ΠΎΡ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠΈ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… тСстов.
    • ΠŸΠΎΠ²Ρ‹ΡˆΠ΅Π½Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° MGLRU (Multi-Generational LRU), примСняСмый для опрСдСлСния ΠΊΠ°ΠΊΠΈΠ΅ страницы памяти ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ, Π° ΠΊΠ°ΠΊΠΈΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹Ρ‚Π΅ΡΠ½ΠΈΡ‚ΡŒ Π² Ρ€Π°Π·Π΄Π΅Π» ΠΏΠΎΠ΄ΠΊΠ°Ρ‡ΠΊΠΈ.
    • ΠŸΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½ пСрСнос ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΈΠ· Π²Π΅Ρ‚ΠΊΠΈ Rust-for-Linux, связанных с использованиСм языка Rust Π² качСствС Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ языка для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΎΠ² ΠΈ ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ ядра (ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Rust Π½Π΅ Π°ΠΊΡ‚ΠΈΠ²Π½Π° ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, ΠΈ Π½Π΅ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊΠΎ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡŽ Rust Π² число ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… сборочных зависимостСй ΠΊ ядру). ΠŸΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ использования Π² ΠΊΠΎΠ΄Π΅ ядра макроса Β«derive(CoercePointee)Β», ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΡƒΠΌΠ½Ρ‹Π΅ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ с trait-ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ. Π’ состав ядра Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ Rust-обвязки для PCI, ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌ, Open Firmware, ΡΠΈΠΌΠ²ΠΎΠ»ΡŒΠ½Ρ‹Ρ… устройств ΠΈ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Π²Π²ΠΎΠ΄Π°/Π²Ρ‹Π²ΠΎΠ΄Π°. Π“Ρ€Π΅Π³ ΠšΡ€ΠΎΠ°-Π₯Π°Ρ€Ρ‚ΠΌΠ°Π½ (Greg Kroah-Hartman), ΠΎΡ‚Π²Π΅Ρ‡Π°ΡŽΡ‰ΠΈΠΉ Π·Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎΠΉ Π²Π΅Ρ‚ΠΊΠΈ ядра Linux, ΠΎΡ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€ΠΈΠ·ΠΎΠ²Π°Π» Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π΅ состояниС, ΠΊΠ°ΠΊ Β«ΠΏΠΎΡ‡Ρ‚ΠΈ Π³ΠΎΡ‚ΠΎΠ²Π½ΠΎΡΡ‚ΡŒ ΠΊ написанию Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π° Π½Π° RustΒ».
    • Π’ сборочных сцСнариях ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ Π½ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ вСрсий ΠΎΡ‚Π»Π°Π΄ΠΎΡ‡Π½Ρ‹Ρ… символов для Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅ΠΌΡ‹Ρ… ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΈΠ· ΠΎΡ‚Π»Π°Π΄ΠΎΡ‡Π½Ρ‹Ρ… записСй Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ DWARF, Π° Π½Π΅ Ρ€Π°Π·Π±ΠΈΡ€Π°Π΅Ρ‚ исходный ΠΊΠΎΠ΄ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ. ИзмСнСниС позволяСт ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ вСрсионированиС ΠΎΡ‚Π»Π°Π΄ΠΎΡ‡Π½Ρ‹Ρ… символов для ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ, написанных Π½Π° языкС Rust. Бтарая рСализация Ρ‚ΠΎΠΆΠ΅ оставлСна Π² ядрС, Π° Π²Ρ‹Π±ΠΎΡ€ Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€Π° производится Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ сборочных ΠΎΠΏΡ†ΠΈΠΉ.
    • Для Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ PowerPC Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Ρ€Π΅ΠΆΠΈΠΌΠ° Π»Π΅Π½ΠΈΠ²ΠΎΠ³ΠΎ вытСснСния Π·Π°Π΄Π°Ρ‡ (PREEMPT_LAZY, lazy preemption), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ соотвСтствуСт Ρ€Π΅ΠΆΠΈΠΌΡƒ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ вытСснСния (Β«full preemptionΒ») для realtime-Π·Π°Π΄Π°Ρ‡ (RR/FIFO/DEADLINE), Π½ΠΎ Π·Π°Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ вытСснСниС ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡ (SCHED_NORMAL) Π΄ΠΎ Π³Ρ€Π°Π½ΠΈΡ†Ρ‹ Ρ‚ΠΈΠΊΠ°.
    • Π’ подсистСму профилирования ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Β«perfΒ» Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° счётчиков энСргопотрСблСния процСссоров AMD. Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π½Π° систСмах, Π½Π°ΡΡ‡ΠΈΡ‚Ρ‹Π²Π°ΡŽΡ‰ΠΈΡ… Π΄ΠΎ 2048 ядСр CPU.
    • ΠŸΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ использования sysctl-ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° pid_max с пространствами ΠΈΠΌΡ‘Π½ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ² процСссов (ID namespace). ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ pid_max ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для ограничСния максимального значСния ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ² процСссов (PID) ΠΈ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для ограничСния максимально Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΠ³ΠΎ числа процСссов, Π·Π°ΠΏΡƒΡ‰Π΅Π½Π½Ρ‹Ρ… Π² ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΌ пространствС ΠΈΠΌΡ‘Π½. ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° производится иСрархичСски, Ρ‚.Π΅. ограничСния Π²ΠΎ Π²Π½Π΅ΡˆΠ½ΠΈΡ… пространствах ΠΈΠΌΡ‘Π½ Ρ€Π°ΡΠΏΡ€ΠΎΡΡ‚Ρ€Π°Π½ΡΡŽΡ‚ΡΡ Π½Π° Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Π΅ пространства ΠΈΠΌΡ‘Π½.
    • ΠŸΡ€ΠΈ использовании для запуска процСсса систСмного Π²Ρ‹Π·ΠΎΠ²Π° execveat Π² Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмС /proc Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒΡΡ имя Π·Π°ΠΏΡƒΡ‰Π΅Π½Π½ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π°, Π° Π½Π΅ Π½ΠΎΠΌΠ΅Ρ€ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠ³ΠΎ дСскриптора.
    • Π’ состав исходного ΠΊΠΎΠ΄Π° ядра (Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ samples/vfs) Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π° mountinfo, Π΄Π΅ΠΌΠΎΠ½ΡΡ‚Ρ€ΠΈΡ€ΡƒΡŽΡ‰Π°Ρ использованиС систСмных Π²Ρ‹Π·ΠΎΠ²ΠΎΠ² statmount() ΠΈ listmount().
    • Π’ подсистСмС BPF ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Ρ‹ Π½ΠΎΠ²Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ bpf_local_irq_save() ΠΈ bpf_local_irq_restore() для Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠΉ Π½Π° локальном CPU. Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ структур, ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π½Π΅ приостанавливаСтся прСрываниями.
    • Π’ систСмном Π²Ρ‹Π·ΠΎΠ²Π΅ madvise() ΠΏΡ€ΠΈ использовании Ρ„Π»Π°Π³ΠΎΠ² MADV_DONTNEED ΠΈ MADV_FREE обСспСчСно освобоТдСниС Ρ‚Π°Π±Π»ΠΈΡ† страниц памяти, связанных с освобоТдаСмым Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ΠΎΠΌ адрСсов, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ситуациях пустыС страницы памяти ΠΌΠΎΠ³ΡƒΡ‚ Π·Π°Π½ΠΈΠΌΠ°Ρ‚ΡŒ достаточно ΠΌΠ½ΠΎΠ³ΠΎ памяти.
    • Для Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ OpenRISC Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° пСрСзапускаСмых ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚Π΅ΠΉ (rseq, restartable sequences), ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½ΠΎΠ³ΠΎ для быстрого Π°Ρ‚ΠΎΠΌΠ°Ρ€Π½ΠΎΠ³ΠΎ выполнСния ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π² случаС прСрывания Π΄Ρ€ΡƒΠ³ΠΈΠΌ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠΌ ΠΎΡ‡ΠΈΡ‰Π°ΡŽΡ‚ΡΡ ΠΈ прСдпринимаСтся повторная ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ° выполнСния.
    • ΠŸΡ€ΠΎΠ²Π΅Π΄Π΅Π½Π° рСорганизация ΠΊΠΎΠ΄Π° с Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² CRC32 ΠΈ CRC-T10DIF, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ большС Π½Π΅ пСрСсСкаСтся с подсистСмой crypto ΠΈ вызываСтся Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ ΠΈΠ· Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅Ρ‡Π½ΠΎΠ³ΠΎ интСрфСйса. ИзмСнСниС ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ»ΠΎ ΡƒΠΏΡ€ΠΎΡΡ‚ΠΈΡ‚ΡŒ ΠΊΠΎΠ΄ ΠΈ ΠΏΠΎΠ²Ρ‹ΡΠΈΡ‚ΡŒ Π΅Π³ΠΎ ΡΡ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ.
    • Π’ систСму асинхронного Π²Π²ΠΎΠ΄Π°/Π²Ρ‹Π²ΠΎΠ΄Π° io_uring Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ интСрфСйс для ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ… ΠΎ цСлостности ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ чтСния ΠΈ записи.
  • Виртуализация ΠΈ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ
    • Π’ систСмный Π²Ρ‹Π·ΠΎΠ² execveat Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ Ρ„Π»Π°Π³ AT_EXECVE_CHECK, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΉ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ допустимости исполнСния Ρ„Π°ΠΉΠ»Π° Π±Π΅Π· Π΅Π³ΠΎ фактичСского запуска, Π½ΠΎ c ΡƒΡ‡Ρ‘Ρ‚ΠΎΠΌ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊ бСзопасности, ΠΏΡ€Π°Π² доступа ΠΈ Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹Ρ… LSM-ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ. Для использования Π² сочСтании с AT_EXECVE_CHECK ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Ρ‹ securebit-Ρ„Π»Π°Π³ΠΈ SECBIT_EXEC_RESTRICT_FILE ΠΈ SECBIT_EXEC_DENY_INTERACTIVE, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для ограничСния исполнСния Ρ„Π°ΠΉΠ»ΠΎΠ² со скриптами Π½Π° ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Ρ… языках программирования. Π€Π»Π°Π³ SECBIT_EXEC_RESTRICT_FILE прСдписываСт ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²Ρ‰ΠΈΠΊΠ°ΠΌ ΠΈ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€Π°ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠΏΡ†ΠΈΡŽ AT_EXECVE_CHECK для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ допустимости исполнСния, Π° Ρ„Π»Π°Π³ SECBIT_EXEC_DENY_INTERACTIVE Π·Π°ΠΏΡ€Π΅Ρ‰Π°Π΅Ρ‚ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹. Основная идСя измСнСния Π² возмоТности примСнСния ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊ бСзопасности Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊ Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹ΠΌ исполняСмым Ρ„Π°ΠΉΠ»Π°ΠΌ, Π½ΠΎ ΠΈ ΠΊ тСкстовым Ρ„Π°ΠΉΠ»Π°ΠΌ со скриптами, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ Ρ‡Π΅Ρ€Π΅Π· запуск ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€Π° (Ρ‚.Π΅. Π·Π°ΠΏΡ€Π΅Ρ‚ Π½Π° исполнСниС ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΈ запускС Β«./script.shΒ» Π½ΠΎ ΠΈ ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ Π² Ρ„ΠΎΡ€ΠΌΠ΅ Β«sh script.shΒ»).
    • На систСмах x86 Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π·Π°Ρ‰ΠΈΡ‰Ρ‘Π½Π½Ρ‹Ρ… счётчиков Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ для гостСвых систСм, Π½Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΡ… ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ систСмныС часы гостСвой систСмы ΠΈΠ· хост окруТСния. Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° Π½Π° Π±Π°Π·Π΅ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° AMD SEV (Secure Encrypted Virtualization), примСняСмого Π² систСмах Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ для Π·Π°Ρ‰ΠΈΡ‚Ρ‹ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… машин ΠΎΡ‚ Π²ΠΌΠ΅ΡˆΠ°Ρ‚Π΅Π»ΡŒΡΡ‚Π²Π° со стороны Π³ΠΈΠΏΠ΅Ρ€Π²ΠΈΠ·ΠΎΡ€Π° ΠΈΠ»ΠΈ администратора хост-систСмы.
    • Π’ систСму ΠΌΠ°Π½Π΄Π°Ρ‚Π½ΠΎΠ³ΠΎ контроля доступа SELinux Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° xperm-ΠΏΡ€Π°Π²ΠΈΠ», ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΡ… ΠΏΡ€ΠΈΠ²ΡΠ·Ρ‹Π²Π°Ρ‚ΡŒ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠΈ SELinux ΠΊ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹ΠΌ Π²Ρ‹Π·ΠΎΠ²Π°ΠΌ ioctl() ΠΈΠ»ΠΈ сообщСниям netlink.
    • Для завСрСния ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ ядра Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΉ подписью вмСсто SHA1 ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ задСйствован Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ SHA512.
    • Π’ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π°Ρ… для гостСвых систСм VirtualBox Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ ARM64.
    • Π’ Π³ΠΈΠΏΠ΅Ρ€Π²ΠΈΠ·ΠΎΡ€Π΅ KVM ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½Π° Ρ€Π°Π±ΠΎΡ‚Π° Π½Π°Π΄ задСйствованиСм ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° Intel TDX (Trusted Domain Extensions) для ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΡ памяти гостСвых систСм.
    • Π’ virtio_blk Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Ρ€Π΅ΠΆΠΈΠΌΠ° восстановлСния ошибок.
  • БСтСвая подсистСма
    • Π’ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° RxRPC появилась Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ использования Π±ΠΎΠ»ΡŒΡˆΠΈΡ… ΠΊΠ°Π΄Ρ€ΠΎΠ² UDP для ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΡ пропускной способности.
    • Для TCP Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° RACK-TLP для опрСдСлСния ΠΏΠΎΡ‚Π΅Ρ€ΠΈ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ².
    • Π”ΠΎΠ±Π°Π²Π»Π΅Π½ Π½ΠΎΠ²Ρ‹ΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ sysctl tcp_tw_reuse_delay, Π΄Π΅ΠΉΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ Π² привязкС ΠΊ пространству ΠΈΠΌΡ‘Π½ (network namespace) ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΉ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΡƒ, Π²Π½ΠΎΡΠΈΠΌΡƒΡŽ ΠΏΠ΅Ρ€Π΅Π΄ Ρ‚Π΅ΠΌ ΠΊΠ°ΠΊ систСма смоТСт ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π½ΠΎΠΌΠ΅Ρ€ сСтСвого ΠΏΠΎΡ€Ρ‚Π° послС закрытия TCP-сокСта.
    • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π²Ρ‹Π±ΠΎΡ€Π° ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€Π° Ρ‚ΠΎΡ‡Π½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ (PTP) для формирования Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΌΠ΅Ρ‚ΠΎΠΊ Π½Π° уровнях PHY ΠΈ MAC.
    • Для IPsec Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° агрСгирования ΠΈ фрагмСнтирования инкапсулированных IP-ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² β€” IP-TFS/AGGFRAG (IP Traffic Flow Security/Aggregation and Fragmentation Mode for Encapsulating Security Payload).
    • Π’ систСму сСтСвых сокСтов Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Π΅ (SO_PRIORITY) Π² Ρ„ΠΎΡ€ΠΌΠ΅ ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΡ… сообщСний (cmsg β€” control messages). Для сСтСвых сокСтов Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° опция SO_RCVPRIORITY, Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰Π°Ρ Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ recvmsg() ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Ρƒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Π΅ сокСта.
  • ΠžΠ±ΠΎΡ€ΡƒΠ΄ΠΎΠ²Π°Π½ΠΈΠ΅
    • Π”ΠΎΠ±Π°Π²Π»Π΅Π½ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ amdxdna для ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… Π² CPU AMD ускоритСлСй NPU (Neural Processing Unit) Π½Π° Π±Π°Π·Π΅ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ XDNA, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½Ρ‹Ρ… для ускорСния ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ, связанных с ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹ΠΌ ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ΠΌ. NPU Π½Π° Π±Π°Π·Π΅ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ XDNA поставляСтся Π² сСриях 7040 ΠΈ 8040 процСссоров AMD Ryzen, ускоритСлях AMD Alveo V70 ΠΈ SoC AMD Versal.
    • Π’ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ i915 Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ Π½ΠΎΠ²Ρ‹Ρ… GPU, Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ сбоСв ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ HDMI, ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½Π° Π½Π°Π΄Ρ‘ΠΆΠ½ΠΎΡΡ‚ΡŒ сброса Π΄Π²ΠΈΠΆΠΊΠΎΠ² GPU Π½Π° Haswell ΠΈ Π±ΠΎΠ»Π΅Π΅ старых систСмах.
    • ΠŸΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½Π° Ρ€Π°Π±ΠΎΡ‚Π° Π½Π°Π΄ drm-Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΎΠΌ (Direct Rendering Manager) Xe для GPU Π½Π° Π±Π°Π·Π΅ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ Intel Xe, которая ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² Π²ΠΈΠ΄Π΅ΠΎΠΊΠ°Ρ€Ρ‚Π°Ρ… Intel сСмСйства Arc ΠΈ ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΉ Π³Ρ€Π°Ρ„ΠΈΠΊΠ΅, начиная с процСссоров Tiger Lake.
    • Π’ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π΅ Nouveau Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π±ΡƒΡ„Π΅Ρ€ΠΎΠ² с Π»ΠΎΠ³Π°ΠΌΠΈ GSP-RM Ρ‡Π΅Ρ€Π΅Π· debugfs.
    • Π’ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π΅ AMDGPU Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° DRM panic, ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‰Π΅Π³ΠΎ ΠΏΠΎΠ΄ΠΎΠ±ΠΈΠ΅ «синСго экрана смСрти» ΠΏΡ€ΠΈ сбоях. ΠŸΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½Π° ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° ΠΊ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ΅ Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΉ сСрии графичСских ΠΊΠ°Ρ€Ρ‚ Radeon RX 9000 Π½Π° Π±Π°Π·Π΅ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ RDNA4. ОбновлСна ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° DCN 3.5, GG 9.5, IH 4.4, PSP 13.x, SMU 13.x, VCN 5.x, JPEG 5.x, GC 12.x, DC FAMS, RAS ΠΈ ISP.
    • Π’ DRM-Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ msm (GPU Qualcomm Adreno) Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Qualcomm SM6150 (QCS615).
    • Π’ DRM-Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ panfrost Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° SoC MediaTek MT8188 c GPU Mali-G57.
    • Π’ DRM-Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ vc4 Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° SoC Broadcom BCM2712 (Raspberry Pi 5).
    • Π’ vfio-Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ nvgrace-gpu Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Ρ‡ΠΈΠΏΠΎΠ² NVIDIA Grace Blackwell 200.
    • Π’ состав Π²ΠΊΠ»ΡŽΡ‡Ρ‘Π½ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ для ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠ² Intel THC (Touch Host Controller), примСняСмый для взаимодСйствия с сСнсорными экранами ΠΈ Ρ‚Π°Ρ‡ΠΏΠ°Π΄Π°ΠΌΠΈ Π½Π° Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π½ΠΎΡƒΡ‚Π±ΡƒΠΊΠ°Ρ…. Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° устройств Wacom с интСрфСйсом PCI. Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΈΠ³Ρ€ΠΎΠ²Ρ‹Ρ… ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠ² QH Electronics.
    • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ARM-ΠΏΠ»Π°Ρ‚, SoC ΠΈ устройств: Qualcomm Snapdragon 8 Elite (SM8750), Qualcomm Snapdragon AR2 (SAR2130P), Qualcomm IQ6/IQ8, Snapdragon 425 (MSM8917), Samsung Exynos 9810, Blaize BLZP1600, Microchip SAMA7D65, Renesas R-Car V4H ES3.0, Renesas RZ/G3E. Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° SoC SpacemiT K1 Π½Π° Π±Π°Π·Π΅ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ RISC-V.
    • Π’ Π·Π²ΡƒΠΊΠΎΠ²ΠΎΠΉ подсистСмС ALSA для MIDI 2.0 Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Ρ‹ API rawmidi ΠΈ sequencer. Π’ API для выноса ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ сТатия Π½Π° сторону Π·Π²ΡƒΠΊΠΎΠ²ΠΎΠΉ ΠΊΠ°Ρ€Ρ‚Ρ‹ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ASRC (Asynchronous Sample Rate Conversion).
    • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π·Π²ΡƒΠΊΠΎΠ²Ρ‹Ρ… систСм устройств Allwinner suinv F1C100s, Awinc AW88083, Realtek ALC5682I-VE, TAS2781, Focusrite Scarlett 4th Gen 16i16, 18i16 ΠΈ 18i20. Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° бСспроводных Π½Π°ΡƒΡˆΠ½ΠΈΠΊΠΎΠ² SteelSeries Arctis 9.

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

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