Linux 5.9 kernel saki

Bayan watanni biyu na ci gaba, Linus Torvalds gabatar sakin kwaya Linux 5.9. Daga cikin manyan canje-canje masu mahimmanci: iyakance shigo da alamomi daga samfuran mallakar mallaka zuwa samfuran GPL, haɓaka ayyukan sauya mahallin ta amfani da umarnin sarrafa FGSSBASE, tallafi don matsawa hoton kwaya ta amfani da Zstd, sake yin aikin fifikon zaren a cikin kwaya, tallafi ga PRP. (Parallel Redundancy Protocol), Tsare-tsare-tsare-tsare-tsare-tsare a cikin mai tsarawa na ƙarshe, ɗaukar hoto na preemptive na shafukan ƙwaƙwalwar ajiya, iyawar tutar CAP_CHECKPOINT_RESTOR, tsarin tsarin kusanci () kusanci, haɓaka aikin dm-crypt, cire lambar don baƙi 32-bit Xen PV, sabon ƙwaƙwalwar ajiya. tsarin gudanarwa, zaɓi "ceto" a cikin Btrfs, goyan bayan ɓoyayyen layi a cikin ext4 da F2FS.

Sabuwar sigar ta ƙunshi gyare-gyare 16074 daga masu haɓakawa na 2011,
girman faci - 62 MB (canje-canjen sun shafi fayilolin 14548, an ƙara layukan lambar 782155, an share layin 314792). Kusan 45% na duk an gabatar da su a cikin 5.9
canje-canje suna da alaƙa da direbobin na'ura, kusan kashi 15% na canje-canje suna
Halin sabunta lambar musamman ga kayan gine-ginen kayan aiki, 13%
masu alaƙa da tarin cibiyar sadarwa, 3% zuwa tsarin fayil da 3% zuwa ciki
kernel subsystems.

