Itusilẹ ekuro Linux 5.19

Lẹhin oṣu meji ti idagbasoke, Linus Torvalds ṣafihan itusilẹ ti ekuro Linux 5.19. Lara awọn ayipada ti o ṣe akiyesi julọ: atilẹyin fun faaji ero isise LoongArch, iṣọpọ ti awọn abulẹ “BIG TCP”, ipo ibeere ni fscache, yiyọ koodu lati ṣe atilẹyin ọna kika a.out, agbara lati lo ZSTD fun funmorawon famuwia, wiwo fun Ṣiṣakoṣo imukuro iranti lati aaye olumulo, jijẹ igbẹkẹle ati iṣẹ ti olupilẹṣẹ nọmba airotẹlẹ, atilẹyin fun Intel IFS (Iyẹwo Ni-Field), AMD SEV-SNP (Paging Nested Secure), Intel TDX (Awọn amugbooro Aṣẹ Gbẹkẹle) ati ARM SME (Scalable Matrix Itẹsiwaju) awọn amugbooro.

Ninu ikede naa, Linus sọ pe o ṣeeṣe julọ itusilẹ ekuro ti nbọ yoo jẹ nọmba 6.0, niwọn igba ti ẹka 5.x ti ṣajọpọ awọn idasilẹ to lati yi nọmba akọkọ pada ninu nọmba ẹya naa. Iyipada nọmba naa ni a ṣe fun awọn idi ẹwa ati pe o jẹ igbesẹ deede ti o tu aibalẹ kuro nitori ikojọpọ ti nọmba nla ti awọn ọran ninu jara.

Linus tun mẹnuba pe o lo kọǹpútà alágbèéká Apple kan ti o da lori faaji ARM64 (Apple Silicon) pẹlu agbegbe Linux kan ti o da lori pinpin Asahi Linux lati ṣẹda itusilẹ naa. Kii ṣe iṣẹ iṣẹ akọkọ ti Linus, ṣugbọn o lo pẹpẹ lati ṣe idanwo ibamu rẹ fun iṣẹ ekuro ati lati rii daju pe o le gbejade awọn idasilẹ ekuro lakoko ti o nrinrin pẹlu kọǹpútà alágbèéká iwuwo fẹẹrẹ ni ọwọ. Ni iṣaaju, ọpọlọpọ ọdun sẹyin, Linus ni iriri nipa lilo ohun elo Apple fun idagbasoke - o ti lo PC lẹẹkan kan ti o da lori ppc970 Sipiyu ati kọǹpútà alágbèéká Macbook Air kan.

Ẹya tuntun naa pẹlu awọn atunṣe 16401 lati awọn olupilẹṣẹ 2190 (ni idasilẹ kẹhin awọn atunṣe 16206 wa lati ọdọ awọn olupilẹṣẹ 2127), iwọn alemo jẹ 90 MB (awọn iyipada ti o kan awọn faili 13847, awọn laini koodu 1149456 ti ṣafikun, awọn laini 349177 ti paarẹ). O fẹrẹ to 39% ti gbogbo awọn ayipada ti a ṣafihan ni 5.19 ni ibatan si awọn awakọ ẹrọ, isunmọ 21% ti awọn ayipada ni ibatan si imudojuiwọn koodu kan pato si awọn faaji ohun elo, 11% jẹ ibatan si akopọ Nẹtiwọọki, 4% ni ibatan si awọn eto faili, ati 3% jẹ ibatan si awọn eto inu ekuro inu.

