Ho lokolloa ha kernel ea Linux 5.19

Kamora likhoeli tse peli tsa nts'etsopele, Linus Torvalds o hlahisitse tokollo ea Linux kernel 5.19. Har'a liphetoho tse hlokomelehang: tšehetso bakeng sa meralo ea processor ea LoongArch, kopanyo ea "BIG TCP" li-patches, mokhoa o hlokahalang ho fscache, ho tlosa khoutu ho tšehetsa sebopeho sa a.out, bokhoni ba ho sebelisa ZSTD bakeng sa compression ea firmware, sebopeho sa ho laola ho lelekoa ha memori sebakeng sa basebelisi, ho eketsa ts'epo le ts'ebetso ea jenereithara ea linomoro tsa pseudo-random, tšehetso ea Intel IFS (In-Field Scan), AMD SEV-SNP (Secure Nested Paging), Intel TDX (Trusted Domain Extensions) le ARM. SME (Scalable Matrix Extension) katoloso.

Phatlalatsong, Linus o boletse hore ho ka etsahala hore ebe tokollo e latelang ea kernel e tla ba palo ea 6.0, kaha lekala la 5.x le bokelletse litokollo tse lekaneng ho fetola nomoro ea pele ho nomoro ea phetolelo. Phetoho ea linomoro e etsoa ka mabaka a botle 'me ke mohato o hlophisitsoeng o imollang ho se thabise ka lebaka la ho bokella lintlha tse ngata letotong.

Linus o boetse a bolela hore o sebelisitse laptop ea Apple e thehiloeng ho meralo ea ARM64 (Apple Silicon) e nang le tikoloho ea Linux e thehiloeng ho tsamaiso ea Asahi Linux ho theha tokollo. Ha se setsi sa mantlha sa mosebetsi sa Linus, empa o sebelisitse sethala ho leka ho tšoaneleha ha sona bakeng sa mosebetsi oa kernel le ho etsa bonnete ba hore a ka hlahisa lihlahisoa tsa kernel ha a ntse a tsamaea ka laptop e bobebe e haufi. Nakong e fetileng, lilemong tse ngata tse fetileng, Linus o ne a e-na le phihlelo ea ho sebelisa lisebelisoa tsa Apple bakeng sa nts'etsopele - o kile a sebelisa PC e thehiloeng ho ppc970 CPU le laptop ea Macbook Air.

Phetolelo e ncha e kenyelletsa litokiso tse 16401 ho tsoa ho bahlahisi ba 2190 (khatisong ea ho qetela ho bile le litokiso tse 16206 ho tsoa ho bahlahisi ba 2127), boholo ba patch ke 90 MB (liphetoho tse ammeng lifaele tsa 13847, mela ea khoutu e 1149456 e kentsoe, mela e 349177 e hlakotsoe). Hoo e ka bang 39% ea liphetoho tsohle tse hlahisitsoeng ho 5.19 li amana le bakhanni ba lisebelisoa, hoo e ka bang 21% ea liphetoho li amana le ho ntlafatsa khoutu e khethehileng ho meralo ea hardware, 11% e amana le stack ea marang-rang, 4% e amana le tsamaiso ea lifaele, le 3% li amana le li-subsystem tsa kernel tse ka hare.

