Ho lokolloa ha kernel ea Linux 5.14

Kamora likhoeli tse peli tsa nts'etsopele, Linus Torvalds o hlahisitse tokollo ea Linux kernel 5.14. Har'a liphetoho tse hlokomelehang: li-call tse ncha tsa quotactl_fd() le memfd_secret() tsamaiso, ho tlosoa ha li-ide le li-driver tse tala, molaoli e mocha oa I/O bakeng sa sehlopha, SCHED_CORE mokhoa oa kemiso ea mosebetsi, lisebelisoa tsa motheo bakeng sa ho theha li-program tsa BPF tse netefalitsoeng.

Phetolelo e ncha e kenyelletsa litokiso tsa 15883 ho tsoa ho baetsi ba 2002, boholo ba patch ke 69 MB (liphetoho li ile tsa ama lifaele tsa 12580, mela ea khoutu ea 861501 e ile ea kenngoa, mela ea 321654 e ile ea tlosoa). Hoo e ka bang 47% ea liphetoho tsohle tse hlahisitsoeng ho 5.14 li amana le bakhanni ba lisebelisoa, hoo e ka bang 14% ea liphetoho li amana le ho ntlafatsa khoutu e khethehileng ho meralo ea hardware, 13% e amana le stack ea marang-rang, 3% e amana le mekhoa ea lifaele, le 3% li amana le li-subsystem tsa kernel tse ka hare.

