Serbestberdana kernel Linux 5.11

Piştî du mehan pêşveçûnê, Linus Torvalds serbestberdana kernel Linux 5.11 pêşkêş kir. Di nav guheztinên herî berbiçav de: piştgirî ji bo dorpêçkirina Intel SGX, mekanîzmayek nû ji bo girtina bangên pergalê, otobusek alîkar a virtual, qedexekirina komkirina modulên bêyî MODULE_LICENSE(), moda fîlterkirina bilez ji bo bangên pergalê di seccomp de, bidawîkirina piştgirîyê ji bo mîmariya ia64, veguheztina teknolojiya WiMAX bo şaxê "qonaxa", şiyana vegirtina SCTP di UDP de.

Guhertoya nû 15480 rastkirinên ji 1991 pêşdebiran vedihewîne, mezinahiya patchê 72 MB e (guhertin bandor li 12090 pelan kir, 868025 rêzikên kodê hatin zêdekirin, 261456 xet hatin jêbirin). Nêzîkî 46% ji hemî guhertinên ku di 5.11-ê de hatine destnîşan kirin bi ajokarên cîhazê ve girêdayî ne, nêzîkê 16% ji guhertinan bi nûvekirina kodê ya taybetî bi mîmarên hardware ve girêdayî ne, 13% bi stûna torê ve girêdayî ne, 3% bi pergalên pelan ve girêdayî ne, û 4% bi bine pergalên kernelê yên navxweyî ve girêdayî ne.