Awọn imotuntun bọtini ni kernel 5.19:

  • Disk Subsystem, I/O ati File Systems
    • Eto faili EROFS (Imudara Ka-nikan Faili), ti a pinnu fun lilo lori awọn ipin kika-nikan, ti yipada lati lo fscache subsystem, eyiti o pese caching data. Iyipada naa ṣe ilọsiwaju iṣẹ ṣiṣe ti awọn eto ninu eyiti nọmba nla ti awọn apoti ti ṣe ifilọlẹ lati aworan ti o da lori EROFS.
    • Ipo kika ibeere ti wa ni afikun si fscache subsystem, eyiti o jẹ lilo lati mu EROFS dara si. Ipo tuntun n gba ọ laaye lati ṣeto kaṣe kika lati awọn aworan FS ti o wa ni eto agbegbe. Ni idakeji si ipo iṣiṣẹ ti o wa ni ibẹrẹ, eyiti o dojukọ caching ni eto faili agbegbe ti data ti o gbe nipasẹ awọn ọna ṣiṣe faili nẹtiwọọki, ipo “lori-eletan” ṣe aṣoju awọn iṣẹ ti gbigba data ati kikọ si kaṣe si lọtọ. ilana isale nṣiṣẹ ni aaye olumulo.
    • XFS n pese agbara lati ṣafipamọ awọn ọkẹ àìmọye ti awọn abuda ti o gbooro ni i-node kan. Nọmba ti o pọ julọ ti awọn iwọn fun faili kan ti pọ si lati 4 bilionu si 247. Ipo kan ti ṣe imuse fun mimu dojuiwọn atomiki ọpọlọpọ awọn abuda faili ti o gbooro sii ni ẹẹkan.
    • Eto faili Btrfs ti ni iṣapeye iṣẹ pẹlu awọn titiipa, eyiti o gba laaye fun isunmọ 7% ilosoke ninu iṣẹ nigba kikọ taara ni ipo isinsinyi. Iṣe awọn iṣẹ ni ipo NOCOW (laisi ẹda-lori-kikọ) ti pọ si nipasẹ isunmọ 3%. Awọn fifuye lori kaṣe oju-iwe nigbati o nṣiṣẹ aṣẹ “firanṣẹ” ti dinku. Iwọn ti o kere ju ti awọn oju-iwe kekere ti dinku lati 64K si 4K (awọn oju-iwe kekere ti o kere ju awọn oju-iwe ekuro le ṣee lo). A ti ṣe iyipada kan lati lilo igi radix kan si XArrays algorithm.
    • A ti ṣafikun ipo kan si olupin NFS lati faagun ifipamọ ipo titiipa ti a ṣeto nipasẹ alabara kan ti o dẹkun idahun si awọn ibeere. Ipo tuntun n gba ọ laaye lati ṣe idaduro imukuro titiipa fun ọjọ kan ayafi ti alabara miiran ba beere titiipa idije kan. Ni ipo deede, idinamọ naa ti yọkuro ni iṣẹju-aaya 90 lẹhin ti alabara da idahun.
    • Eto eto ipasẹ iṣẹlẹ ni fanotify FS ṣe imuse asia FAN_MARK_EVICTABLE, pẹlu eyiti o le mu pinning awọn i-ipade ibi-afẹde ninu kaṣe, fun apẹẹrẹ, lati foju awọn ẹka-ẹka laisi pin awọn apakan wọn sinu kaṣe.
    • Awakọ fun eto faili FAT32 ti ṣafikun atilẹyin fun gbigba alaye nipa akoko ti ẹda faili nipasẹ ipe eto statx pẹlu imuse ti iṣẹ ṣiṣe daradara ati ẹya ti iṣiro (), eyiti o da alaye gbooro pada nipa faili naa.
    • Awọn iṣapeye to ṣe pataki ni a ti ṣe si awakọ exFAT lati gba imukuro nigbakanna ti ẹgbẹ kan ti awọn apa nigbati ipo 'dirsync' n ṣiṣẹ, dipo imukuro ti eka-nipasẹ-apakan. Nipa idinku nọmba awọn ibeere bulọọki lẹhin iṣapeye, iṣẹ ṣiṣe ti ṣiṣẹda nọmba nla ti awọn ilana lori kaadi SD pọ si nipasẹ diẹ sii ju 73-85%, da lori iwọn iṣupọ.
    • Ekuro pẹlu imudojuiwọn atunṣe akọkọ si awakọ ntfs3. Niwọn igba ti ntfs3 ti wa ninu ekuro 5.15 ni Oṣu Kẹwa to kọja, awakọ naa ko ti ni imudojuiwọn ati pe ibaraẹnisọrọ pẹlu awọn olupilẹṣẹ ti sọnu, ṣugbọn awọn olupilẹṣẹ ti tun bẹrẹ awọn ayipada atẹjade. Awọn abulẹ ti a dabaa yọkuro awọn aṣiṣe ti o yori si awọn n jo iranti ati awọn ipadanu, awọn iṣoro ti o yanju pẹlu ipaniyan xfstests, nu koodu ti ko lo, ati awọn typos ti o wa titi.
    • Fun OverlayFS, agbara lati ṣe maapu awọn ID olumulo ti awọn ọna ṣiṣe faili ti a fi sori ẹrọ ti ni imuse, eyiti o jẹ lilo lati baramu awọn faili ti olumulo kan pato lori ipin ajeji ti a gbe soke pẹlu olumulo miiran lori eto lọwọlọwọ.
  • Iranti ati awọn iṣẹ eto
    • Atilẹyin akọkọ ti a ṣafikun fun eto eto ilana LoongArch ti a lo ninu awọn ilana Loongson 3 5000, eyiti o ṣe imuse RISC ISA tuntun, ti o jọra si MIPS ati RISC-V. Awọn faaji LoongArch wa ni awọn adun mẹta: yiyọ-si isalẹ 32-bit (LA32R), 32-bit deede (LA32S), ati 64-bit (LA64).
    • Koodu ti o yọ kuro lati ṣe atilẹyin ọna kika faili a.out ti o le ṣiṣẹ, eyiti o ti sọkuro ni idasilẹ 5.1. Ọna kika a.out ti pẹ lori awọn eto Linux, ati iran awọn faili a.out ko ni atilẹyin nipasẹ awọn irinṣẹ ode oni ni awọn atunto Lainos aiyipada. Agberu fun awọn faili a.out le ṣe imuse patapata ni aaye olumulo.
    • Atilẹyin fun awọn aṣayan bata-pato x86 ti dawọ duro: nosp, nosmap, nosmep, noexec ati noclflush).
    • Atilẹyin fun igba atijọ Sipiyu h8300 faaji (Renesas H8/300), eyi ti o ti gun a ti osi lai support, ti a ti dawọ.
    • Awọn agbara ti o gbooro ti o ni ibatan si idahun si wiwa ti awọn titiipa pipin (“awọn titiipa pipin”) ti o waye nigbati o wọle si data ti ko ni ibamu ni iranti nitori otitọ pe nigba ṣiṣe ilana atomiki kan, data naa kọja awọn laini kaṣe Sipiyu meji. Iru blockages ja si kan significant ju ni išẹ. Ti tẹlẹ, nipasẹ aiyipada, ekuro yoo funni ni ikilọ pẹlu alaye nipa ilana ti o fa idinamọ, ni bayi ilana iṣoro naa yoo fa fifalẹ siwaju lati ṣetọju iṣẹ ti eto iyokù.
    • Atilẹyin ti a ṣafikun fun ẹrọ IFS (In-Field Scan) ti a ṣe imuse ni awọn ilana Intel, eyiti o fun ọ laaye lati ṣiṣe awọn idanwo iwadii ipele kekere ti Sipiyu ti o le ṣe idanimọ awọn iṣoro ti a ko rii nipasẹ awọn irinṣẹ boṣewa ti o da lori awọn koodu atunṣe aṣiṣe (ECC) tabi awọn iwọn ilawọn. . Awọn idanwo ti a ṣe wa ni irisi famuwia ti o ṣe igbasilẹ, ti a ṣe apẹrẹ bakanna si awọn imudojuiwọn microcode. Awọn abajade idanwo wa nipasẹ sysfs.
    • Ṣe afikun agbara lati fi sabe faili bootconfig sinu ekuro, eyiti ngbanilaaye, ni afikun si awọn aṣayan laini aṣẹ, lati pinnu awọn aye ti ekuro nipasẹ faili eto kan. Ifibọ ni a ṣe ni lilo aṣayan apejọ 'CONFIG_BOOT_CONFIG_EMBED_FILE="/PATH/TO/BOOTCONFIG/FILE"'. Ni iṣaaju, bootconfig jẹ ipinnu nipasẹ sisopọ si aworan initrd. Ijọpọ sinu ekuro ngbanilaaye bootconfig lati ṣee lo ni awọn atunto laisi initrd kan.
    • Agbara lati ṣe igbasilẹ famuwia fisinuirindigbindigbin ni lilo algorithm Zstandard ti ni imuse. Eto awọn faili iṣakoso / sys / kilasi / famuwia / * ti ṣafikun si sysfs, gbigba ọ laaye lati bẹrẹ ikojọpọ famuwia lati aaye olumulo.
    • Ni wiwo io_uring asynchronous I/O nfunni ni asia tuntun, IORING_RECVSEND_POLL_FIRST, eyiti, nigbati o ba ṣeto, yoo kọkọ firanṣẹ iṣẹ nẹtiwọọki kan lati ṣe ilana nipa lilo idibo, eyiti o le ṣafipamọ awọn orisun ni awọn ipo nibiti sisẹ iṣẹ naa pẹlu idaduro diẹ jẹ itẹwọgba. io_uring tun ṣe afikun atilẹyin fun ipe eto socket (), awọn asia tuntun ti a dabaa lati ṣe irọrun iṣakoso ti awọn apejuwe faili, ṣafikun ipo “ọpọlọpọ-shot” fun gbigba awọn asopọ pupọ ni ẹẹkan ni ipe gbigba (), ati ṣafikun awọn iṣẹ ṣiṣe fun fifiranṣẹ NVMe paṣẹ taara si ẹrọ naa.
    • Itumọ Xtensa n pese atilẹyin fun KCSAN (Kernel Concurrency Sanitizer) ohun elo n ṣatunṣe aṣiṣe, ti a ṣe lati ṣe iwari awọn ipo ere-ije laarin ekuro. Tun fi kun support fun orun mode ati coprocessors.
    • Fun faaji m68k (Motorola 68000), ẹrọ foju kan (labeere Syeed) ti o da lori emulator Android Goldfish ti ni imuse.
    • Fun faaji AArch64, atilẹyin fun Armv9-A SME (Scalable Matrix Extension) ti ni imuse.
    • Eto abẹlẹ eBPF ngbanilaaye titoju awọn itọka titẹ sinu awọn ẹya maapu, ati pe o tun ṣafikun atilẹyin fun awọn itọka agbara.
    • Ilana imupadabọ iranti imuṣiṣẹ tuntun ti ni imọran ti o ṣe atilẹyin iṣakoso aaye olumulo nipa lilo faili memory.reclaim. Kikọ nọmba kan si faili pàtó kan yoo gbiyanju lati yọ nọmba ti o baamu ti awọn baiti kuro ninu eto ti o ni nkan ṣe pẹlu akojọpọ.
    • Imudara išedede ti lilo iranti nigba titẹ data ni ipin swap nipa lilo ẹrọ zswap.
    • Fun faaji RISC-V, atilẹyin fun ṣiṣe awọn adaṣe 32-bit lori awọn ọna ṣiṣe 64-bit ti pese, ipo kan ni a ṣafikun lati di awọn abuda ihamọ si awọn oju-iwe iranti (fun apẹẹrẹ, lati mu caching kuro), ati iṣẹ kexec_file_load () ti ṣe imuse. .
    • Imuse ti atilẹyin fun 32-bit Armv4T ati awọn eto Armv5 ti ni ibamu fun lilo ni awọn ipilẹ ekuro-ọpọlọpọ gbogbo agbaye ti o dara fun awọn eto ARM oriṣiriṣi.
  • Foju ati Aabo
    • Eto abẹlẹ EFI n ṣe imuse agbara lati gbe alaye aṣiri ni ikọkọ si awọn eto alejo laisi ṣiṣafihan rẹ si eto agbalejo. Awọn data ti wa ni pese nipasẹ awọn aabo/coco liana ni securityfs.
    • Ipo Idaabobo titiipa, eyiti o ni ihamọ wiwọle olumulo root si ekuro ati awọn bulọọki UEFI Secure Boot fori awọn ipa ọna, ti yọkuro loophole kan ti o gba aabo laaye lati kọja nipasẹ ifọwọyi kernel debugger.
    • To wa pẹlu awọn abulẹ ti o ni ero lati mu ilọsiwaju si igbẹkẹle ati iṣẹ ṣiṣe ti olupilẹṣẹ nọmba airotẹlẹ.
    • Nigbati o ba n kọ ni lilo Clang 15, atilẹyin fun ẹrọ fun awọn ẹya kernel aileto ti wa ni imuse.
    • Ilana Landlock, eyiti o fun ọ laaye lati ṣe idinwo ibaraenisepo ti ẹgbẹ kan ti awọn ilana pẹlu agbegbe ita, pese atilẹyin fun awọn ofin ti o gba ọ laaye lati ṣakoso ipaniyan awọn iṣẹ isọdọtun faili.
    • IMA (Integrity Measurement Architecture) subsystem, ti a ṣe lati rii daju iduroṣinṣin ti awọn paati ẹrọ nipa lilo awọn ibuwọlu oni nọmba ati hashes, ti yipada si lilo module fs-verity fun ijẹrisi faili.
    • Imọye ti awọn iṣe nigba piparẹ iraye si laini anfani si eto abẹlẹ eBPF ti yipada - ni iṣaaju gbogbo awọn aṣẹ ti o nii ṣe pẹlu ipe eto bpf () jẹ alaabo, ati bẹrẹ lati ẹya 5.19, iraye si awọn aṣẹ ti ko yorisi ṣiṣẹda awọn nkan ti wa ni osi. . Iwa yii nilo ilana ti o ni anfani lati ṣaja eto BPF kan, ṣugbọn lẹhinna awọn ilana ti ko ni anfani le ṣe ajọṣepọ pẹlu eto naa.
    • Atilẹyin ti a ṣafikun fun itẹsiwaju AMD SEV-SNP (Paging Ti o ni aabo), eyiti o pese iṣẹ to ni aabo pẹlu awọn tabili oju-iwe iranti itẹ-ẹiyẹ ati aabo lodi si awọn ikọlu “undeSErVed” ati “Severity” lori awọn ilana AMD EPYC, eyiti o gba laaye lati kọja AMD SEV (Iṣeduro Ipilẹṣẹ Aabo ) Idaabobo siseto.
    • Atilẹyin ti a ṣafikun fun ẹrọ Intel TDX (Awọn amugbooro ase igbẹkẹle), eyiti o fun ọ laaye lati dènà awọn igbiyanju ẹnikẹta lati wọle si iranti ti paroko ti awọn ẹrọ foju.
    • Awakọ virtio-blk, ti ​​a lo lati ṣe apẹẹrẹ awọn ẹrọ dina, ti ṣafikun atilẹyin fun I / O nipa lilo idibo, eyiti, ni ibamu si awọn idanwo, ti dinku lairi nipasẹ iwọn 10%.
  • Nẹtiwọọki subsystem
    • Apapọ naa pẹlu lẹsẹsẹ ti awọn abulẹ TCP BIG ti o gba ọ laaye lati mu iwọn idii ti o pọ julọ ti apo TCP kan pọ si 4GB lati mu iṣẹ ṣiṣe ti awọn nẹtiwọọki ile-iṣẹ data inu iyara ga julọ. Iru ilosoke ninu iwọn apo pẹlu iwọn aaye akọsori 16-bit ti waye nipasẹ imuse ti awọn apo-iwe “jumbo”, iwọn ti o wa ninu akọle IP ti a ṣeto si 0, ati pe iwọn gangan ti gbejade ni lọtọ 32-bit aaye ni lọtọ so akọsori. Ninu idanwo iṣẹ, ṣeto iwọn soso si 185 KB ti o pọ si nipasẹ 50% ati dinku lairi gbigbe data ni pataki.
    • Iṣẹ tẹsiwaju lori sisọpọ awọn irinṣẹ sinu akopọ nẹtiwọọki lati tọpinpin awọn idi fun sisọ awọn idii (awọn koodu idi). Idi koodu ti wa ni rán nigbati awọn iranti ni nkan ṣe pẹlu awọn soso ti wa ni ominira ati ki o gba fun awọn ipo bi soso soso nitori awọn aṣiṣe akọsori, rp_filter spoofing erin, invalid checksum, jade ti iranti, IPSec XFRM ofin jeki, invalid nọmba ọkọọkan TCP, ati be be lo.
    • Atilẹyin ti a ṣafikun fun yiyi awọn asopọ MPTCP (MultiPath TCP) pada lati lo TCP deede ni awọn ipo nibiti awọn ẹya MPTCP ko le ṣee lo. MPTCP jẹ itẹsiwaju ti ilana TCP fun siseto iṣẹ ti asopọ TCP kan pẹlu ifijiṣẹ awọn apo-iwe nigbakanna ni awọn ọna pupọ nipasẹ awọn atọkun nẹtiwọọki oriṣiriṣi ti o ni nkan ṣe pẹlu awọn adirẹsi IP oriṣiriṣi. API ti a ṣafikun lati ṣakoso awọn ṣiṣan MPTCP lati aaye olumulo.
  • Awọn ohun elo
    • Fikun awọn laini koodu 420k ti o ni ibatan si awakọ amdgpu, eyiti eyiti awọn laini 400k jẹ awọn faili akọsori ti ipilẹṣẹ adaṣe fun data iforukọsilẹ ASIC ninu awakọ AMD GPU, ati awọn laini 22.5k miiran pese imuse ibẹrẹ ti atilẹyin fun AMD SoC21. Iwọn awakọ lapapọ fun AMD GPUs kọja awọn laini koodu 4 miliọnu. Ni afikun si SoC21, awakọ AMD pẹlu atilẹyin fun SMU 13.x (Ẹka Iṣakoso Eto), atilẹyin imudojuiwọn fun USB-C ati GPUVM, ati pe o ti mura lati ṣe atilẹyin awọn iran atẹle ti RDNA3 (RX 7000) ati CDNA (AMD Instinct) awọn iru ẹrọ.
    • Awakọ i915 (Intel) ti fẹ awọn agbara ti o ni ibatan si iṣakoso agbara. Awọn idamọ ti a ṣafikun fun Intel DG2 (Arc Alchemist) GPU ti a lo lori kọǹpútà alágbèéká, pese atilẹyin ibẹrẹ fun ipilẹ Intel Raptor Lake-P (RPL-P), alaye ti a ṣafikun nipa awọn kaadi eya aworan Arctic Sound-M), ABI ti a ṣe fun awọn ẹrọ iṣiro, ti a ṣafikun fun Awọn kaadi DG2 ṣe atilẹyin fun ọna kika Tile4; fun awọn eto ti o da lori Haswell microarchitecture, atilẹyin DisplayPort HDR ti ṣe imuse.
    • Awakọ Nouveau ti yipada si lilo drm_gem_plane_helper_prepare_fb olutọju; ipin iranti aimi ni a ti lo si diẹ ninu awọn ẹya ati awọn oniyipada. Bi fun lilo awọn modulu kernel ṣiṣi orisun nipasẹ NVIDIA ni Nouveau, iṣẹ naa wa titi di isisiyi lati ṣe idanimọ ati imukuro awọn aṣiṣe. Ni ọjọ iwaju, famuwia ti a tẹjade ti gbero lati lo lati mu ilọsiwaju iṣẹ awakọ dara.
    • Ṣafikun awakọ kan fun oludari NVMe ti a lo ninu awọn kọnputa Apple ti o da lori chirún M1.

