Pas dy muajsh zhvillimi, Linus Torvalds prezantoi lëshimin e bërthamës Linux 5.13. Nga ndryshimet më të dukshme janë: sistemi i skedarëve EROFS, mbështetje fillestare për çipat Apple M1, kontrollori i cgroup «misc», ndërprerja e mbështetjes për /dev/kmem, mbështetje për GPU të reja Intel dhe AMD, mundësia për thirrje direkte të funksioneve të bërthamës nga programet BPF, randomizimi i grumbullit të bërthamës për çdo thirrje sistemike, mundësia për ndërtim në Clang me mbrojtje CFI (Control Flow Integrity), moduli LSM Landlock për kufizimin shtesë të proceseve, pajisja virtuale e zërit mbi bazën e virtio, dhe mode multi-shot në io_uring.
Në versionin e ri janë pranuar 17189 korrigjime nga 2150 zhvillues (më shumë se ndonjëherë tjetër në histori), madhësia e patch-it është 60 MB (ndryshimet prekin 12996 skedarë, janë shtuar 794705 rreshta kodi, dhe janë fshirë 399590 rreshta). Rreth 47% e të gjitha ndryshimeve në 5.13 lidhen me drejtorët e pajisjeve, afërsisht 14% e ndryshimeve kanë të bëjnë me përditësimin e kodit të specifikuar për arkitekturën e harduerit, 13% lidhen me grumbullin e rrjetit, 5% me sistemet e skedarëve dhe 4% me nën sistemet e brendshme të bërthamës.
TĂ« rejat kryesore:
- Sistemi i diskut, hyrja/ dalje dhe sistemet e skedarëve
- ĂshtĂ« shtuar mbĂ«shtetja pĂ«r sistemin e skedarĂ«ve EROFS (Enhanced Read-Only File System), i propozuar nga kompania Huawei pĂ«r pĂ«rdorim nĂ« pjesĂ« qĂ« janĂ« tĂ« disponueshme nĂ« modalitetin e leximit tĂ« vetĂ«m. FS e re mbĂ«shtet ruajtjen e tĂ« dhĂ«nave nĂ« formĂ« tĂ« kompresuar dhe krahasuar me Ext4 tregon performancĂ« tĂ« ngjashme nĂ« kryerjen e operacioneve tĂ« leximit tĂ« njĂ«pasnjĂ«shĂ«m, por e kalon Ext4 me shumĂ« herĂ« nĂ« qasje tĂ« rastĂ«sishme nĂ« tĂ« dhĂ«na. PĂ«r shembull, me njĂ« nivel kompresimi 4 dhe testim nĂ« serveri me njĂ« hard disk, FS EROFS kaloi Ext4 nĂ« operacione tĂ« leximit tĂ« rastĂ«sishĂ«m mĂ« shumĂ« se gjashtĂ« herĂ«, ndĂ«rsa duke pĂ«rdorur njĂ« smartphone Android me Flash, pothuajse tre herĂ«. Ashtu si nĂ« FS-tĂ« e tjera tĂ« leximit tĂ« vetĂ«m, struktura EROFS Ă«shtĂ« e thjeshtĂ«zuar duke hequr disa fusha tĂ« metadatat, siç janĂ« harta e bllokave tĂ« lirĂ«.
- Për sistemin e skedarëve SMB3 është realizuar opsioni i montimit «rasize», me ndihmën e të cilit mund të përcaktohet madhësia e dritares së leximit të parashikueshëm (readahead) për të rritur performancën e disa llojeve të ngarkesave.
- Në FS ext4 është siguruar rishkrimi i elementeve të katalogëve kur fshihen skedarë. Në ext4 gjithashtu lejohet përdorimi njëkohësisht i modalitetit të punës pa marrë parasysh regjistrin e simboleve dhe enkriptimin.
- Në FS exFAT është shtuar mbështetje për komandën ioctl FITRIM (discard), për informimin e ruajtësit mbi blloqet e papërdorura në FS.
- Në FS XFS është shtuar mundësia për të marrë hapësirë nga grupi i fundit të shpërndarjes në FS, që u bë lidhja e parë në realizimin e funksionit të zvogëlimit të madhësisë së pjesëve ekzistuese me FS XFS.
- ĂshtĂ« shtuar njĂ« thirrje e re sistemike quotactl_path, e cila ndryshon nga quotactl nĂ« atĂ« qĂ« lejon menaxhimin e kuotave jo pĂ«rmes njĂ« skedari tĂ« pajisjes speciale, por pĂ«rmes tregimit tĂ« rrugĂ«s deri nĂ« pikĂ«n e montimit tĂ« FS.
- Në mekanizmin fanotify janë zgjeruar mundësitë e disponueshme për përdoruesit e pap privilegjuar. Për shembull, në përputhje me inotify, pa drejta SYS_CAP_ADMIN tani është e mundur të ndjekin ngjarjet OPEN, ACCESS, MODIFY dhe CLOSE për skedarë dhe katalogë.
- Kujtesa dhe shërbimet sistemore
- ĂshtĂ« shtuar njĂ« kontrollues i ri cgroup - «Misc» (CONFIG_CGROUP_MISC), i destinuar pĂ«r kufizimin dhe ndjekjen e burimeve skalar, tĂ« cilat mund tĂ« menaxhohen duke pĂ«rdorur njĂ« numĂ«rator tĂ« thjeshtĂ« dhe kufizuar duke caktuar vlera maksimale tĂ« pranueshme. Siç pĂ«rmendet rasti i pĂ«rdorimit tĂ« kĂ«tij kontrolluesi tĂ« ri cgroup, menaxhimi i identifikuesve tĂ« hapĂ«sirĂ«s adresore, tĂ« aplikuar nĂ« mekanizmin e AMD SEV (Secure Encrypted Virtualization).
- Në ndërfaqen e hyrjes asinkrone io_uring për kërkesat POLL është realizuar modaliteti «multi-shot», ku POLL nuk fshihet pas gjenerimit të ngjarjes, por mbetet aktiv dhe mund të gjenerojë disa ngjarje.
- Nga dega realtime e bërthamës është transferuar kodi që siguron trajtimin e ndërprerjeve të gjeneruara nga softueri në trego të bërthamës, duke lejuar që ato të shuhen nga procese me përparësi më të lartë.
- ĂshtĂ« shtuar njĂ« bibliotekĂ« e brendshme netfs, nĂ« tĂ« cilĂ«n janĂ« nxjerrĂ« funksionet tipike tĂ« pĂ«rdorura nĂ« sistemet e skedarĂ«ve rrjetĂ«s.
- Për arkitekturën PowerPC është realizuar mbështetje për hapësirat e emrave për kohën (time namespaces), të cilat lejojnë përdorimin e një kohe të vetme në kontenier.
- Për arkitekturën RISC-V është realizuar mbështetje për kexec, crash dump, kprobe dhe ekzekutimin e bërthamës në vend (execute-in-place, ekzekutimi nga media origjinale, pa kopjim në RAM).
- Në programet BPF të gjurmimit është bërë e mundur përdorimi i ruajtjes së dhënave lokale për detyrën (task-local storage), që siguron performancë më të lartë përmes lidhjes së të dhënave me trajtuesin specifik BPF.
- Një mekanizëm i ri është realizuar për thirrjen e drejtpërdrejtë të funksioneve të bërthamës nga programet BPF, i cili është përdorur tashmë në implementimin e algoritmeve të ngarkesës TCP. Për të siguruar sigurinë, funksionet e thirrura duhet të jenë të definita qartë në një listë të bardhë.
- Në sistemin e gjurmimit të funksioneve ftrace është shtuar opsioni func-no-repeats, i cili lejon reflektimin e thirrjeve të përsëritura të funksioneve në formën e një numëruesi.
- Në thirrjen e sistemit userfaultfd(), e cila është e destinuar për trajtimin e dështimeve të faqeve në hapësirën e përdoruesit, është shtuar mundësia për menaxhimin e dështimeve të pjesshme, ku një faqe ndërmjetëse është e pranishme, por nuk ka regjistrim në tabelën e faqeve të memories.
- Mbështetja për skedarin e veçantë /dev/kmem është ndalur, me anë të të cilit mund të merret akses në të gjithë hapësirën e adresave të bërthamës. Ky skedar është konsideruar i vjetër dhe shkakton probleme me sigurinë.
- Për çipat Intel është realizuar një drejtues i ri për menaxhimin e ftohjes, e cila lejon uljen e frekuencës së procesorit në rast rreziku nga mbinxehja. Në krahasim me mekanizmin ekzistues të aktivizimit TCC (Circuiti i Kontrollit të Temperaturës), drejtuesi i ri manipuluar me vlerat relative, dmth, mund të ulë frekuencën në fazën e fillimit të rritjes së konsiderueshme të temperaturës, por jo duke pritur kalimin e një kufiri kritike.
- Virtualizimi dhe siguria
- Në përbërje është përfshirë moduli LSM për sigurinë e aplikacioneve Landlock, i cili lejon kufizimin e bashkëveprimit me mjedisin e jashtëm për një grup procesesh dhe është zhvilluar duke u mbështetur në mekanizma të tillë izolimi si XNU Sandbox, FreeBSD Capsicum dhe OpenBSD Pledge/Unveil. Logjika e dhënies së aksesit përcaktohet përmes një programi BPF, por ndryshe nga seccomp-bpf, Landlock nuk filtrin thirrjet e sistemeve dhe argumentet e tyre, por lejon të kufizohet përdorimi i objekteve të bërthamës, si hierarkitë e dosjeve. Me ndihmën e Landlock, çdo proces, përfshirë ato që nuk kanë privilegje, mund të izolojë veten në mënyrë të sigurt dhe të parandalojë rrethimin e izolimit në rast të zbuluarjes së dobësive ose ndryshimeve të dëmshme në aplikacion. Landlock lejon një proces të krijojë mjedise të izoluara të mbrojtura, të realizuara në formën e një shtrese shtesë mbi mekanizmat ekzistues të menaxhimit të aksesit.
- ĂshtĂ« shtuar mundĂ«sia e randomizimit tĂ« offseteve nĂ« grumbullin e bĂ«rthamĂ«s gjatĂ« trajtimit tĂ« thirrjeve tĂ« sistemeve me qĂ«llim qĂ« tĂ« komplikohet sulmi ndaj grumbullit. Thelbi i mbrojtjes sĂ« propozuar Ă«shtĂ« zgjedhja e njĂ« offseti rastĂ«sor tĂ« grumbullit pĂ«r çdo thirrje tĂ« sistemit, e cila e komplikon pĂ«rcaktimin e vendosjes sĂ« grumbullit nĂ« memories, madje edhe nĂ« rast se informacionet mbi adresat janĂ« tĂ« njohura, pasi adresĂ«n bazĂ« tĂ« grumbullit do tĂ« ndryshojĂ« me thirrjen e ardhshme tĂ« sistemit. PĂ«r tĂ« aktivizuar randomizimin, janĂ« propozuar parametrat e linjĂ«s sĂ« komandĂ«s tĂ« bĂ«rthamĂ«s "randomize_kstack_offset=on/off" dhe konfigurimi CONFIG_RANDOMIZE_KSTACK_OFFSET_DEFAULT. Shpenzimet e mbĂ«shtetjes janĂ« vlerĂ«suar tĂ« jenĂ« rreth 1% humbje e performancĂ«s.
- ĂshtĂ« shtuar mbĂ«shtetje pĂ«r ndĂ«rtimin e bĂ«rthamĂ«s me aktivizimin e mekanizmit tĂ« mbrojtjes CFI (Control Flow Integrity) nĂ« kompiluesin Clang, duke shtuar njĂ« kontroll para çdo thirrjeje indirekte tĂ« funksionit pĂ«r tĂ« zbuluar disa forma tĂ« sjelljes sĂ« paqartĂ«, tĂ« cilat potencialisht mund tĂ« çojnĂ« nĂ« shkeljen e rendit normal tĂ« ekzekutimit pĂ«r shkak tĂ« shfrytĂ«zimeve qĂ« modifikojnĂ« treguesit e funksioneve tĂ« ruajtur nĂ« memories. PĂ«r tĂ« aktivizuar CFI, Ă«shtĂ« propozuar parametrin CONFIG_CFI_CLANG.
- Në shërbimin e ofruar nga bërthama për ruajtjen e çelësave të enkriptimit (key ring), mekanizmi i çelësave të besueshëm (Trusted Keys) tani përfshin jo vetëm çelësat nga modulet TPM, por edhe nga mjediset TEE (Trusted Execution Environment). Për menaxhimin e burimit të çelësave të besueshëm, është propozuar një parametr i ngarkimit "trusted.source". Për më tepër, është shtuar mundësia për trajtimin e çelësave të besueshëm në formatin ASN.1.
- ĂshtĂ« shtuar njĂ« parameter pĂ«r ngarkimin e parashikueshĂ«m tĂ« listĂ«s sĂ« certifikatave tĂ« revokuara gjatĂ« ngarkimit tĂ« bĂ«rthamĂ«s. Problemi (CVE-2020-26541) me injorimin e certifikatave tĂ« UEFI Secure Boot tĂ« ofruara nĂ« formatin EFI_CERT_X509_GUID, i cili lejonte ngarkimin e sistemit me njĂ« certifikatĂ« tĂ« revokuar, Ă«shtĂ« zgjidhur.
- Në nën-sistemin kripto të bërthamës është shtuar mbështetje për verifikimin e nënshkrimeve digjitale ECDSA që bazohen në kurba eliptike.
- ĂshtĂ« realizuar mundĂ«sia e verifikimit tĂ« politikave SELinux pĂ«rmes nĂ«ndegĂ«s IMA (Integrity Measurement Architecture), e cila siguron ruajtjen e njĂ« baze hash pĂ«r tĂ« kontrolluar integritetin e tĂ« dhĂ«nave.
- Sistemi i rrjetit
- Support for WiMAX technology, which is no longer used in public networks, has been removed. The only remaining driver that can be used with WiMAX is the outdated Intel 2400m driver. In the NetworkManager configuration, WiMAX support was discontinued in 2015. Currently, WiMax has almost been completely replaced by technologies like LTE, HSPA+, and Wi-Fi 802.11n.
- A driver for the MANA (Microsoft Azure Network Adapter) network adapter has been added.
- The ath11k driver now supports Qualcomm QCN9074 wireless modules with 802.11ax support.
- The iwlwifi driver has implemented passive channel scanning in the 6GHz range. For Ukraine, support for enabling/disabling IEEE 802.11ax based on BIOS parameters has been added.
- Optimization of the XDP (eXpress Data Path) subsystem has been conducted, allowing manipulation of network packets before they are processed by the Linux kernel's network stack. Tests show an increase in XDP performance of 4-8%. For virtio devices, the performance gain from software processing AF_XDP can reach 33%.
- Extended PROBE messages defined in RFC 8335 have been implemented in ICMP.
- Integration into the MPTCP (MultiPath TCP) kernel has continued, extending the TCP protocol to allow TCP connection operation with packet delivery simultaneously across multiple routes via different network interfaces. adresat IP. The new release includes support for sockopt to set standard TCP options. The ability to reset individual subflows has been implemented.
- Support for resource management using a unified hierarchy of cgroups v2 has been added to netfilter.
- An interface for reading IEEE MIB statistics with support for mlx5 and bnxt has been implemented in ethtool. Network drivers are allowed to extract arbitrary data from SFP EEPROM by manipulating memory pages instead of the offset+size tuple.
- Pajisjet
- Initial support for Apple's ARM chip M1 has been implemented, covering the interrupt controller, timer, UART, SMP, I/O organization functions, and MMIO. Reverse engineering of the GPU is still incomplete, and framebuffer and console support is provided through a serial port.
- The kernel cleaning of old drivers has been continued, with the removal of the âgasketâ (Google ASIC), âsysaceâ, âumemâ, and several old serial port drivers.
- After 13 years in the staging branch, the âcomediâ driver for data acquisition devices has been stabilized and moved to the main composition.
- A GUD (Generic USB Display) driver has been added, implementing a basic driver for screens and TV adapters connected via USB. The driver provides DRM properties (Direct Rendering Manager) for image rotation, brightness control, EDID access, video mode settings, and TV connectivity, which can be used as a basis for creating specific device drivers.
- A âvirtioâ sound driver has been added, implementing a virtual sound device that can be used in guest systems for audio output and recording without passing access to the sound card and without emulation.
- The amdgpu driver has added initial support for the Aldebaran (gfx90a) GPU. Initial support for FreeSync adaptive synchronization technology for HDMI has been included (previously available for DisplayPort), allowing adjustment of the screen refresh rate. Support for ASSR (Alternate Scrambler Seed Reset) has been enabled. An ioctl has been added for querying encoding and decoding capabilities. CONFIG_DRM_AMD_SECURE_DISPLAY mode has been added to detect changes in displays showing critical information. Support for the energy-saving ASPM mechanism has been added.
- Support for Intel Alderlake-S chips has been included in the i915 driver for Intel graphics cards. Support for eDP MSO (Embedded DisplayPort Multi-SST Operation) has been added.
- Support for the Luna (Amazon) game controller, as well as for Hycon HY46XX, ILITEK Lego Series, and MStar MSG2638 touchscreen devices has been added.
At the same time, the Latin American Free Software Foundation has created a fully free kernel version 5.11 â Linux-libre 5.11-gnu, cleaned from firmware and driver elements that contain non-free components or code sections restricted by the manufacturer. In the new release, the cleaning of the comedi driver has been conducted. The cleaning of the cyclades, isicom tty, and i2400m wimax drivers, which were removed from the kernel, has been stopped. The code for cleaning blobs in the amdgpu, i915 csr, r8152 usb, mhi bus, x86 touchscreen, and qualcomm arm64 drivers and subsystems has been updated.
Burimi: opennet.ru
