Lenaneo la Linux kernel 5.14

Lenaneo la Linux kernel 5.14

Kamora likhoeli tse peli tsa nts'etsopele, Linus Torvalds tsebisoa ho lokolloa ha kernel Linux 5.14. Har'a liphetoho tse hlokomelehang: li-call tse ncha tsa quotactl_fd() le memfd_secret() system, 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.

ka sehloohong boiqapelo:

  • disk subsystem, input/output and file system:
    • bakeng sa sehlopha kenngwa tshebetsong taolo e ncha ea I/O - rq-qos, e ka laolang ts'ebetso ea pele ea likopo ho thibela lisebelisoa tse hlahisoang ke litho tsa sehlopha ka seng. Tšehetso e ncha ea li-controller e kenyelelitsoe lenaneong la mq-deadline I/O;
    • ho sistimi ea faele ea ext4 kenngwa tshebetsong taelo e ncha ea ioctl EXT4_IOC_CHECKPOINT, e qobellang hore lipalangoang tsohle tse emetseng ho tloha ho log le li-buffers tse amanang le disk li be teng, hape e hlakola sebaka se sebelisoang ke log in storage. Phetoho e lokisitsoe e le karolo ea mohato oa ho thibela ho tsoa ha tlhahisoleseling ho tsoa lits'ebetsong tsa lifaele;
    • ho Btrfs tsebisitsoe Ntlafatso ea ts'ebetso: 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 li-call tsa ioctl ho hlakola boholo ba lisebelisoa le ho hlakola lits'ebetso;
    • ho XFS sebetsa bocha ts'ebetsong ea "buffer cache", e fetisetsoang kabong ea maqephe a memori ka mokhoa oa batch. Ntlafatso ea ts'ebetso ea cache;
    • F2FS e kentse khetho ea ho sebetsa ka mokhoa oa ho bala feela le ho kenya ts'ebetsong mokhoa oa "caching block" (compress_cache) ho ntlafatsa ts'ebetso ea ho bala e sa reroang. 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 khatello ea faele ka mask, khetho e ncha ea nocompress e hlahisitsoe;
    • mosebetsi o entsoe ho mokhanni oa exFAT ho ntlafatsa ho lumellana le ho boloka lik'hamera tse ling tsa digital;
    • e kentse mohala oa sistimi quotactl_fd(), e leng se u lumellang hore u tsamaise li-quotas eseng ka faele e khethehileng ea sesebelisoa, empa ka ho hlakisa tlhaloso ea faele e amanang le tsamaiso 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. Tšehetso ea lisebelisoa tsa khale e bolokiloe ka botlalo, liphetoho li ama feela bokhoni ba ho sebelisa bakhanni ba khale, ha ho sebelisoa li-drive tse neng li bitsoa / dev / hd *, eseng / dev / sd *;
    • Mokhanni "o tala" o tlositsoe kernel, a fana ka phihlelo 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 sistimi:
    • mokhoa o mocha oa ho hlophisa o kentsoe tšebetsong ho kemiso ea mesebetsi SCHED_CORE, e u lumellang hore u laole hore na ke lits'ebetso life tse ka tsamaisanang 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 mochine oa lihlopha, tšehetso bakeng sa ts'ebetso ea ho bolaea e sebelisitsoe, e leng se u lumellang hore u bolaee mekhoa eohle e 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 moo ts'ebetso efe kapa efe e fetohileng mohloli oa senotlolo se arohaneng. ho qobelloa ho emisa bakeng sa 20 ms ho e-na le ho felisa;
    • CFS bandwidth controller (CFS bandwidth controller), e etsang qeto ea hore na nako e kae ea processor e ka abeloa sehlopha ka seng, e na le bokhoni ba ho hlalosa meeli e lekantsoeng ke nako e fanoeng ea ketso, e lumellang taolo e betere ea meroalo e sa utloahaleng ea 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;
    • eketsoe meaho ea mantlha ea ho theha li-loaders tsa lenaneo la BPF, tse tla lumella ho jarolla feela mananeo a BPF a saennoeng ka senotlolo se tšepahalang sa dijithale;
    • e kentse ts'ebetso e ncha ea futex FUTEX_LOCK_PI2, e sebelisang nako ea monotonic ho bala nako ea nako, e nahanang ka nako e sebelisoang ke tsamaiso ka mokhoa oa ho robala;
    • bakeng sa meralo ea RISC-V, tšehetso ea maqephe a maholo a memori (Transparent Huge-Pages) le bokhoni ba ho sebelisa KFENCE ho lemoha liphoso ha u sebetsa ka memori;
    • ka har'a madvise () call ea sistimi, e fanang ka mokhoa oa ho ntlafatsa taolo ea memori ea ts'ebetso, eketsoe MADV_POPULATE_READ le MADV_POPULATE_WRITE lifolakha ho hlahisa "phoso ea leqephe" maqepheng ohle a memori a etselitsoeng tšebetso ea ho bala kapa ho ngola, ntle le ho bala kapa ho ngola (prefault). Tšebeliso ea lifolakha e ka ba molemo bakeng sa ho fokotsa tieho ea ts'ebetsong ea 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 tsona;
    • tsamaisong ea liteko tsa yuniti kunit eketsoe tšehetso bakeng sa ho etsa liteko tikolohong ea QEMU;
    • li-tracers tse ncha li ekelitse: "lerata"ho latela tieho ea ts'ebeliso e bakiloeng ke ho ts'oaroa ha tšitiso, le" timerlat "ho bonts'a lintlha tse felletseng mabapi le tieho ha u tsoha ho tsoa ho lets'oao la sebali;
  • virtualization le polokeho:
    • eketsa pitso ea tsamaiso memfd_secret(), e leng se u lumellang hore u thehe sebaka sa memori ea poraefete sebakeng se ka thōko sa aterese, se bonahalang feela ho ts'ebetso ea mong'a sona, se sa bonahaleng ka mekhoa e meng le e sa fumaneheng ka ho toba ho kernel;
    • tsamaisong ea seccomp call filtering system, ha o tsamaisa lisebelisoa tsa senotlolo sebakeng sa mosebedisi, hoa khoneha ho sebelisa ts'ebetso e le 'ngoe ea athomo ho etsa tlhaloso ea faele bakeng sa mosebetsi o ka thōko le ho e khutlisa ha o sebetsana le mohala oa tsamaiso. Tshebetso e sisintsweng e a rarolla bothata ka tšitiso ea motho ea sebetsang sebakeng sa mosebedisi ha lets'oao le fihla;
    • eketsa mochine o mocha ho laola meeli ea lisebelisuoa sebakeng sa mabitso sa mosebelisi, se tlamahanyang li- rlimit counters ho mosebelisi ho "user namespace". Phetoho 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 litsupa ho thibela ts'ebeliso ea. bofokoli bo bakoang ke ho fihlella li-blocks tse seng li lokolotsoe, li-buffers tse ngata, ho fihlella pele ho qala le ho sebelisa kantle ho maemo a hajoale;
    • Netefatso ea Pointer e fanoeng ke sethala sa ARM64 joale 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 ka har'a likotoana tse ka holimo tse sa sebelisoeng tsa pointer ka boeona;
    • ho Linux-mode ea mosebelisi eketsoe ts'ehetso bakeng sa ts'ebeliso ea bakhanni ba lisebelisoa tsa PCI tse nang le bese ea PCI ea sebele, e sebelisoang ke mokhanni oa PCI-over-virtio;
    • bakeng sa litsamaiso tsa x86, tšehetso e eketsehileng bakeng sa sesebelisoa sa virtio-iommu paravirtualized, se u lumellang hore u romele likōpo tsa IOMMU, tse kang ATTACH, DETACH, MAP le UNMAP, holim'a lipalangoang tsa 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. Katoloso e emisitsoe ka lebaka la monyetla oa litlhaselo Zombieload, ho laola ho lutla ha tlhahisoleseling ka liteishene tsa mokha oa boraro tse etsahalang nakong ea ts'ebetso ea mochini bakeng sa tšitiso e sa sebetseng ea ts'ebetso (TAA, TSX Asynchronous Abort);
  • sistimi e nyane ea marang-rang:
    • ho tsoela pele ho kopanngoa ka har'a motheo oa MPTCP (MultiPath TCP), ho atolosoa ha 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. Khatisong e ncha eketsa mokhoa oa ho ipehela maano a hau a sephethephethe a hashing bakeng sa IPv4 le IPv6 (leano la multipath hash), ho etsa hore ho khonehe ho tsoa sebakeng sa mosebelisi ho tseba hore na ke likarolo life tsa lipakete, ho kenyeletsoa le tse kentsoeng, tse tla sebelisoa ha ho baloa hashi e khethollang khetho ea tsela. bakeng sa pakete;
    • tšehetso ea socket e kenyellelitsoe ho virtual transport virtio LITLHAKU_SEQPACKET (phetiso e hlophisehileng le e tšepahalang ea li-datagraphs);
    • 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. . Phetolelong e ncha eketsoe ho bolela ho fetisetsa taolo ho sokete e 'ngoe haeba ho hloleha ha ho sebetsa kopo ka sokete e khethiloeng pele (e rarolla bothata ka tahlehelo ea likhokahano tsa motho ka mong ha o qala litšebeletso bocha);
  • thepa:
    • ho mokhanni oa amdgpu kenngwa tshebetsong tšehetso bakeng sa letoto le lecha la AMD Radeon RX 6000 la li-GPU, tse ngotsoeng "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, ts'ehetso ea mochini oa ho boloka matla oa ASPM (Active State Power Management) e nolofalloa ka mokhoa oa kamehla, oo pele o neng o sebelisoa feela bakeng sa Navi 1x, Vega le Polaris GPUs;
    • bakeng sa li-chips tsa AMD, ts'ehetso bakeng sa 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. Ho kenyelletsa ho sebelisa HMM, o 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 ekelitse tšehetso ea pele ea theknoloji AMD Smart Shift, e fetolang ka matla maemo a tšebeliso ea matla a CPU le GPU ho lilaptop tse nang le chipset le karete ea litšoantšo ea AMD ho matlafatsa ts'ebetso ha ho bapala, ho hlophisa livideo le ho fana ka 3D;
    • ho mokhanni oa i915 bakeng sa likarete tsa video tsa Intel kenyellelitsoe tšehetso bakeng sa li-chips tsa Intel Alderlake P;
    • e kentse mokhanni oa drm/hyperv bakeng sa adaptara ea litšoantšo tsa Hyper-V;
    • eketsa simpledrm graphics driver e sebelisang EFI-GOP kapa VESA framebuffer e fanoeng ke UEFI firmware kapa BIOS bakeng sa tlhahiso. Sepheo se seholo sa mokhanni ke ho fana ka bokhoni ba ho hlahisa litšoantšo nakong ea mekhahlelo ea pele ea boot, pele ho ka sebelisoa mokhanni o feletseng oa DRM. Mokhanni a ka boela a sebelisoa e le tharollo ea nakoana bakeng sa lisebelisoa tse e-s'o be le bakhanni ba matsoalloa a DRM;
    • eketsoe ts'ehetso ea khomphutha kaofela Raspberry Pi 400;
    • E kentse mokhanni oa lekunutu oa dell-wmi ho ts'ehetsa li-switches tsa khamera le microphone tse kenyellelitsoeng ho lilaptop tsa Dell;
    • bakeng sa lilaptop tsa Lenovo eketsa Sebopeho sa WMI bakeng sa ho fetola li-parameter tsa BIOS ka sysfs /sys/class/firmware-attributes/;
    • atolositsoe tšehetso bakeng sa lisebelisoa tse nang le sebopeho sa USB4;
    • eketsoe tšehetso bakeng sa likarete tsa molumo le li-codec AmLogic SM1 TOACODEC, Intel AlderLake-M, NXP i.MX8, NXP TFA1, TDF9897, Rockchip RK817, Qualcomm Quinary MI2 le Texas Instruments TAS2505. Ts'ehetso e ntlafalitsoeng ea molumo ho lilaptop tsa HP le ASUS. E kentsoe li-patches ho fokotsa tieho pele molumo o qala ho bapala lisebelisoa tse nang le sebopeho sa USB.

Mohloli - opennet.ru.

Source: linux.org.ru