Main sababbin abubuwa:

  • Ƙwaƙwalwar ajiya da sabis na tsarin
    • Takura kariya daga amfani da yadudduka na GPL don haɗa direbobin mallakar mallaka tare da abubuwan kernel waɗanda aka fitar kawai don kayayyaki ƙarƙashin lasisin GPL. Tutar TAINT_PROPRIETARY_MODULE yanzu an gaji shi a cikin duk samfuran da ke shigo da alamomi daga samfura masu ɗauke da wannan tuta. Idan tsarin GPL yayi ƙoƙarin shigo da alamomi daga tsarin da ba na GPL ba, to wannan GPL ɗin zai gaji alamar TAINT_PROPRIETARY_MODULE kuma ba zai iya samun damar abubuwan kernel waɗanda ke akwai kawai ga samfuran lasisin GPL ba, ko da a baya module ɗin ya shigo da alamomi daga baya. "gplonly" category. Kulle baya (firar da EXPORT_SYMBOL_GPL kawai a cikin samfuran da suka shigo da EXPORT_SYMBOL_GPL), wanda zai iya karya aikin direbobi, ba a aiwatar da shi ba (tutar ƙirar mallakar ta mallaka kawai aka gada, amma ba ɗaurin GPL ba).
    • Kara kcompactd engine goyon baya ga pre-packing memory pages a baya don ƙara yawan manyan shafukan ƙwaƙwalwar ajiya da ke akwai ga kwaya. Dangane da ƙididdiga na farko, marufi na baya, a farashi mafi ƙanƙanta, na iya rage jinkiri lokacin rarraba manyan shafukan ƙwaƙwalwar ajiya (babban shafi) da sau 70-80 idan aka kwatanta da na'urar tattara kayan da aka yi amfani da su a baya, wanda aka ƙaddamar lokacin da buƙata ta taso (kan buƙata). ). Don saita iyakoki na ɓarkewar waje wanda kcompactd zai samar, an ƙara sysctl vm.compaction_proactiveness.
    • Kara goyan baya don matsawa hoton kernel ta amfani da algorithm Daidaitacce (zstd).
    • An aiwatar da goyan bayan umarnin sarrafawa don tsarin x86 FGSSBASE, wanda ke ba ku damar karantawa da canza abubuwan da ke cikin rajistar FS/GS daga sararin mai amfani. A cikin kwaya, FGSSBASE ana amfani da shi don haɓaka ayyukan canza yanayin mahallin ta hanyar kawar da ayyukan MSR da ba dole ba don GSBASE, kuma a cikin sarari mai amfani yana guje wa kiran tsarin da ba dole ba don canza FS/GS.
    • Kara ma'aunin "allow_writes" yana ba ku damar hana canje-canje ga rajistar MSR na mai sarrafawa daga sararin mai amfani da iyakance damar yin amfani da abubuwan da ke cikin waɗannan rajista don karanta ayyukan, tunda canza MSR na iya haifar da matsaloli. Ta hanyar tsoho, har yanzu ba a kashe rubutu ba, kuma canje-canje ga MSR suna nunawa a cikin log ɗin, amma a nan gaba ana shirin canza hanyar da ta dace zuwa yanayin karanta kawai.
    • Zuwa ga mahaɗin I/O mai asynchronous io_ring Ƙara cikakken goyan baya don asynchronous buffered karanta ayyukan da baya buƙatar zaren kernel. Ana sa ran tallafin rikodi a cikin sakin gaba.
    • A cikin wa'adin I/O mai tsarawa aiwatar tsarawa bisa iya aiki, yarda yanke shawara daidai akan tsarin asymmetric kamar tsarin tushen ARM DynamIQ da kuma big.LITTLE, wanda ke haɗa manyan cores ɗin CPU masu ƙarfi da ƙarancin ƙarfi a cikin guntu ɗaya. Musamman ma, sabon yanayin yana ba ku damar kauce wa tsara tsararru lokacin da jinkirin CPU core ba shi da albarkatun da suka dace don kammala aiki akan lokaci.
    • Samfurin amfani da makamashi a cikin kwaya (Energy Model framework) yanzu ya bayyana ba kawai halayen amfani da wutar lantarki na CPU ba, har ma yana rufe na'urori na gefe.
    • An aiwatar da tsarin tsarin close_range() don ba da damar tsari don rufe gaba dayan kewayon buɗaɗɗen bayanin fayil a lokaci ɗaya.
    • Daga aiwatar da kayan aikin rubutu da direban fbcon cire lambar, wanda ke ba da ikon gungurawa rubutu da tsari (CONFIG_VGACON_SOFT_SCROLLBACK) fiye da adadin ƙwaƙwalwar bidiyo na yanayin rubutu na VGA.
    • An sake fasalin Algorithm don ba da fifiko ga zaren da ke cikin kernel. Sabuwar zaɓin yana ba da mafi kyawun daidaito a duk tsarin tsarin kernel lokacin ba da fifiko ga ayyuka na ainihi.
    • An ƙara sysctl sched_uclamp_util_min_rt_default don sarrafa saitunan haɓaka CPU don ayyuka na lokaci-lokaci (misali, zaku iya canza halayen ayyuka na lokaci-lokaci akan tashi don adana wuta bayan canzawa zuwa ƙarfin baturi ko akan tsarin wayar hannu).
    • An yi shirye-shirye don aiwatar da goyan baya ga fasahar Manyan Shafukan Fassara a cikin ma'ajin shafi.
    • Injin fanotify yana aiwatar da sabbin tutoci FAN_REPORT_NAME da FAN_REPORT_DIR_FID don ba da rahoton sunan iyaye da keɓaɓɓen bayanin FID lokacin ƙirƙira, gogewa, ko abubuwan motsi suna faruwa don abubuwan directory da abubuwan da ba na directory ba.
    • Don ƙungiyoyi aiwatar wani sabon mai kula da ƙwaƙwalwar ajiyar slab, wanda ya shahara don matsar da lissafin slab daga matakin shafi na ƙwaƙwalwar ajiya zuwa matakin kernel abu, wanda ke ba da damar raba shafukan slab a cikin ƙungiyoyi daban-daban, maimakon ware maɓalli daban-daban ga kowane rukuni. Hanyar da aka ba da shawarar ta ba da damar haɓaka haɓakar amfani da slab, rage girman ƙwaƙwalwar da aka yi amfani da shi don slab da 30-45%, rage yawan yawan ƙwaƙwalwar ajiyar kwaya da rage rarrabuwar ƙwaƙwalwa.
    • A cikin tsarin tsarin sauti ALSA и USB tari, daidai da kwanan nan karɓa shawarwari game da amfani da haɗaɗɗiyar kalmomi a cikin Linux kernel; an tsaftace sharuddan siyasa ba daidai ba. An share lambar daga kalmomin "bawa", "maigida", "blacklist" da "farar fata".
  • Hankali da Tsaro
    • Lokacin gina kwaya ta amfani da Clang compiler ya bayyana ikon daidaitawa (CONFIG_INIT_STACK_ALL_ZERO) farawa ta atomatik zuwa sifili na duk masu canji da aka adana akan tari (lokacin gini, saka "-ftrivial-auto-var-init=zero").
    • A cikin tsarin tsarin seccomp, lokacin amfani da yanayin sarrafa tsari a cikin sarari mai amfani, kara da cewa damar musanya masu bayanin fayil a cikin tsarin kulawa don yin cikakken kwaikwayi kiran tsarin da ke haifar da ƙirƙirar bayanan fayil. Ana buƙatar aikin a cikin keɓaɓɓen tsarin kwantena da aiwatar da akwatin sandbox don Chrome.
    • Don tsarin gine-ginen xtensa da csky, an ƙara goyan baya don iyakance kiran tsarin ta amfani da tsarin tsarin seccomp. Don xtensa, ana kuma aiwatar da goyan bayan tsarin tantancewa.
    • Kara sabon tuta mai ƙarfi CAP_CHECKPOINT_RESTORE, wanda ke ba ku damar ba da dama ga abubuwan da suka shafi daskarewa da maido da yanayin tafiyar matakai ba tare da canja wurin ƙarin gata ba.
    • GCC 11 yana ba da duk abubuwan da kuke buƙata
      Kayan aikin gyara kuskure KCSAN (Kernel Concurrency Sanitizer), wanda aka ƙera don gano yanayin tsere a cikin kwaya. Don haka, ana iya amfani da KCSAN yanzu tare da kernels da aka gina a GCC.

    • Don AMD Zen da sabbin samfuran CPU kara da cewa goyan bayan fasahar P2PDMA, wanda ke ba ka damar amfani da DMA don canja wurin bayanai kai tsaye tsakanin ƙwaƙwalwar na'urori biyu da aka haɗa da bas ɗin PCI.
    • An ƙara yanayin zuwa dm-crypt wanda ke ba ku damar rage jinkiri ta hanyar sarrafa bayanan sirri ba tare da amfani da layukan aiki ba. Wannan yanayin kuma yana da mahimmanci don aiki daidai da zoned toshe na'urori (na'urori tare da wuraren da dole ne a rubuta su a jere, suna sabunta dukkan rukunin tubalan). An yi aiki don ƙara yawan kayan aiki da rage latency a cikin dm-crypt.
    • Lambar da aka cire don tallafawa baƙi 32-bit da ke gudana a cikin yanayin paravirtualization yana tafiyar da hypervisor Xen. Masu amfani da irin waɗannan tsarin ya kamata su canza zuwa amfani da kernels 64-bit a cikin mahallin baƙi ko amfani da cikakkun (HVM) ko haɗa (PVH) hanyoyin haɓakawa maimakon paravirtualization (PV) don gudanar da mahalli.
  • Tsarin Disk, I/O da Tsarin Fayil
    • Akan tsarin fayil ɗin Btrfs aiwatar zaɓin dutsen "ceto" wanda ke haɗa damar zuwa duk sauran zaɓuɓɓukan dawo da su. An cire goyon bayan zaɓuɓɓukan "alloc_start" da "subvolrootid", kuma zaɓin "inode_cache" an soke shi. An inganta ayyukan aiki, musamman gaggarumar saurin aiwatar da ayyukan fsync(). Kara ikon yin amfani da madadin nau'ikan kididdigar kuɗi ban da CRC32c.
    • Kara ikon yin amfani da boye-boye na layi (Inline Encryption) a cikin tsarin fayil na ext4 da F2FS, don ba da damar abin da aka ba da zaɓin hawan "inlinecrypt". Yanayin boye-boye na kan layi yana ba ku damar amfani da hanyoyin ɓoyayyen da aka gina a cikin mai sarrafa tuƙi, wanda ke ɓoyewa a sarari kuma yana yanke shigarwa/fitarwa.
    • A cikin XFS amintattu sake saitin inode (flush) a cikin yanayin asynchronous gaba ɗaya wanda baya toshe matakai yayin aiwatar da aikin tsaftace ƙwaƙwalwar ajiya. An warware batun keɓancewar ƙididdiga na dogon lokaci wanda ya haifar da ƙayyadaddun ƙayyadaddun ƙayyadaddun ƙayyadaddun ƙayyadaddun ƙayyadaddun ƙayyadaddun ƙayyadaddun ƙayyadaddun faɗakarwa don bin sawu ba daidai ba. Haɗin aiwatar da tallafin DAX don ext4 da xfs.
    • A cikin Ext4 aiwatar preload block kasafi bitmaps. Haɗe tare da iyakance bincika ƙungiyoyin da ba a buɗe ba, haɓakawa ya rage lokacin da ake buƙata don hawa manyan ɓangarori.
    • A cikin F2FS ya kara da cewa ioctl F2FS_IOC_SEC_TRIM_FILE, wanda ke ba ka damar amfani da umarnin TRIM/jifar da umarni don sake saita ƙayyadaddun bayanai a zahiri a cikin fayil, misali, don share maɓallan shiga ba tare da barin sauran bayanan akan tuƙi ba.
      F2FS kuma ya kara da cewa sabon yanayin tarin shara GC_URGENT_LOW, wanda ke aiki da ƙarfi ta hanyar kawar da wasu bincike don kasancewa cikin zaman banza kafin fara mai tattara shara.

    • A cikin bcache, an ƙara girman bucket_size na ma'auni daga 16 zuwa 32 bits a shirye-shiryen kunna cache na na'ura mai yanki.
    • An ƙara ikon yin amfani da ɓoyayyen layi akan ginanniyar ɓoyayyen kayan aikin da masu kula da UFS suka bayar a cikin tsarin SCSI (Ma'ajiyar Flash ta Duniya).
    • An ƙara sabon ma'aunin layin umarni na kernel "debugfs", wanda ke ba ku damar sarrafa samuwar pseudo-FS na suna iri ɗaya.
    • Abokin ciniki na NFSv4.2 yana ba da tallafi don halayen fayil mai tsawo (xattr).
    • A cikin dm-kura ya kara da cewa dubawa don nunawa a lokaci ɗaya jerin duk abubuwan da aka gano mara kyau akan faifai ("dmsetup message dust1 0 listbadblocks").
    • Don md/raid5, an ƙara /sys/block/md1/md/stripe_size siga don saita girman toshe STRIPE.
    • Don na'urorin ajiya na NVMe kara da cewa goyan bayan umarnin yanki na tuƙi (ZNS, NVM Express Zoned Namespace), wanda ke ba ku damar rarraba sararin ajiya zuwa yankuna waɗanda ke haɗa ƙungiyoyin tubalan don ƙarin cikakken iko akan sanya bayanai akan tuƙi.
  • Tsarin hanyar sadarwa
    • A cikin Netfilter kara da cewa da ikon ƙin ƙin fakiti a mataki kafin dubawar dubawa (za'a iya amfani da kalmar REJECT yanzu ba kawai a cikin sarƙoƙi na INPUT, FORWARD da OUTPUT ba, har ma a matakin PREROUTING don icmp da tcp).
    • A cikin nftables kara da cewa da ikon duba abubuwan da suka shafi daidaitawa canje-canje.
    • A cikin nftables a cikin netlink API kara da cewa goyan bayan sarƙoƙin da ba a san su ba, sunan wanda kernel ke sanyawa da ƙarfi. Lokacin da kuka share ƙa'idar da ke da alaƙa da sarkar da ba a san sunanta ba, ana share sarkar kanta ta atomatik.
    • BPF tana ƙara goyan baya ga masu yin jujjuyawar don ratsawa, tacewa, da gyaggyara abubuwan haɗin kai (taswirori) ba tare da kwafin bayanai cikin sararin mai amfani ba. Ana iya amfani da masu haɓakawa don soket ɗin TCP da UDP, ƙyale shirye-shiryen BPF su sake maimaita jerin buƙatun buɗaɗɗen kuma cire bayanan da suke buƙata daga gare su.
    • An ƙara sabon nau'in shirin BPF BPF_PROG_TYPE_SK_LOOKUP, wanda aka ƙaddamar lokacin da kernel ɗin ke neman madaidaicin soket na saurare don haɗin mai shigowa. Yin amfani da shirin BPF kamar wannan, zaku iya ƙirƙirar masu aiki waɗanda ke yanke shawara game da wanne soket ɗin ya kamata a haɗa shi da shi, ba tare da ƙuntatawa ta hanyar kiran tsarin ba. Misali, zaku iya haɗa soket ɗaya tare da kewayon adireshi ko tashar jiragen ruwa. Bugu da ƙari, an ƙara goyan bayan tutar SO_KEEPALIVE zuwa bpf_setsockopt() kuma an aiwatar da ikon shigar da masu sarrafa BPF_CGROUP_INET_SOCK_RELEASE, wanda ake kira lokacin da aka saki soket.
    • An aiwatar da tallafin yarjejeniya PRP (Parallel Redundancy Protocol), wanda ke ba da damar sauya tushen tushen Ethernet zuwa tashar madadin, bayyananne don aikace-aikace, a cikin yanayin gazawar kowane ɓangaren cibiyar sadarwa.
    • Saukewa: mac80211 kara da cewa goyan bayan shawarwarin tashoshi huɗu na WPA/WPA2-PSK a cikin yanayin samun dama.
    • An ƙara ikon canza mai tsara tsarin qdisc (ƙirar layi) don amfani da FQ-PIE (Flow Queue PIE) hanyar sadarwa ta hanyar tsohuwa, da nufin rage mummunan tasirin fakitin fakiti a kan kayan aikin cibiyar sadarwa na gefen (bufferbloat) a cikin cibiyoyin sadarwa tare da na USB modems.
    • An ƙara sabbin abubuwa zuwa MPTCP (MultiPath TCP), kari na ƙa'idar TCP don tsara aikin haɗin TCP tare da isar da fakiti a lokaci guda tare da hanyoyi da yawa ta hanyoyin mu'amalar cibiyar sadarwa daban-daban masu alaƙa da adiresoshin IP daban-daban. Ƙara goyon baya don kuki syn, DATA_FIN, daidaitawa ta atomatik, bincike na soket, da REUSEADDR, REUSEPORT, da tutoci V6 KAWAI a cikin setsockopt.
    • Don tebur mai ba da hanya tsakanin hanyoyin sadarwa VRF (Virtual Routing and Forwarding), wanda ke ba da damar tsara ayyukan yankuna da yawa akan tsarin guda ɗaya, yanayin “m” an aiwatar da shi. A cikin wannan yanayin, tebur mai kama-da-wane kawai za a iya haɗa shi tare da tebur mai tuƙi wanda ba a amfani da shi a cikin sauran tebur mai kama-da-wane.
    • Wireless direban shine at11k kara da cewa goyan bayan mitar 6GHz kuma duban kallo.
  • Kayan aiki
    • Lambar da aka cire don tallafawa gine-ginen UniCore, wanda aka haɓaka a Cibiyar Microprocessor na Jami'ar Peking kuma an haɗa shi a cikin Linux kernel a cikin 2011. Wannan gine-ginen ba a kiyaye shi ba tun 2014 kuma ba shi da tallafi a GCC.
    • An aiwatar da goyan bayan gine-ginen RISC-V kcov (Tsarin gyara kurakurai don nazarin ɗaukar hoto na kwaya), kmemleak (tsarin gano zuriyar ƙwaƙwalwar ajiya), kariyar tari, alamomin tsalle da ayyuka marasa kaska (yawanci mai zaman kansa na siginar ƙidayar lokaci).
    • Don tsarin gine-ginen PowerPC, an aiwatar da goyan bayan layukan kulle-kulle, wanda ya inganta aiki sosai a yanayin rikice-rikice.
    • Don gine-ginen ARM da ARM64, ana kunna tsarin tsarin mitar mai sarrafawa ta tsohuwa shirin (gwamnan cpufreq), wanda kai tsaye yana amfani da bayanai daga mai tsara ɗawainiya don yanke shawara kan canza mitar kuma zai iya shiga cikin direbobin cpufreq nan da nan don canza mitar, nan take daidaita sigogin aiki na CPU zuwa nauyin na yanzu.
    • Direban i915 DRM na katunan zane na Intel ya haɗa da goyan baya ga kwakwalwan kwamfuta dangane da microarchitecture Lake Rocket da ƙarin tallafi na farko don katunan masu hankali Intel Xe DG1.
    • Direban Amdgpu ya kara tallafin farko don AMD GPUs Navi 21 (Navy Flounder) da Navi 22 (Sienna Cichlid). Ƙara goyon baya don rikodin bidiyo na UVD/VCE da injunan hanzari don GPU Islands ta Kudu (Radeon HD 7000).
      Ƙara dukiya don juya nuni ta 90, 180 ko 270 digiri.

      Abin sha'awa, direba don AMD GPU shi ne Direba mafi girma a cikin kwaya - yana da kusan layin lamba miliyan 2.71, wanda shine kusan 10% na jimlar kernel (layi miliyan 27.81). A lokaci guda kuma, ana lissafin layin miliyan 1.79 ta fayilolin kai tsaye ta atomatik tare da bayanai don rajistar GPU, kuma lambar C shine layin 366 dubu (don kwatanta, direban Intel i915 ya haɗa da layin 209, da Nouveau - 149 dubu).

    • A cikin direban Nouveau kara da cewa goyan baya don bincika amincin firam-by-frame ta amfani da CRC (Cyclic Redundancy Checks) a cikin injunan nuni na NVIDIA GPU. Aiwatar ta dogara ne akan takaddun da NVIDIA ta bayar.
    • Direbobin da aka ƙara don bangarorin LCD: Frida FRD350H54004, KOE TX26D202VM0BWA, CDTech S070PWS19HP-FC21, CDTech S070SWV29HG-DC44, Tianma TM070JVHG33 da Xingbangda XBD599
    • Tsarin tsarin sauti na ALSA yana goyan bayan Intel Silent Stream (Yanayin ci gaba na wutar lantarki don na'urorin HDMI na waje don kawar da jinkiri lokacin fara sake kunnawa) da sabuwar na'ura don sarrafa hasken kunna makirufo da maɓallan bebe, sannan kuma ƙara tallafi don sabbin kayan aiki, gami da mai sarrafawa. Farashin 7A1000.
    • Supportara tallafi don allon ARM, na'urori da dandamali: Pine64 PinePhone v1.2, Lenovo IdeaPad Duet 10.1, ASUS Google Nexus 7, Acer Iconia Tab A500, Qualcomm Snapdragon SDM630 (amfani da Sony Xperia 10, 10 Plus, XA2, XA2 Plus da XA2 Ultra), Jetson Xavier NX, Amlogic WeTek Core2, Aspeed EthanolX, sababbin allon guda biyar dangane da NXP i.MX6, MikroTik RouterBoard 3011, Xiaomi Libra, Microsoft Lumia 950, Sony Xperia Z5, MStar, Microchip Sparx5, Intel Keem Bay, Amazon Alpine v3, Renesa RZ/G2H.

A lokaci guda kuma, Cibiyar Software na Kyauta ta Latin Amurka kafa
zaɓi Kwayar cuta gaba daya kyauta 5.9 - Linux-libre 5.9-gnu, An share daga firmware da abubuwan direba masu ƙunshe da abubuwan da ba su da kyauta ko sassan lambobi, iyakar abin da masana'anta ke iyakancewa. Sabon sakin yana hana shigar da bulo a cikin direbobi don WiFi rtw8821c da SoC MediaTek mt8183. Lambobin tsaftacewa da aka sabunta a cikin Habanalabs, Wilc1000, amdgpu, mt7615, i915 CSR, Mellanox mlxsw (Spectrum3), r8169 (rtl8125b-2) da kuma x86 direbobin allo da tsarin ƙasa.

source: budenet.ru

Add a comment