Nûvekirinên sereke:

  • Disk Subsystem, I/O û Pergalên Pelê
    • Gelek vebijarkên lêdanê li Btrfs hatine zêdekirin ji bo karanîna dema vegerandina daneyan ji pergala pelan a xerabûyî: "rizgar = ignorebadroots" ji bo lêkirinê, tevî zirara hin darên kok (dirêj, uuid, veguheztina daneyê, cîhaz, csum, cîhê belaş), " rescue=ignoredatacsums” ji bo neçalakkirina kontrolkirina danûstendinê ya ji bo daneyan û “rescue=hemû” ji bo ku hevdem modên 'ignorebadroots', 'ignoredatacsums' û 'nologreplay' çalak bike. Vebijarka çîyayê "inode_cache" ya ku berê hatibû betalkirin, hate sekinandin. Kod ji bo pêkanîna piştgiriya blokên bi metadata û daneya ji mezinahiya rûpelê (PAGE_SIZE) piçûktir, û hem jî ji bo moda veqetandina cîhê zonî hatiye amadekirin. Daxwazên nebuffered (IO Direct) hatin veguheztin binesaziya iomap. Performansa hejmarek operasyonan xweştir bûye; di hin rewşan de, lezbûn dikare bi dehan ji sedî bigihîje.
    • XFS ala "needsrepair" bicîh tîne, ku hewcedariya tamîrkirinê nîşan dide. Dema ku ev ala were danîn, heya ku ala ji hêla kargêriya xfs_repair ve neyê vegerandin, pergala pelan nikare were saz kirin.
    • Ext4 tenê rastkirin û xweşbînkirina xeletiyan, û hem jî paqijkirina kodê pêşkêşî dike.
    • Ji nû ve îxracata pergalên pelan ên ku li ser NFS-ê hatine hilanîn destûr e (ango parçeyek ku bi NFS-ê ve hatî çêkirin naha dikare bi navgîniya NFS-ê ve were derxistin û wekî cache-ya navîn were bikar anîn).
    • Banga pergalê close_range(), ku destûrê dide pêvajoyek ku bi yekcarî tevahiya rêzenivîskarên pelên vekirî bigire, vebijarkek CLOSE_RANGE_CLOEXEC zêde kiriye da ku ravekeran di moda nêzîk-li-exec de bigire.
    • Pergala pelê F2FS bangên ioctl() yên nû lê zêde dike da ku rê bide kontrolkirina cîhê bikarhêner li ser kîjan pelan di forma pêçandî de têne hilanîn. "compress_mode=" vebijarka mountê hat zêdekirin da ku hilbijêrin ka meriv hilgirê berhevkirinê li kêleka kernelê an li cîhê bikarhêner bi cîh bike.
    • Kapasîteya ku Overlayfs ji hêla pêvajoyên bêdestûr ve bi karanîna cîhek navek bikarhênerek cihêreng ve bihejîne peyda kir. Ji bo verastkirina lihevhatina bi pêkanîna modela ewlehiyê re, kontrolek kodê ya tevahî hate kirin. Overlayfs di heman demê de şiyana xebitandinê bi karanîna kopiyên wêneyên pergala pelan bi neçalakkirina vebijarkî ya kontrolkirina UUID zêde dike.
    • Pergala pelan a Ceph piştgirî ji protokola msgr2.1 re zêde kiriye, ku destûrê dide algorîtmaya AES-GCM dema ku daneyan bi rengek şîfrekirî veguhezîne bikar bîne.
    • Modula dm-multipath dema ku rê ji bo daxwazên I/O hildibijêre, şiyana ku meriv pêwendiya CPU-yê ("girêdana IO") bihesibîne pêk tîne.
  • Xizmetên bîr û pergalê
    • Mekanîzmayek destwerdana bangewaziya pergalê ya nû hate zêdekirin, li ser bingeha prctl (), ku dihêle hûn dema ku bigihîjin bangek pergalê ya taybetî îstîsnayan ji cîhê bikarhêner biafirînin û pêkanîna wê bişelînin. Vê fonksiyonê di Wine û Proton de hewce dike ku bangên pergalê yên Windows-ê bişopîne, ku ji bo pêbaweriya bi lîstik û bernameyên ku rasterast bangên pergalê dikin ku ji API-ya Windows-ê derbas dibin (mînakek, ji bo parastina li hember karanîna bêdestûr) re hewce dike.
    • Banga pergalê userfaultfd(), ku ji bo birêvebirina xeletiyên rûpelan (gihîştina rûpelên bîranînê yên ne veqetandî) li cîhê bikarhêner hatî çêkirin, naha xwedan şiyana neçalakkirina îstîsnayên ku di asta kernelê de çêdibin heye da ku karanîna hin qelsiyan dijwartir bike.
    • Binepergala BPF ji bo hilanîna peywir-herêmî piştgirî lê zêde kiriye, ku daneyan bi destekek taybetî ya BPF ve girêdide.
    • Hesabkirina xerckirina bîranînê ji hêla bernameyên BPF ve bi tevahî ji nû ve hatî sêwirandin - li şûna rêgezek memlock ji bo birêvebirina karanîna bîranînê di tiştên BPF de kontrolkerek cgroup hate pêşniyar kirin.
    • Mekanîzmaya BTF (BPF Type Format), ku agahdariya kontrolkirina tîpê di pseudokoda BPF de peyda dike, ji modulên kernel re piştgirî peyda dike.
    • Ji bo bangên pergala shutdown(), renameat2() û unlinkat() ji bo navbeynkariya I/O ya asynkron a io_uring zêde kir. Dema ku gazî io_uring_enter (), şiyana diyarkirina demdirêjê hate zêdekirin (hûn dikarin piştgirîya argumanê kontrol bikin da ku demek bi karanîna ala IORING_FEAT_EXT_ARG diyar bikin).
    • Mîmariya ia64-a ku di pêvajoyên Intel Itanium de tê bikar anîn veguherî kategoriya sêwî, ku tê vê wateyê ku ceribandin rawestiyaye. Hewlett Packard Enterprise qebulkirina fermanên ji bo alavên nû yên Itanium rawestand, û Intel jî sala borî ev yek kir.
    • Piştgiriya pergalên ku li ser bingeha mîmariya MicroBlaze-yê ku yekîneyek rêveberiya bîranînê (MMU) tê de ne, hate sekinandin. Sîstemên wiha ji mêj ve di jiyana rojane de nehatine dîtin.
    • Ji bo mîmariya MIPS, piştgirî ji bo ceribandina vegirtina kodê bi karanîna gcov ve hatî zêdekirin.
    • Piştgiriyek ji bo otobusa alîkar a virtual ji bo pêwendiya bi cîhazên pirfunksional re ku fonksiyonên ku ajokarên cihêreng hewce dike (mînak, qertên torê yên bi piştgirîya Ethernet û RDMA) bi hev re berhev dikin. Otobus dikare were bikar anîn da ku ajokarek seretayî û duyemîn ji amûrekê re were veqetandin, di rewşên ku karanîna binepergala MFD (Alavên Pir-Fonksiyonî) pirsgirêk e.
    • Ji bo mîmariya RISC-V, piştgirî ji bo pergala veqetandina bîranînê CMA (Contiguous Memory Allocator) hatiye zêdekirin, ku ji bo veqetandina deverên bîranîna hevgirtî yên mezin bi karanîna teknîkên tevgera rûpela bîranînê xweştir e. Ji bo RISC-V, amûr jî têne bicîh kirin ku gihîştina /dev/mem-ê sînordar bikin û dema pêvajoyê ya qutbûnê li ber çavan bigirin.
    • Ji bo pergalên ARM-ê yên 32-bit, piştgirî ji bo KASan (Paqijkera navnîşana Kernelê) amûra debugkirinê hatiye zêdekirin, ku alîkariya tespîtkirina xeletiyan dike dema ku bi bîranînê re dixebite. Ji bo ARM-a 64-bit, pêkanîna KASan ji bo karanîna tagên MTE (MemTag) hate guherandin.
    • Banga pergalê epoll_pwait2() lê zêde kir ku destûrê bide demên bi rastbûna nanosecond (banga epoll_wait mîlîçirkeyan manîpule dike).
    • Pergala çêkirinê naha dema ku hewl dide ku modulên kernelê yên barkirî ava bike ku tê de lîsansa kodê bi karanîna makroya MODULE_LICENSE() nayê destnîşankirin, xeletiyek nîşan dide. Ji niha û pê ve, karanîna makroya EXPORT_SYMBOL() ji bo fonksiyonên statîk jî dê bibe sedema xeletiyek çêkirinê.
    • Piştgiriyek ji bo nexşeya tiştên GEM-ê ji bîranîna ku ji bo I/O tê bikar anîn zêde kir, ku ev gengaz kir ku lezkirina xebata bi framebufferê li ser hin mîmarî.
    • Kconfig piştgirî ji bo Qt4 berdaye (di heman demê de piştgirî ji bo Qt5, GTK û Ncurses diparêze).
  • Virtualization û Ewlekariya
    • Piştgiriya moda bersivek bilez li banga pergala seccomp () hate zêdekirin, ku dihêle hûn pir zû diyar bikin ka gaziyek pergalê destûr e an qedexe ye li ser bingeha bitmap-çalakiya domdar a ku bi pêvajoyê ve girêdayî ye, ku hewcedariya xebitandinê nake. handlerek BPF.
    • Perçeyên kernelê yên yekbûyî yên ji bo çêkirin û birêvebirina enclaves li ser bingeha teknolojiya Intel SGX (Nermalava Guard eXtensions), ku destûrê dide sepanan ku kodê li deverên şîfrekirî yên veqetandî yên bîranînê, yên ku pergalên mayî gihîştina wan tixûbdar e, bicîh bikin.
    • Wekî beşek ji destpêşxeriyek ji bo sînorkirina gihîştina ji cîhê bikarhêner bo MSR (qeyda-model-taybetî), nivîsandina qeyda MSR_IA32_ENERGY_PERF_BIAS, ku destûrê dide te ku hûn moda karbidestiya enerjiyê ya pêvajoyê biguhezînin ("normal", "performans", "powersave") , qedexe ye.
    • Kapasîteya neçalakkirina koçkirina peywirên pêşîn ên di navbera CPU-yan de ji şaxê kernel-rt-ê ji bo pergalên rast-dem hatî veguheztin.
    • Ji bo pergalên ARM64, şiyana karanîna tagên MTE (MemTag, Berfirehkirina Nîşankirina Bîrê) ji bo navnîşanên bîranîna hilgirê nîşanê hate zêdekirin. Bikaranîna MTE bi destnîşankirina vebijarka SA_EXPOSE_TAGBITS di sigaction() de tê çalak kirin û dihêle hûn karanîna rast a nîşankeran kontrol bikin da ku bikar anîna lawaziyên ku ji ber gihîştina blokên bîranînê yên ku berê hatine azadkirin, zêdekirina tamponan, gihîştina berî destpêkirinê, û karanîna derveyî rewşa heyî.
    • Parametreya "DM_VERITY_VERIFY_ROOTHASH_SIG_SECONDARY_KEYRING" lê zêde kir, ku destûrê dide binepergala dm-verity ku îmzeyên haş ên sertîfîkayên ku di mifteya duyemîn de hatine danîn kontrol bike. Di pratîkê de, sazkirin dihêle hûn ne tenê sertîfîkayên ku di nav kernelê de hatine çêkirin, lê di heman demê de sertîfîkayên ku di dema xebatê de hatine barkirin jî verast bikin, ku ev gengaz dike ku hûn sertîfîkayan nûve bikin bêyî nûvekirina tevahiya kernelê.
    • Moda-bikarhêner Linux piştgirî ji bo moda sekinandin-bo-bêkar zêde kiriye, ku dihêle hûn jîngehê bicemidînin û sînyala SIGUSR1 bikar bînin da ku ji moda xewê hişyar bibin.
    • Mekanîzmaya virtio-mem, ku dihêle hûn bîranînê ji makîneyên virtual re germ bikin û qut bikin, piştgirî ji Moda Blloka Mezin (BBM) re zêde kiriye, ku dihêle ku meriv di blokên ji mezinahiya bîra kernel mezintir veguhezîne an bîranînê bigire. bloka, ku ji bo optîmîzekirina VFIO li QEMU hewce ye.
    • Piştgiriya ji bo şîfreya CHACHA20-POLY1305 li pêkanîna kernelê ya TLS hate zêdekirin.
  • Subsystem Network
    • Ji bo 802.1Q (VLAN), mekanîzmayek rêveberiya têkçûna pêwendiyê (CFM, Rêvebiriya Xeletiya Girêdanê) hatiye bicîh kirin, ku dihêle hûn têkçûnên di torên bi pirên virtual (Torên Pira Virtual) de nas bikin, verast bikin û veqetînin. Mînakî, CFM dikare ji bo veqetandina pirsgirêkan di torên ku gelek rêxistinên serbixwe yên ku xebatkarên wan tenê gihîştina alavên xwe ne têne bikar anîn.
    • Piştgiriyek zêde kir ji bo vegirtina pakêtên protokola SCTP di pakêtên UDP de (RFC 6951), ku dihêle hûn SCTP-ê li ser torên bi wergêrên navnîşanên kevn ên ku rasterast piştgirî nadin SCTP-ê bikar bînin, û her weha SCTP-ê li ser pergalên ku rasterast gihîştina IP-yê peyda nakin bicîh bikin. pel.
    • Pêkanîna teknolojiya WiMAX ber bi qonaxê ve hatiye veguheztin û ger bikarhênerên ku hewcedarê WiMAX nebin dê di pêşerojê de were rakirin. WiMAX êdî di torên gelemperî de nayê bikar anîn, û di kernelê de tenê ajokera ku WiMAX pê re dikare were bikar anîn ajokera kevn a Intel 2400m e. Piştgiriya WiMAX di 2015-an de di vesazkera torê ya NetworkManager de hate sekinandin. Niha, WiMax hema hema bi tevahî ji hêla teknolojiyên wekî LTE, HSPA + û Wi-Fi 802.11n ve hatî guhertin.
    • Ji bo xweşbînkirina performansa hilanîna seyrûsefera TCP-ê ya di moda zerokopiyê de, kar hatiye kirin, ango. bêyî kopîkirina zêde li tamponên nû. Ji bo seyrûsefera navîn, vegirtina bi dehan an çend sed kilobyte daneyan, li şûna recvmsg () zerocopy bikar bînin, bi rengek berbiçav bi bandortir e. Mînakî, guheztinên hatine bicîh kirin gengaz kirin ku dema ku zerokopiyê ji sedî 32-60 bikar bînin, kargêriya hilberandina seyrûsefera şêwaza RPC bi peyamên 70 KB zêde bikin.
    • Bangên ioctl () yên nû lê zêde kirin da ku pirên torê yên ku gelek girêdanên PPP-ê vedigirin biafirînin. Kapasîteya pêşniyarkirî dihêle ku çarçove ji kanalek berbi kanalek din ve biçin, mînakî ji PPPoE berbi danişînek PPPoL2TP.
    • Yekbûnek nav bingeha MPTCP (MultiPath TCP), dirêjkirina protokola TCP-ê ji bo organîzekirina xebata pêwendiyek TCP-ê digel radestkirina pakêtan bi hevdemî li ser çend rêgezan bi navgînên torê yên cihêreng ên ku bi navnîşanên IP-yê yên cihêreng ve girêdayî ne. Daxuyaniya nû ji bo vebijarka ADD_ADDR piştgirî dide da ku navnîşanên IP-ya berdest ên ku dema ku herikînên nû li pêwendiyek MPTCP-ya heyî zêde dikin ve werin girêdan reklam bikin.
    • Dema ku budçeya rapirsînê ya pêwendiyê derbas dibe (ankêta mijûlî) şiyana mîhengkirina çalakiyan lê zêde kir. Moda SO_BUSY_POLL ya berê ya berdest tê vê wateyê ku dema ku budçe qediya bû guheztina softirq. Ji bo serîlêdanên ku hewce ne ku karanîna dengdanê bidomînin, vebijarkek nû SO_PREFER_BUSY_POLL tê pêşniyar kirin.
    • IPv6 ji bo modên SRv6 End.DT4 û End.DT6 piştgirî pêk tîne, ku ji bo afirandina pir-bikarhêner IPv4 L3 VPN û VRF (Rêvekirin û şandina virtual) tê bikar anîn.
    • Netfilter pêkanîna vegotinên set yek kir, ku ev gengaz kir ku ji bo her hêmanek navnîşên setê gelek îfadeyan diyar bike.
    • API li 802.11 stoka bêtêlê hatine zêdekirin da ku sînorên hêza SAR-ê, û her weha parametreyên AE PWE û HE MCS mîheng bikin. Ajokarê Intel iwlwifi ji bo rêza 6GHz (Banda Ultra Bilind) piştgirî zêde kiriye. Ajokarê Qualcomm Ath11k piştgirî ji bo teknolojiya FILS (Sazkirina Destpêka Destpêka Bilez, ku wekî IEEE 802.11ai standardîzekirî) zêde kiriye, ku dihêle hûn di dema koçê de ji xalek gihîştinê berbi cîhek din ji derengiyên roamingê xilas bibin.
  • Amûr
    • Ajokarê amdgpu piştgirî dide AMD "Green Sardine" APU (Ryzen 5000) û "Dimgrey Cavefish" GPU (Navi 2), û hem jî piştgirîya destpêkê ji bo AMD Van Gogh APU bi Zen 2 core û RDNA 2 GPU (Navi 2). Piştgiriyek ji bo nasnameyên nû yên Renoir APU (li ser bingeha Zen 2 CPU û Vega GPU) zêde kir.
    • Ajokarê i915 ji bo qertên vîdyoyê yên Intel-ê bi pêkanîna parzûnek ji bo zêdekirina pîvanê li gorî rewşa pîxelên cîran (Nêzîktirîn-cîranê navberê) ji bo destnîşankirina rengê pîxelên winda piştgirî dide teknolojiya IS (Salkirina Integer). Piştgiriya ji bo kartên Intel DG1 yên veqetandî hate berfireh kirin. Piştgiriya teknolojiya "Big Joiner" hate bicîh kirin, ku ji çîpên Gola Ice / Gen11 ve heye û dihêle ku yek transkoder bikar bîne da ku du çeman bişopîne, mînakî, ji bo derketina ber ekranek 8K bi yek DisplayPort. Ji bo guheztina asynkronîk di navbera du tamponan de di bîranîna vîdyoyê de modek zêde kir (lipek asynkronî).
    • Ajokarê nouveau piştgirîya destpêkê ji bo GPU-yên NVIDIA-yê li ser bingeha mîkroarchitektura Ampere (GA100, GeForce RTX 30xx) zêde kiriye, heya nuha bi amûrên ji bo kontrolkirina modên vîdyoyê sînorkirî ye.
    • Piştgiriya ji bo protokola 3WIRE ku di panelên LCD de tê bikar anîn zêde kir. Ji bo panelên novatek nt36672a, TDO tl070wsh30, Innolux N125HCE-GN1 û ABT Y030XX067A 3.0 piştgirî zêde kirin. Ji hev veqetandî, em dikarin piştgirîya panela têlefonên OnePlus 6 û 6T destnîşan bikin, ku ev gengaz kir ku barkirina kernelek neguhêrbar li ser cîhazan organîze bike.
    • Piştgiriyek ji bo yekem kontrolkerê mêvandarê veqetandî yên Intel-ê USB4, Maple Ridge, zêde kir.
    • Piştgiriyek ji bo Allwinner H6 I2S, Amûrên Analog ADAU1372, Intel Alderlake-S, GMediatek MT8192, NXP i.MX HDMI û XCVR, Realtek RT715 û Qualcomm SM8250 kodekên dengî zêde kirin.
    • Ji bo panel, cîhaz û platformên ARM-ê piştgirî lê zêde kirin: Galaxy Note 10.1, Microsoft Lumia 950 XL, NanoPi R1, FriendlyArm ZeroPi, Elimo Initium SBC, Broadcom BCM4908, Mediatek MT8192/MT6779/MT8167, MSMMve2, MSMV730, MSMV382, MSMV98, MSMV3236, MSMV750, MSMV8, MSMV64, MSMV30, MSMVXNUMX, , Mikrotik li ser bingeha Marvell Prestera XNUMXDXXNUMX, pêşkêşkerên bi Nuvoton NPCMXNUMX BMC, Kontron i.MXXNUMXM Mini, Espressobin Ultra, "Trogdor" Chromebook, Kobol HeliosXNUMX, Engicam PXXNUMX.Core.
    • Встроена поддержка игровой консоли Ouya на базе NVIDIA Tegra 3.

Di heman demê de, Weqfa Nermalava Azad a Amerîkaya Latîn guhertoyek kernel 5.11-a bi tevahî belaş ava kir - Linux-libre 5.11-gnu, ji hêmanên firmware û ajokarên ku tê de hêmanên ne-azad an beşên kodê hene, ku çarçoweya wan sînorkirî ye, paqij kir. ji aliyê çêker. Daxuyaniya nû ajokarên ji bo qat_4xxx (crypto), lt9611uxcm (pira dsi/hdmi), ccs/smia++ (sensor), ath11k_pci, transceiver audio nxp û kontrolkera mhi pci paqij dike. Koda paqijkirina blobê ya nûvekirî di ajokar û bine pergalên amdgpu, btqca, btrtl, btusb, i915 csr. Di m3 rproc, idt82p33 ptp demjimêrê û qualcomm arm64 de blokên nû neçalak kirin.

Source: opennet.ru

Add a comment