Litlhahiso tse ka sehloohong:

  • Disk Subsystem, I/O le File Systems
    • Taolo e ncha ea ho etelletsa pele ea I / O e kentsoe tšebetsong bakeng sa lihlopha, rq-qos, tse ka laolang ts'ebetso ea likopo tsa ho thibela lisebelisoa tse hlahisoang ke litho tsa sehlopha ka seng. Tšehetso e ncha ea li-controller e kenyelelitsoe ho kemiso ea nako ea ho qetela ea mq-I/O.
    • Sistimi ea faele ea ext4 e sebelisa taelo e ncha ea ioctl, EXT4_IOC_CHECKPOINT, e qobellang hore litšebelisano tsohle tse emetseng ho tsoa ho koranta le li-buffers tse amanang le tsona li felisoe ho disk, hape e hlakola sebaka se sebelisoang ke koranta polokelong. Phetoho e lokisitsoe e le karolo ea boikitlaetso ba ho thibela ho tsoa ha tlhahisoleseling ho tsoa lits'ebetsong tsa lifaele.
    • Lintlafatso tsa ts'ebetso li entsoe ho Btrfs: ka ho felisa ho rema lifate ho sa hlokahaleng ha litšoaneleho tse atolositsoeng nakong ea ts'ebetso ea fsync, ts'ebetso ea ts'ebetso e matla e nang le litšobotsi tse atolositsoeng e eketsehile ho fihla ho 17%. Ho feta moo, ha ho etsoa ts'ebetso ea trim e sa ameng boholo, khokahano e felletseng ea tima, e fokotsang nako ea ts'ebetso ka 12%. Ho kentsoe litlhophiso ho li-sysfs ho fokotsa bandwidth ea I/O ha u sheba FS. E kentse mehala ea ioctl ho hlakola boholo ba lisebelisoa le ho hlakola lits'ebetso tsa sesebelisoa.
    • Ho XFS, ts'ebetsong ea "buffer cache" e hlophisitsoe bocha, e fetotsoeng ho fana ka maqephe a memori ka mokhoa oa batch. E ntlafalitse ts'ebetso ea cache.
    • F2FS e eketsa khetho ea ho sebetsa ka mokhoa oa ho bala feela mme e sebelisa mokhoa oa "cache" o hatelitsoeng (compress_cache) ho ntlafatsa ts'ebetso ea ho bala feela. Ts'ehetso e kentsoe ts'ebetsong bakeng sa ho hatella lifaele tse kentsoeng mohopolong ka ts'ebetso ea mmap(). Ho thibela ka mokhoa o ikhethileng compression ea faele e ipapisitseng le mask, khetho e ncha ea nocompress e hlahisitsoe.
    • Mosebetsi o entsoe ho mokhanni oa exFAT ho ntlafatsa tšebelisano le polokelo ea kh'amera ea dijithale.
    • E kentse mohala oa sistimi ea quotactl_fd (), e u lumellang hore u tsamaise li-quotas eseng ka faele e khethehileng ea sesebelisoa, empa ka ho hlakisa tlhaloso ea faele e amanang le sistimi ea faele eo quota e sebelisoang ho eona.
    • Bakhanni ba khale ba lisebelisoa tsa li-block tse nang le sebopeho sa IDE ba tlositsoe kernel; esale ba nkeloa sebaka ke libata subsystem.
    • Mokhanni "o tala" o tlositsoe kernel, a fana ka phihlello e sa tsitsang ea ho thibela lisebelisoa ka sebopeho sa /dev/raw. Ts'ebetso ena ke khale e sebelisoa lits'ebetsong tse sebelisang folakha ea O_DIRECT.
  • Litšebeletso tsa memori le tsamaiso
    • Sehlophisi sa mosebetsi se sebelisa mokhoa o mocha oa ho hlophisa, SCHED_CORE, o u lumellang ho laola hore na ke lits'ebetso life tse ka etsoang hammoho motheong o tšoanang oa CPU. Ts'ebetso e 'ngoe le e' ngoe e ka abeloa sekhetho sa cookie se hlalosang boholo ba ts'epo lipakeng tsa lits'ebetso (mohlala, tsa mosebelisi a le mong kapa setshelo). Ha o hlophisa ts'ebetso ea khoutu, mohlophisi a ka etsa bonnete ba hore konokono e le 'ngoe ea CPU e arolelanoa feela har'a lits'ebetso tse amanang le mong'a a le mong, tse ka sebelisoang ho thibela litlhaselo tse ling tsa Specter ka ho thibela mesebetsi e tšepahalang le e sa tšepahaleng ho sebetsa ka khoele e tšoanang ea SMT (Hyper Threading). .
    • Bakeng sa sehlopha, ts'ehetso ea ts'ebetso ea ho bolaea e kentsoe ts'ebetsong, e leng se u lumellang ho bolaea lits'ebetso tsohle tse amanang le sehlopha hang-hang (romela SIGKILL) ka ho ngola "1" ho file ea sebele cgroup.kill.
    • 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. Ho thibela ho joalo ho lebisa ho fokotseha ho hoholo ha ts'ebetso, kahoo pele ho moo ho ne ho khoneha ho felisa ka matla kopo e bakileng ho thibela. Phatlalatso e ncha e eketsa parameter ea taelo ea kernel "split_lock_detect=ratelimit:N", e u lumellang hore u hlalose moeli o pharalletseng oa sistimi ka sekhahla sa ts'ebetso ea ho notlela motsotsoana, kamora ho feta ts'ebetso efe kapa efe e fetohileng mohloli oa senotlolo se arohaneng. e tla qobelloa ho emisa bakeng sa 20 ms ho fapana le ho emisa.
    • CFS bandwidth controller (CFS bandwidth controller), e etsang qeto ea hore na nako ea processor e ka abeloa sehlopha ka seng, e sebelisa bokhoni ba ho hlalosa meeli e lekanyelitsoeng ea nako, e lumellang hore ho be le taolo e ntlafetseng ea mosebetsi o boima oa latency. Mohlala, ho beha cpu.cfs_quota_us ho 50000 le cpu.cfs_period_us ho 100000 ho tla lumella sehlopha sa lits'ebetso ho senya 100ms ea nako ea CPU ka mor'a 50ms.
    • E ekelitsoe meaho ea mantlha ea ho theha li-loader tsa lenaneo la BPF, tse tla lumella ho kenya mananeo a BPF feela a saennoeng ka senotlolo se tšepahalang sa dijithale.
    • E kentse ts'ebetso e ncha ea futex FUTEX_LOCK_PI2, e sebelisang sebali sa nako ea monotonic ho bala nako ea nako e nahanelang nako e sebelisoang ke sistimi maemong a ho robala.
    • Bakeng sa meralo ea RISC-V, tšehetso ea maqephe a maholo a memori (Transparent Huge-Pages) le bokhoni ba ho sebelisa mochine oa KFENCE ho bona liphoso ha o sebetsa ka mohopolo o kengoa ts'ebetsong.
    • Madvise() system call, e fanang ka mokhoa oa ho ntlafatsa ts'ebetso ea memori ea ts'ebetso, e kentse lifolakha tsa MADV_POPULATE_READ le MADV_POPULATE_WRITE ho hlahisa "phoso ea leqephe" maqepheng ohle a memori a etselitsoeng ho bala kapa ho ngola ts'ebetso ntle le ho bala kapa ho ngola (prefault). ). Tšebeliso ea lifolakha e ka ba molemo bakeng sa ho fokotsa ho lieha ha ho etsoa ha lenaneo, ka lebaka la ts'ebetso e matla ea "leqephe la phoso" bakeng sa maqephe ohle a sa abuoang hang-hang, ntle le ho emela phihlello ea 'nete ho bona.
    • Sistimi ea ho etsa liteko tsa yuniti ea kunit e ekelitse ts'ehetso ea ho etsa liteko tikolohong ea QEMU.
    • Li-tracers tse ncha li kenyellelitsoe: "osnoise" ho latela tieho ea ts'ebeliso e bakoang ke ho ts'oaroa ha nako, le "timerlat" ho bonts'a lintlha tse mabapi le tieho ha u tsoha ho tsoa ho lets'oao la nako.
  • Virtualization le Tšireletso
    • Memfd_secret() mehala ea sistimi e kentsoe ho theha sebaka sa memori sa poraefete sebakeng se ka thoko sa aterese, se bonoang feela ke ts'ebetso ea borui, e sa bonts'itsoeng lits'ebetsong tse ling, mme e sa fumanehe ka kotloloho ho kernel.
    • Lenaneong la seccomp call filtering system, ha o tsamaisa li-blockers sebakeng sa mosebelisi, hoa khoneha ho sebelisa ts'ebetso e le 'ngoe ea athomo ho theha tlhaloso ea faele bakeng sa mosebetsi o ikhethileng le ho e khutlisa ha o sebetsana le mohala oa sistimi. Ts'ebetso e reriloeng e rarolla bothata ba ho sitisa motho ea sebetsang sebakeng sa mosebelisi ha lets'oao le fihla.
    • E kentse mokhoa o mocha oa ho laola meeli ea lisebelisoa sebakeng sa mabitso sa mosebelisi, se kopanyang li-counter tsa rlimit ho mosebelisi ho "user namespace". Phetoho ena e rarolla bothata ka tšebeliso ea lisebelisoa tse tloaelehileng tsa lisebelisoa ha mosebelisi a le mong a tsamaisa lits'ebetso ka lijaneng tse fapaneng.
    • KVM hypervisor bakeng sa litsamaiso tsa ARM64 e ekelitse bokhoni ba ho sebelisa katoloso ea MTE (MemTag, Memory Tagging Extension) litsamaisong tsa baeti, e u lumellang ho tlama li-tag ts'ebetsong e 'ngoe le e' ngoe ea kabo ea memori le ho hlophisa ho lekola ts'ebeliso e nepahetseng ea lintlha ho thibela ts'ebeliso ea memori. bofokoli bo bakoang ke ho fihlella li-block tsa memori tse seng li lokolotsoe, buffer e ngata, phihlello pele e qala le ho e sebelisa kantle ho maemo a hajoale.
    • Mehaho ea netefatso ea sethala sa ARM64 e se e ka hlophisoa ka thoko bakeng sa kernel le sebaka sa mosebelisi. Theknoloji e u lumella ho sebelisa litaelo tse khethehileng tsa ARM64 ho netefatsa liaterese tsa ho khutlisa u sebelisa li-signature tsa dijithale tse bolokiloeng likarolong tse ka holimo tse sa sebelisoeng tsa pointer ka boeona.
    • Linux ea mofuta oa mosebelisi e ekelitse tšehetso ea ho sebelisa bakhanni ba lisebelisoa tsa PCI ka bese ea PCI, e kentsoeng ke mokhanni oa PCI-over-virtio.
    • Bakeng sa litsamaiso tsa x86, tšehetso e ekelitsoeng bakeng sa sesebelisoa sa virtio-iommu paravirtualized, e lumellang likopo tsa IOMMU tse kang ATTACH, DETACH, MAP le UNMAP ho romelloa holim'a sepalangoang sa virtio ntle le ho etsisa litafole tsa maqephe a memori.
    • Bakeng sa li-Intel CPUs, ho tloha lelapeng la Skylake ho ea Letšeng la Kofi, ts'ebeliso ea Intel TSX (Transactional Synchronization Extensions), e fanang ka lisebelisoa tsa ho ntlafatsa ts'ebetso ea lits'ebetso tse nang le likhoele tse ngata ka ho felisa ts'ebetso e sa hlokahaleng ea khokahano, e koaletsoe ka boiketsetso. Li-extensions li koaletsoe ka lebaka la monyetla oa litlhaselo tsa Zombieload tse tsamaisang ho lutla ha tlhahisoleseling ka liteishene tsa mokha oa boraro tse etsahalang nakong ea ts'ebetso ea mochini oa TAA (TSX Asynchronous Abort).
  • Sistimi e nyane ea marang-rang
    • Ho kopanngoa ka har'a motheo oa MPTCP (MultiPath TCP), katoloso ea protocol ea TCP bakeng sa ho hlophisa ts'ebetso ea khokahano ea TCP le ho fana ka 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. Phatlalatso e ncha e eketsa mokhoa oa ho ipehela maano a hau a hashing ea sephethephethe bakeng sa IPv4 le IPv6 (leano la multipath hash), ho etsa hore ho khonehe ho tseba ho tsoa sebakeng sa basebelisi hore na ke likarolo life tsa lipakete, ho kenyeletsoa le tse kentsoeng, tse tla sebelisoa ha ho baloa hash e khethollang khetho ea tsela bakeng sa pakete.
    • Ts'ehetso bakeng sa li-sockets tsa SOCK_SEQPACKET (phetiso e laetsoeng le e tšepahalang ea li-datagram) e kenyellelitsoe ho lipalangoang tsa virtio.
    • Bokhoni ba mochine oa socket oa SO_REUSEPORT bo atolositsoe, e leng se lumellang li-sockets tse 'maloa tse mamelang hore li hokahane le koung e le' ngoe ka nako e le 'ngoe ho fumana likhokahano le kabo ea likopo tse kenang ka nako e le' ngoe ho pholletsa le li-sockets tsohle tse hokahaneng ka SO_REUSEPORT, e nolofatsang ho thehoa ha lisebelisoa tse ngata tsa li-server. . Phetolelo e ncha e eketsa lisebelisoa tsa ho fetisetsa taolo ho sokete e 'ngoe haeba ho hloleha ho sebetsa kopo ka sokete e khethiloeng pele (e rarolla bothata ka tahlehelo ea likhokahano tsa motho ka mong ha o qala lits'ebeletso).
  • Lisebelisoa
    • Mokhanni oa amdgpu o fana ka ts'ehetso bakeng sa letoto le lecha la AMD Radeon RX 6000 la GPUs, codenamed "Beige Goby" (Navi 24) le "Yellow Carp", hammoho le tšehetso e ntlafetseng bakeng sa Aldebaran GPU (gfx90a) le Van Gogh APU. E kentse bokhoni ba ho sebetsa ka nako e le 'ngoe le liphanele tse ngata tsa eDP. Bakeng sa APU Renoir, ts'ehetso ea ho sebetsa ka li-buffer tse patiloeng mohopolong oa video (TMZ, Trusted Memory Zone) e kentsoe ts'ebetsong. Tšehetso e ekelitsoeng bakeng sa likarete tsa litšoantšo tsa hot-unplug. Bakeng sa li-GPU tsa Radeon RX 6000 (Navi 2x) le li-GPU tsa khale tsa AMD, tšehetso ea ASPM (Active State Power Management) e nolofalloa ka ho sa feleng, eo pele e neng e lumelloa feela bakeng sa Navi 1x, Vega le Polaris GPUs.
    • Bakeng sa li-chips tsa AMD, ts'ehetso ea memori e arolelanoang (SVM, memori e arolelanoang) e kentsoe ho ipapisitsoe le sistimi e tlase ea HMM (Heterogeneous memory management), e lumellang ts'ebeliso ea lisebelisoa tse nang le likarolo tsa tsona tsa taolo ea memori (MMU, yuniti ea taolo ea memori), e ka fihlelang memoring ya sehlooho. Haholo-holo, u sebelisa HMM, u ka hlophisa sebaka sa aterese se arolelanoang pakeng tsa GPU le CPU, moo GPU e ka fihlelang mohopolo o ka sehloohong oa ts'ebetso.
    • E kenyellelitse ts'ehetso ea mantlha bakeng sa theknoloji ea AMD Smart Shift, e fetolang litlhophiso tsa matla tsa CPU le GPU ka har'a lilaptop tse nang le chipset ea AMD le karete ea litšoantšo ho matlafatsa ts'ebetso ea papali, ho hlophisa livideo le ho fana ka 3D.
    • Mokhanni oa i915 bakeng sa likarete tsa litšoantšo tsa Intel o kenyelletsa tšehetso bakeng sa li-chips tsa Intel Alderlake P.
    • E kentse mokhanni oa drm/hyperv bakeng sa adaptara ea litšoantšo ea Hyper-V.
    • Ts'ehetso e ekelitsoeng bakeng sa komporo ea Raspberry Pi 400 kaofela-in-one.
    • E kenyellelitse mokhanni oa lekunutu oa dell-wmi ho ts'ehetsa kh'amera ea hardware le li-microphone tse kenyellelitsoeng ho lilaptop tsa Dell.
    • Bakeng sa lilaptop tsa Lenovo, ho kentsoe sebopeho sa WMI bakeng sa ho fetola maemo a BIOS ka sysfs /sys/class/firmware-attributes/.
    • Ts'ehetso e atolositsoeng ea lisebelisoa tse nang le sebopeho sa USB4.
    • Tšehetso e ekelitsoeng bakeng sa likarete tsa molumo tsa AmLogic SM1 TOACODEC, Intel AlderLake-M, NXP i.MX8, NXP TFA1, TDF9897, Rockchip RK817, Qualcomm Quinary MI2 le Texas Instruments TAS2505 le codecs. Ts'ehetso e ntlafalitsoeng ea molumo ho lilaptop tsa HP le ASUS. E kentse lipache ho fokotsa tieho pele molumo o qala ho bapala lisebelisoa tsa USB.

Source: opennet.ru

Eketsa ka tlhaloso