Ni akoko kanna, Latin American Free Software Foundation ṣe agbekalẹ ẹya kan ti ekuro ọfẹ patapata 5.19 - Linux-libre 5.19-gnu, nu kuro ninu awọn eroja ti famuwia ati awọn awakọ ti o ni awọn paati ti kii ṣe ọfẹ tabi awọn apakan ti koodu, ipari eyiti o jẹ ni opin nipasẹ olupese. Itusilẹ tuntun nu awọn awakọ mọ fun pureLiFi X/XL/XC ati TI AMx3 Wkup-M3 IPC. Imudojuiwọn blob ninu koodu ni Silicon Labs WFX, AMD amdgpu, Qualcomm WCNSS Agbeegbe Aworan Agberu, Realtek Bluetooth, Mellanox Spectrum, Marvell WiFi-Ex, Intel AVS, IFS, pu3-imgu awakọ ati subsystems. Sisẹ awọn faili ohun elo Qualcomm AArch64 ti ni imuse. Atilẹyin ti a ṣafikun fun ero isọrukọ paati Ohun Ṣii Famuwia tuntun. Daduro nu awakọ ATM Ambassador, eyiti a yọ kuro ninu ekuro. Ṣiṣakoso ti mimọ blob ni HDCP ati Mellanox Core ti gbe lọ si lọtọ awọn ami kconfig.

orisun: opennet.ru

Fi ọrọìwòye kun