Mekhoa e mecha ea bohlokoa ho kernel 5.19:

  • Disk Subsystem, I/O le File Systems
    • Sistimi ea faele ea EROFS (Enhanced Read-Only File System), e reretsoeng ho sebelisoa likarolong tse baloang feela, e fetotsoe ho sebelisa fscache subsystem, e fanang ka caching ea data. Phetoho e ntlafalitse haholo ts'ebetso ea lits'ebetso tseo ho tsona palo e kholo ea lijana e qalisoang ho tsoa setšoantšong se thehiloeng ho EROFS.
    • Mokhoa oa ho bala o batloang feela o kentsoe ho fscache subsystem, e sebelisetsoang ho ntlafatsa EROFS. Mokhoa o mocha o u lumella ho hlophisa caching ea ho bala ho tsoa litšoantšong tsa FS tse fumanehang tsamaisong ea lehae. Ho fapana le mokhoa oa ts'ebetso o neng o le teng qalong, o shebaneng le caching tsamaisong ea faele ea lehae ea data e fetisitsoeng ka sistimi ea faele ea marang-rang, mokhoa oa "on-demand" o fana ka mesebetsi ea ho khutlisa data le ho e ngolla cache sebakeng se arohaneng. tshebetso ya bokamorao e sebetsang sebakeng sa mosebedisi.
    • XFS e fana ka bokhoni ba ho boloka libilione tsa litšobotsi tse atolositsoeng ho i-node. Palo e phahameng ea boholo ba faele e le 'ngoe e eketsehile ho tloha ho limilione tse likete tse 4 ho ea ho tse 247. Mokhoa o kentsoe ts'ebetsong bakeng sa ho ntlafatsa litšobotsi tse ngata tse atolositsoeng tsa faele hang-hang.
    • Sistimi ea faele ea Btrfs e ntlafalitse mosebetsi ka liloko, tse lumelletseng keketseho ea ts'ebetso ea hoo e ka bang 7% ha o ngola ka kotloloho ka mokhoa oa nowait. Ts'ebetso ea ts'ebetso ka mokhoa oa NOCOW (ntle le ho kopitsa-ho-ngola) e eketsoa ka hoo e ka bang 3%. Mojaro o leqepheng la cache ha o tsamaisa taelo ea "romela" o fokotsehile. Boholo ba li-subpages bo fokotsoe ho tloha ho 64K ho ea ho 4K (maqephe a manyane ho feta a kernel a ka sebelisoa). Phetoho e entsoe ho tloha ho sebelisa sefate sa radix ho ea ho algorithm ea XArrays.
    • Ho kentsoe mokhoa ho seva sa NFS ho atolosa paballo ea boemo ba ho notlela bo behiloeng ke moreki ea emisitseng ho araba likopo. Mokhoa o mocha o u lumella hore u liehe ho hlakola senotlolo ho fihlela letsatsi ntle le haeba moreki e mong a kopa senotlolo se hlolisanang. Ka mokhoa o tloaelehileng, ho thibela ho tlosoa metsotsoana e 90 ka mor'a hore mofani a khaotse ho arabela.
    • Seseteme se tlase sa ho latedisa diketsahalo ho fanotify FS se sebedisa folaga ya FAN_MARK_EVICTABLE, eo ka yona o ka timang di-i-node tsa sepheo ka hara cache, ka mohlala, ho iphapanyetsa makala a manyane ntle le ho toboketsa dikarolo tsa ona ho cache.
    • Mokhanni oa sistimi ea faele ea FAT32 o ekelitse ts'ehetso ea ho fumana leseli mabapi le nako ea tlhahiso ea faele ka mohala oa sistimi ea statx ka ts'ebetsong ea mofuta o sebetsang hantle le o sebetsang oa stat(), o khutlisang tlhahisoleseling e atolositsoeng mabapi le faele.
    • Lintlafatso tse kholo li entsoe ho mokhanni oa exFAT ho lumella ho hlakisoa ha sehlopha sa likarolo ka nako e le 'ngoe ha mokhoa oa 'dirsync' o sebetsa, ho fapana le ho hlakisa karolo ka tatellano ea karolo. Ka ho fokotsa palo ea likopo tsa block ka mor'a ho ntlafatsa, ts'ebetso ea ho theha palo e kholo ea li-directory ho karete ea SD e eketsehile ho feta 73-85%, ho itšetlehile ka boholo ba lihlopha.
    • Kernel e kenyelletsa ntlafatso ea pele ea tokiso ho mokhanni oa ntfs3. Ho tloha ha ntfs3 e kenyelelitsoe ho 5.15 kernel ho qetela ka October, mokhanni ha a e-s'o ntlafatsoe 'me puisano le bahlahisi e lahlehile, empa joale bahlahisi ba qalile liphetoho tsa khatiso. Li-patches tse reriloeng li felisitse liphoso tse lebisang ho lutla ha memori le likotsi, ra rarolla mathata ka ts'ebetso ea xfstests, li hloekisitse khoutu e sa sebelisoeng, le li-typos tse tsitsitseng.
    • Bakeng sa OverlayFS, bokhoni ba ho etsa 'mapa oa li-ID tsa mosebelisi oa sistimi ea faele e kentsoeng, e sebelisetsoang ho ts'oana le lifaele tsa mosebelisi ea itseng sebakeng sa kantle ho naha le mosebelisi e mong tsamaisong ea hajoale.
  • Litšebeletso tsa memori le tsamaiso
    • E kenyellelitse ts'ehetso ea pele bakeng sa meralo ea thuto ea LoongArch e sebelisitsoeng ho li-processor tsa Loongson 3 5000, e sebelisang RISC ISA e ncha, e ts'oanang le MIPS le RISC-V. Moralo oa LoongArch o fumaneha ka litlolo tse tharo: 32-bit (LA32R), e tloaelehileng ea 32-bit (LA32S), le 64-bit (LA64).
    • Khoutu e tlositsoe ho ts'ehetsa fomete ea faele e sebetsang ea a.out, e neng e tlositsoe tokollong ea 5.1. Sebopeho sa a.out ke khale se sa sebelisoe lits'ebetsong tsa Linux, 'me tlhahiso ea lifaele tsa a.out ha e tšehetsoe ke lisebelisoa tsa sejoale-joale ho litlhophiso tsa kamehla tsa Linux. The loader bakeng sa lifaele tsa a.out e ka sebelisoa ka ho feletseng sebakeng sa mosebedisi.
    • Ts'ehetso bakeng sa likhetho tse ikhethileng tsa x86 e khaotsoe: nosp, nosmap, nosmep, noexec le noclflush).
    • Tšehetso bakeng sa meralo ea khale ea CPU h8300 (Renesas H8/300), eo e leng khale e siiloe ntle le tšehetso, e khaotsoe.
    • Bokhoni bo atolositsoeng bo amanang le ho arabela ho sibolloeng ha liloko tse arohaneng ("split locks") tse etsahalang ha ho fihlella data e sa lekanyetsoang mohopolong ka lebaka la hore ha ho etsoa taelo ea athomo, data e tšela mela e 'meli ea cache ea CPU. Li-blockages tse joalo li lebisa ho fokotseha ho hoholo ha ts'ebetso. Haeba pele, ka ho sa feleng, kernel e ne e tla fana ka temoso ka tlhahisoleseding e mabapi le ts'ebetso e bakileng ho thibela, joale ts'ebetso e nang le bothata e tla fokotseha ka ho eketsehileng ho boloka ts'ebetso ea tsamaiso eohle.
    • Ts'ehetso e ekelitsoeng bakeng sa mochini oa IFS (In-Field Scan) o kentsoeng ts'ebetsong ea Intel processors, e u lumellang ho etsa liteko tsa tlhahlobo ea boemo bo tlase ba CPU tse ka khethollang mathata a sa lemohuoeng ka lisebelisoa tse tloaelehileng tse ipapisitseng le likhoutu tsa tokiso ea liphoso (ECC) kapa li-parity bits. . Liteko tse entsoeng li ka mofuta oa firmware e ka jarolloang, e etselitsoeng ho ts'oana le liapdeite tsa microcode. Liphetho tsa liteko li fumaneha ka li-sysfs.
    • E kenyellelitse bokhoni ba ho kenya faele ea bootconfig ka har'a kernel, e lumellang, ho phaella likhethong tsa line ea taelo, ho tseba litekanyo tsa kernel ka faele ea litlhophiso. Ho kenyelletsa ho etsoa ho sebelisoa khetho ea kopano 'CONFIG_BOOT_CONFIG_EMBED_FILE=»/PATH/TO/BOOTCONFIG/FILE»'. Pejana, bootconfig e ne e khethoa ka ho hokela setšoantšo sa initrd. Ho kopanya kernel ho lumella bootconfig hore e sebelisoe ho litlhophiso ntle le initrd.
    • Bokhoni ba ho khoasolla firmware e hatelitsoeng ka algorithm ea Zstandard e kentsoe tšebetsong. Sehlopha sa lifaele tsa taolo /sys/class/firmware/* se kentsoe ho sysfs, se u lumella ho qala ho kenya firmware ho tsoa sebakeng sa mosebelisi.
    • Io_uring asynchronous I/O interface e fana ka folakha e ncha, IORING_RECVSEND_POLL_FIRST, eo, ha e behiloe, e tla qala ho romela ts'ebetso ea marang-rang e lokelang ho sebetsoa ho sebelisoa likhetho, e ka bolokang lisebelisoa maemong ao ho sebetsa ha ts'ebetso ka ho lieha ho itseng ho amohelehang. io_uring e boetse e ekelitse ts'ehetso bakeng sa mohala oa tsamaiso ea socket(), lifolakha tse ncha tse reriloeng ho nolofatsa tsamaiso ea litlhaloso tsa lifaele, tsa eketsa mokhoa oa "multi-shot" bakeng sa ho amohela likhokahano tse 'maloa ka nako e le' ngoe ka call () call, le ts'ebetso e eketsehileng ea ho fetisetsa NVMe. e laela ka kotloloho ho sesebelisoa.
    • Moralo oa Xtensa o fana ka ts'ehetso bakeng sa sesebelisoa sa ho lokisa sa KCSAN (Kernel Concurrency Sanitizer), se etselitsoeng ho bona maemo a morabe ka har'a kernel. E boetse e kenyelelitsoe tšehetso bakeng sa mokhoa oa ho robala le li-coprocessors.
    • Bakeng sa meralo ea m68k (Motorola 68000), mochini o sebetsang (sethaleng sa simulator) se thehiloeng ho emulator ea Android Goldfish e kentsoe ts'ebetsong.
    • Bakeng sa meralo ea AArch64, tšehetso ea Armv9-A SME (Scalable Matrix Extension) e kentsoe ts'ebetsong.
    • Subsystem ea eBPF e lumella ho boloka lintlha tse tlatsitsoeng ka har'a meaho ea limmapa, hape e eketsa ts'ehetso bakeng sa lintlha tse matla.
    • Ho hlahisoa mokhoa o mocha oa ho khutlisa mohopolo o ts'ehetsang taolo ea sebaka sa mosebelisi o sebelisa faele ea memory.reclaim. Ho ngola nomoro faeleng e boletsoeng ho tla leka ho leleka palo e tsamaellanang ea li-byte ho sete e amanang le sehlopha.
    • Ho nepahala ho ntlafalitsoeng ha ts'ebeliso ea memori ha o hatella data karohanong ea swap o sebelisa mochini oa zswap.
    • Bakeng sa meralo ea RISC-V, ts'ehetso ea ho tsamaisa lits'ebetso tsa 32-bit lits'ebetsong tsa 64-bit e fanoa, mokhoa o eketsoa ho tlama litšobotsi tse thibelang maqephe a memori (mohlala, ho tima caching), mme kexec_file_load() ts'ebetso e kengoa ts'ebetsong. .
    • Ts'ebetsong ea ts'ehetso bakeng sa litsamaiso tsa 32-bit Armv4T le Armv5 e ikamahanya le maemo hore e sebelisoe meahong ea kernel ea lipolanete tse ngata e loketseng litsamaiso tse fapaneng tsa ARM.
  • Virtualization le Tšireletso
    • Setsi sa tsamaiso sa EFI se sebelisa bokhoni ba ho fetisetsa tlhahisoleseling ea lekunutu ho litsamaiso tsa baeti ntle le ho e senolela moamoheli. Lintlha li fanoa ka bukana ea tšireletso / coco ho li-securityfs.
    • Mokhoa oa ts'ireletso oa Lockdown, o thibelang phihlello ea motso ho kernel le ho thibela litsela tsa UEFI Secure Boot bypass, o felisitse lekhalo le neng le lumella tšireletso hore e fetiloe ka ho qhekella kernel debugger.
    • Ho kenyelelitsoe lipache tse reretsoeng ho ntlafatsa ts'epo le ts'ebetso ea jenereithara ea linomoro tsa pseudo-random.
    • Ha o aha o sebelisa Clang 15, ts'ehetso ea mochini oa ho etsa libopeho tsa kernel ka mokhoa o sa reroang oa kengoa ts'ebetsong.
    • Mochine oa Landlock, o u lumellang ho fokotsa tšebelisano ea sehlopha sa lits'ebetso le tikoloho ea kantle, e fana ka ts'ehetso bakeng sa melao e u lumellang ho laola ts'ebetso ea ts'ebetso ea ho reha lebitso la faele.
    • The IMA (Integrity Measurement Architecture) e etselitsoeng ho netefatsa botšepehi ba likarolo tsa tsamaiso ea tsamaiso e sebelisang li-signature tsa digital le li-hashes, e fetoletsoe ho sebelisa fs-verity module bakeng sa ho netefatsa lifaele.
    • Maikutlo a liketso ha a thibela phihlello e sa lebelloang ho eBPF subsystem e fetotsoe - pele litaelo tsohle tse amanang le bpf() system call li ne li holofalitsoe, mme ho qala ka mofuta oa 5.19, phihlello ea litaelo tse sa lebiseng ho thehoeng ha lintho e siiloe. . Boitšoaro bona bo hloka ts'ebetso e khethehileng ea ho kenya lenaneo la BPF, empa mekhoa e sa tsitsang e ka sebelisana le lenaneo.
    • Ts'ehetso e ekelitsoeng bakeng sa katoloso ea AMD SEV-SNP (Secure Nested Paging), e fanang ka mosebetsi o sireletsehileng ka litafole tsa maqephe a memori e behiloeng le ho sireletsa khahlanong le litlhaselo tsa "undeSerVed" le "SEVerity" ho li-processor tsa AMD EPYC, tse lumellang ho feta AMD SEV (Secure Encrypted Virtualization. ) mokhoa oa tšireletso.
    • Ts'ehetso e ekelitsoeng bakeng sa mochini oa Intel TDX (Trusted Domain Extensions), o u lumellang ho thibela liteko tsa motho oa boraro ho fihlella mohopolo o patiloeng oa mechini e fumanehang.
    • Mokhanni oa virtio-blk, ea sebelisetsoang ho etsisa lisebelisoa tsa thibela, o ekelitse tšehetso bakeng sa I / O ho sebelisa likhetho, tseo, ho ea ka liteko, li fokolitseng latency ka hoo e ka bang 10%.
  • Sistimi e nyane ea marang-rang
    • Sephutheloana sena se kenyelletsa letoto la li-patches tsa BIG TCP tse u lumellang hore u eketse boholo ba pakete ea pakete ea TCP ho 4GB ho ntlafatsa ts'ebetso ea marang-rang a marang-rang a marang-rang a ka hare. Keketseho e tšoanang ea boholo ba pakete e nang le boholo ba tšimo ea hlooho ea 16-bit e finyelloa ka ho kenya ts'ebetsong ea lipakete tsa "jumbo", boholo ba hlooho ea IP e behiloeng ho 0, 'me boholo ba sebele bo fetisoa ka 32-bit e arohaneng. lebala ka hlooho e hoketsoeng e arohaneng. Litekong tsa ts'ebetso, ho beha boholo ba pakete ho 185 KB ho eketsehile ka 50% le ho fokotsa latency ea ho fetisa data haholo.
    • Mosebetsi o ile oa tsoela pele ho kopanya lisebelisoa ka har'a stack ea marang-rang ho latela mabaka a ho lahla lipakete (likhoutu tsa mabaka). Khoutu ea mabaka e romelloa ha memori e amanang le pakete e lokolloa 'me e lumella maemo a kang ho lahla pakete ka lebaka la liphoso tsa hlooho, ho lemoha rp_filter spoofing, checksum e sa nepahaleng, ho tsoa mohopolong, melao ea IPSec XFRM e qalileng, nomoro ea tatellano e sa nepahaleng ea TCP, joalo-joalo.
    • Ts'ehetso e ekelitsoeng bakeng sa likhokahano tse oelang morao tsa MPTCP (MultiPath TCP) ho sebelisa TCP e tloaelehileng, maemong ao likarolo tse ling tsa MPTCP li ke keng tsa sebelisoa. MPTCP ke katoloso ea protocol ea TCP bakeng sa ho hlophisa ts'ebetso ea khokahano ea TCP le ho tsamaisoa ha lipakete ka nako e le 'ngoe litseleng tse' maloa ka marang-rang a fapaneng a marang-rang a amanang le liaterese tse fapaneng tsa IP. E kentse API ho laola melapo ea MPTCP ho tsoa sebakeng sa basebelisi.
  • Lisebelisoa
    • E kenyellelitsoe mela e fetang 420k ea khoutu e amanang le mokhanni oa amdgpu, eo mela e ka bang 400k e leng lifaele tsa lihlooho tse iketselitsoeng ka boits'oaro bakeng sa data ea ngoliso ea ASIC ho mokhanni oa AMD GPU, le mela e meng ea 22.5k e fana ka ts'ebetsong ea ts'ehetso ea AMD SoC21. Kakaretso ea boholo ba mokhanni oa AMD GPUs e fetile mela e limilione tse 4 ea khoutu. Ho phaella ho SoC21, mokhanni oa AMD o kenyelletsa tšehetso bakeng sa SMU 13.x (Setsi sa Tsamaiso ea Tsamaiso), tšehetso e nchafalitsoeng bakeng sa USB-C le GPUVM, 'me e ikemiselitse ho tšehetsa meloko e latelang ea RDNA3 (RX 7000) le CDNA (AMD Instinct) sethala.
    • Mokhanni oa i915 (Intel) o ekelitse bokhoni bo amanang le tsamaiso ea matla. Li-identifiers tse kenyellelitsoeng bakeng sa li-GPU tsa Intel DG2 (Arc Alchemist) tse sebelisoang ho li-laptops, li fane ka tšehetso ea pele bakeng sa sethala sa Intel Raptor Lake-P (RPL-P), le tlhahisoleseding e eketsehileng mabapi le likarete tsa litšoantšo tsa Arctic Sound-M), tse kentsoeng ABI bakeng sa lienjineri tsa compute, tse kenyellelitsoeng Ts'ehetso ea likarete tsa DG2 bakeng sa sebopeho sa Tile4; bakeng sa litsamaiso tse thehiloeng ho microarchitecture ea Haswell, tšehetso ea DisplayPort HDR ea kengoa ts'ebetsong.
    • Mokhanni oa Nouveau o fetohetse ho sebelisa drm_gem_plane_helper_prepare_fb handler; static memory allocation e sebelisitsoe meahong le mefuta e meng. Mabapi le ts'ebeliso ea li-module tsa kernel mohloli o bulehileng ke NVIDIA ho Nouveau, mosebetsi ho fihlela joale o theohela ho khetholla le ho felisa liphoso. Nakong e tlang, firmware e hatisitsoeng e reretsoe ho sebelisoa ho ntlafatsa ts'ebetso ea mokhanni.
    • E kentse mokhanni bakeng sa molaoli oa NVMe o sebelisoang lik'homphieutha tsa Apple tse thehiloeng ho M1 chip.

Ka nako e ts'oanang, Latin American Free Software Foundation e thehile mofuta oa kernel ea mahala 5.19 - Linux-libre 5.19-gnu, e hlakotsoeng ea likarolo tsa firmware le bakhanni ba nang le likarolo tse sa lefelloeng kapa likarolo tsa khoutu, tseo boholo ba tsona e leng. e lekantsoeng ke moetsi. Tokollo e ncha e hloekisa bakhanni ba pureLiFi X/XL/XC le TI AMx3 Wkup-M3 IPC. Khoutu e ntlafalitsoeng ea ho hloekisa blob ho Silicon Labs WFX, AMD amdgpu, Qualcomm WCNSS Peripheral Image Loader, Realtek Bluetooth, Mellanox Spectrum, Marvell WiFi-Ex, Intel AVS, IFS, bakhanni ba pu3-imgu le li-subsystems. Ts'ebetso ea lifaele tsa Qualcomm AArch64 devicetree e kentsoe tšebetsong. Tšehetso e ekelitsoeng bakeng sa morero o mocha oa ho reha karolo oa Sound Open Firmware. E emisitse ho hloekisa mokhanni oa Moemeli oa ATM, ea tlositsoeng kernel. Tsamaiso ea ho hloekisa li-blob ho HDCP le Mellanox Core e tlositsoe ho arola li-tag tsa kconfig.

Source: opennet.ru

Eketsa ka tlhaloso