Linux 5.3 kernel kuburitswa

Mushure memwedzi miviri yebudiriro, Linus Torvalds kuunzwa kernel release Linux 5.3. Pakati pezvinonyanya kushandurwa shanduko: rutsigiro rwe AMD Navi GPUs, Zhaoxi processors uye Intel Speed ​​​​Sarudza simba manejimendi tekinoroji, kugona kushandisa umwait mirairo yekumirira usingashandisi matenderedzwa,
'kushandisa clamping' modhi inowedzera kudyidzana kweasymmetric CPUs, pidfd_open system call, kugona kushandisa IPv4 kero kubva pa0.0.0.0/8 subnet, mukana we nfttables hardware acceleration, HDR rutsigiro mu DRM subsystem, kubatanidzwa kweACRN. hypervisor.

В chiziviso kuburitswa kutsva, Linus akayeuchidza vese vanogadzira mutemo mukuru wekuvandudza kernel - kuchengetedza maitiro akafanana emushandisi-nzvimbo zvikamu. Shanduko kune kernel haifanire kutyora yatove kuita maapplication kana kutungamira kune regressions padanho remushandisi. Muchiitiko ichi, kutyorwa kwemaitiro kunogona kukonzera kwete shanduko muABI chete, kubviswa kwekodhi kodhi, kana kutaridzika kwezvikanganiso, asiwo kukanganisa kwakananga kwekuvandudzwa kunoshanda nemazvo. Semuyenzaniso wokufananidzira waivako kuraswa zvinoshanda optimization muExt4 kodhi, iyo inoderedza nhamba yedhiraivha yekuwana nekudzima kuverenga-kutanga kweiyo inode tafura yezvikumbiro zvidiki zveI/O.

Iyo optimization yakatungamira kune chokwadi chekuti, nekuda kwekuderera kwebasa re dhisiki, entropy ye getrandom () random nhamba jenareta yakatanga kuunganidza zvishoma nezvishoma uye mune mamwe magadzirirwo, mune mamwe mamiriro ezvinhu, kutonhora kunogona kuonekwa panguva yekutakura kusvikira dziva re entropy rave. akazadzwa. Sezvo optimization ichinyatso batsira, nhaurirano yakamuka pakati pevagadziri umo yakanzi igadzirise dambudziko nekudzima iyo default blocking mode ye getrandom () kufona uye nekuwedzera sarudzo yemureza kumirira entropy, asi shanduko yakadaro yaizokanganisa kunaka kwenhamba dzisina kurongeka padanho rekutanga rekurodha.

Iyo vhezheni nyowani inosanganisira gumi nemashanu,15794 zvigadziriso kubva 1974 vanogadzira,
saizi yechigamba - 92 MB (shanduko dzakakanganisa 13986 mafaera, yakawedzera 258419 mitsara yekodhi,
599137 mitsetse yakabviswa). Inenge 39% yezvose zvakaratidzwa mu5.3
shanduko dzine hukama nevatyairi vemidziyo, ingangoita 12% yekuchinja ndeye
mafungiro ekugadzirisa kodhi yakananga kune hardware architectures, 11%
ine chekuita netiweki stack, 3% kune mafaira masisitimu uye 3% kune yemukati
kernel subsystems.

chikuru zvitsva:

  • Memory uye system masevhisi
    • Kuenderera mberi kwekusimudzira kwe 'pidfd' mashandiro ekubatsira kubata PID zvakare kushandisa mamiriro (pidfd inosanganiswa neimwe maitiro uye haishanduke, nepo PID ichigona kubatanidzwa neimwe nzira mushure mekuita kwazvino kwakabatana neiyo PID kuguma). Yakanga yawedzerwa kune kernel
      iyo pidfd_send_signal() system call uye CLONE_PIDFD mureza mu clone() kufona kuti uwane pidfd yekushandisa mu idfd_send_signal(). Kushandisa clone() nemureza weCLONE_PIDFD kunogona kukonzera matambudziko nemamaneja ebasa kana Android platform's out-of-memory force termination system. Pakadai, kufona kufork() kana clone() isina CLONE_PIDFD inoshandiswa kutanga.

      Kernel 5.3 yakaunza iyo system call pidfd_open(). Yakawedzerawo tsigiro yepidfd yekuvhota uchishandisa poll() uye epoll(), iyo inobvumira mamaneja ehurongwa kuti vatarise kugumiswa kwemaitiro asina kutyira mamiriro emujaho kana PID ikapinzwa kuita kutsva. Iyo nzira yekuzivisa kana chirongwa chine chekuita nepidfd chapera chakafanana nekuzivisa kana hurongwa hwayo hwemwana hwapera;

    • Tsigiro yemutoro wepinning meshini yakawedzerwa kune iyo basa scheduler (Kushandisa clamping), zvichikubvumidza kuti unamate kune hushoma kana huwandu hwema frequency renji, zvichienderana nemabasa anoshanda paCPU. Iyo yakaratidzwa meshini inomhanyisa mabasa anokanganisa zvakananga kunaka kwemushandisi ruzivo nekumhanyisa mabasa aya pazasi pekupedzisira kwe "yakakumbirwa" frequency. Mabasa akaderera-asingakanganisi basa remushandisi anotangwa pachishandiswa muganho wepamusoro we "inobvumidzwa" frequency. Miganhu inoiswa kuburikidza neiyo sched_uclamp_util_min uye sched_uclamp_util_max hunhu mune sched_setattr () system call.
    • Yakawedzerwa rutsigiro rwesimba rekutonga tekinoroji Intel Speed ​​​​Sarudza, inowanikwa pamaseva akasarudzwa ane Intel Xeon processors. Iyi tekinoroji inobvumidza iwe kuseta mashandiro uye kugovera magadzirirwo ezvirongwa zveCPU cores, izvo zvinokutendera kuti uise pamberi pekuita kwemabasa anoitwa pane mamwe macores, kupira kuita pane mamwe macores;
    • Maitiro munzvimbo yemushandisi akapa kukwanisa kumirira kwenguva pfupi pasina kushandisa zvishwe uchishandisa murairo weumwait. Murairo uyu, pamwe chete neyeumonitor uye tpause mirairo, ichapihwa muIntel iri kuuya "Tremont" machipisi, uye inobvumira kuitwa kwekunonoka kunoshanda nesimba uye kusakanganisa kuita kweimwe tambo kana uchishandisa Hyper Threading;
    • Kune iyo RISC-V dhizaini, tsigiro yemapeji makuru endangariro yakawedzerwa;
    • Iyo kprobes yekutsvagisa michina yakawedzera kugona kwe dereference kernel anonongedzera kune mushandisi nzvimbo, iyo inogona kushandiswa, semuenzaniso, kuongorora zviri mukati mezvimiro zvakapfuudzwa kune system mafoni. Iko kugona kuisa cheki padanho rebhoot kwakawedzerwawo.
    • Yakawedzera PREEMPT_RT sarudzo kune iyo faira yekumisikidza yekushandisa chaiyo-nguva. Iyo kodhi pachayo yekutsigira chaiyo-nguva modhi haisati yawedzerwa kune kernel, asi kutaridzika kwesarudzo chiratidzo chakanaka chekuti epic yenguva refu. kubatanidzwa Realtime-Preempt zvigamba zvava kuda kupera;
    • Yakawedzera iyo clone3 () system yekufona nekushandiswa kweimwe yakawedzera vhezheni ye clone () interface, iyo inobvumira kudoma yakakura nhamba yemureza;
    • Yakawedzera bpf_send_signal () mugadziri, achibvumira zvirongwa zveBPF kutumira zvikwangwani kune zvisingaite maitiro;
    • Kune zviitiko zveperf muKVM hypervisor nharaunda, imwe nyowani yekusefa chiitiko yakawedzerwa, ichibvumira maneja kuti aone mhando dzezviitiko zvinotenderwa kana zvisingabvumirwe kutariswa kune yevaenzi system side;
    • Iko kugona kugadzirisa zvirongwa zvine zvishwe kwakawedzerwa kune eBPF application verification mechanism kana kuitiswa kwechiuno kwakaganhurirwa uye hakugone kutungamira kupfuudza muganhu pahuwandu hwehuwandu hwemirairo;
  • Disk Subsystem, I/O uye File Systems
    • Iyo XFS faira system ikozvino inotsigira akawanda-akarukwa inode bypass (semuenzaniso, kana uchitarisa quotas). Ioctls itsva BULKSTAT uye INUMBERS yakawedzerwa, ichipa ruzivo rwezvinhu zvakaonekwa mumutauro wechishanu weFS format, yakadai seinode nguva yekuberekwa uye kukwanisa kugadzirisa BULKSTAT uye INUMBERS parameters yeboka rimwe nerimwe reAG (Allocation Groups);
    • MuExt4 rutsigiro rwakawedzerwa voids mumadhairekitori (mabhuroki asina kubatanidzwa).
      Kugadziriswa kwakapihwa mureza "i" (isingachinji) yemafaira akazaruka (kunyora kunorambidzwa mumamiriro ezvinhu kana mureza wakaiswa panguva iyo faira yakanga yatovhurwa);

    • Btrfs inopa tsananguro yekukurumidza kuita kwe crc32c pane zvese zvivakwa;
    • MuCIFS, kodhi yekutsigira smbdirect yakabviswa sekuvandudzwa kwekuyedza. SMB3 yakawedzera kugona kushandisa cryptographic algorithms muGCM modhi. Yakawedzera imwe nyowani yegomo sarudzo yekubvisa mode paramita kubva kuACE (Access Control Entry) zvinyorwa. Yakagadzirisa mashandiro eiyo yakavhurika () kufona;
    • Yakawedzera sarudzo kuF2FS kudzikamisa muunganidzi wemarara kana uchimhanya mucheki = disable mode. Yakawedzera ioctl kubvisa mabhuroka kubva kuF2FS, ichibvumira pane-iyo-inobhururuka kupatsanura saizi kugadzirisa. Yakawedzera kugona kuisa faira rekuchinja muF2FS kuti ipe yakananga I/O. Yakawedzera rutsigiro rwekupinza faira uye kugovera mabhuroko emafaira akafanana kune vese vashandisi;
    • Yakawedzera tsigiro yeasynchronous mashandiro sendmsg() uye recvmsg() kune interface yeasynchronous input/output io_uring;
    • Tsigiro yekumanikidza uchishandisa zstd algorithm uye kugona kuona yakasainwa mifananidzo yeFS yakawedzerwa kune UBIFS faira system;
    • Ceph FS ikozvino inotsigira SELinux kuchengetedza mavara emafaira;
    • YeNFSv4, sarudzo nyowani yekumisikidza "nconnect =" yaitwa, iyo inosarudza huwandu hwekubatanidza hwakagadzwa neseva. Traffic pakati pezvibatanidza izvi zvichagoverwa pachishandiswa load balancing. Mukuwedzera, iyo NFSv4 server ikozvino inogadzira dhairekitori / proc/fs/nfsd/vatengi vane ruzivo nezvevatengi vemazuva ano, kusanganisira ruzivo nezve mafaera avakavhura;
  • Virtualization uye Chengetedzo
    • Iyo kernel inosanganisira hypervisor yemidziyo yakamisikidzwa ACRN, iyo yakanyorwa neziso rekugadzirira mabasa chaiwo-nguva uye kukodzera kushandiswa mumisheni-yakakosha masisitimu. ACRN inopa zvishoma pamusoro, inovimbisa yakaderera latency uye yakakwana yekupindura kana uchibatana nemidziyo. Inotsigira virtualization yeCPU zviwanikwa, I/O, network subsystem, magiraidhi uye mashandiro anoita ruzha. ACRN inogona kushandiswa kumhanyisa akawanda ega ega emuchina mumagetsi ekudzora mayuniti, dashboards, mota ruzivo masisitimu, mutengi IoT zvishandiso uye humwe hunyanzvi hwakadzamirwa;
    • MuMushandisi-modhi Linux akawedzera Nguva yekufamba modhi, iyo inokutendera kuti udzikise kana kumhanyisa nguva munzvimbo yeUML kuti zvive nyore kugadzirisa kodhi inoenderana nenguva. Mukuwedzera, parameter yakawedzerwa
      nguva-yekufamba-kutanga, iyo inobvumira iyo system wachi kuti itange kubva panguva yakatarwa mune epoch fomati;

    • Nyowani kernel yekuraira mutsara sarudzo "init_on_alloc" uye "init_on_free" yakawedzerwa, kana yatsanangurwa, zeroing yeakagoverwa uye yakasunungurwa nzvimbo dzekurangarira inogoneswa (kuzadza nezero ye malloc uye yemahara), iyo inobvumira kuwedzera kuchengetedzeka nekuda kwekuwedzera kwekutanga kwepamusoro;
    • Mutyairi mutsva akawedzerwa virtio-iommu nekushandiswa kwechishandiso cheparavirtualized chinokutendera kuti utumire zvikumbiro zveIOMMU zvakaita seATTACH, DETACH, MAP uye UNMAP pamusoro pechifambiso chevirtio pasina kutevedzera matafura emapeji endangariro;
    • Mutyairi mutsva akawedzerwa virtio-pmem, inomiririra kuwanikwa kwemidziyo yekuchengetera yakamepu kune kero kero nzvimbo, senge NVDIMMs;
    • Yakaitwa kugona kubatanidza makiyi ekriptographic kumushandisi kana network namespace (makiyi anova asingasvikike kunze kwenzvimbo yakasarudzwa yezita), pamwe nekudzivirira makiyi uchishandisa ACLs;
    • Kune iyo crypto subsystem akawedzera tsigiro yekukurumidza kwazvo isiri-cryptographic hashing algorithm xxhash, kukurumidza kwayo kunoenderana nekushanda kwendangariro;
  • Network subsystem
    • Yakagoneswa kugadzirisa kero dzeIPv4 muchikamu 0.0.0.0/8, iyo yanga isingawanikwe kushandiswa. Nhanganyaya ye subnet iyi zvichabvumira kugovera mamwe mamirioni gumi nematanhatu IPv16 kero;
    • MuNetfilter ye nftables akawedzera rutsigiro rwe Hardware acceleration masisitimu epacket kusefa kuburikidza nekushandiswa kweakawedzera madhiraivha Purogiramu inonzi Flow Block. Yese matafura emitemo nemaketani ese anogona kuiswa parutivi rwe network adapter. Kugonesa kunoitwa nekusungirira mureza weNFT_TABLE_F_HW patafura. Inotsigira yakapfava Layer 3 uye Layer 4 protocol metadata, gamuchira / kuramba zviito, mappings ne IP uye anotumira / anogamuchira network ports uye protocol mhando;
    • Added yakavakirwa-mukati yekubatanidza yekutevera rutsigiro kunetiweki mabhiriji, ayo asingade kushandiswa kwebr_netfilter emulating layer;
    • Munf_matafura akawedzera kutsigirwa kweSYNPROXY module, iyo inodzokorora kushanda kwakafanana kubva kune iptables, uye kukwanisa kutarisa mumitemo yezvisarudzo zvega mumusoro we IPv4 inoshandiswawo;
    • Yakawedzera kugona kwekubatanidza zvirongwa zveBPF kune setsockopt() uye getsockopt() system mafoni, ayo, semuenzaniso, anotendera iwe kuti ubatanidze yako wega mabatiro ekuwana kune idzi mafoni. Uye zvakare, imwe nyowani yekufona point (hook) yakawedzerwa, iyo iwe yaunogona kuronga kufona kuchirongwa cheBPF kamwe chete kune yega yega RTT nguva (yekutenderera-nguva, ping nguva);
    • Ye IPv4 uye IPv6 akawedzera new nexthop routing data storage mechanism ine chinangwa chekuwedzera scalability yematafura ekufambisa. Miedzo yakaratidza kuti pakushandisa hurongwa hutsva, seti ye743 zviuru nzira dzakaiswa mukernel mumasekonzi 4.3 chete;
    • ZveBluetooth itwa kushanda kunodiwa kutsigira LE ping;
  • Zvigadzirwa
    • Added rutsigiro rwekambani x86-inoenderana processors Zhaoxin, yakagadziridzwa semhedzisiro yeprojekiti yakabatana pakati peVIA Technologies neShanghai Municipality. Iyo ZX CPU mhuri yakavakirwa paiyo x86-64 Isaya architecture, ichienderera mberi nekuvandudza tekinoroji VIA Centaur;
    • Iyo DRM (Direct Rendering Manager) subsystem, pamwe chete neamdgpu uye i915 mifananidzo yedhiraivha, yakawedzera tsigiro yekuisa, kugadzirisa uye kutumira metadata yeHDR (yakakwirira dynamic range) kuburikidza neHDMI port, ichibvumira kushandiswa kweHDR mapaneru uye zviratidziro zvinokwanisa kuita. kuratidza mamwe mitsara yekupenya;
    • Mutyairi weamdgpu akawedzera rutsigiro rwekutanga rwe AMD NAVI GPU (RX5700), iyo inosanganisira base driver, screen interaction code (DCN2), GFX uye compute rutsigiro (GFX10),
      SDMA 5 (System DMA0), kutonga kwesimba uye multimedia encoder/decoder (VCN2). amdgpu inovandudzawo rutsigiro rwemakadhi akavakirwa paVega12 uye Vega20 GPUs, iyo yakawedzera ndangariro uye masimba ekugadzirisa masimba akawedzerwa;

    • Yakawedzerwa rutsigiro rwemakadhi akavakirwa paVegaM GPUs kumutyairi weamdkfd (ye discrete GPUs, seFiji, Tonga, Polaris);
    • Mune DRM mutyairi weIntel vhidhiyo makadhi eIcelake machipisi itwa itsva yakawanda-segment gamma kugadzirisa maitiro. Yakawedzera kugona kuburitsa kuburikidza neDisplayPort muYCbCr4:2:0 fomati. New firmware yakawedzerwa GuC yeSKL, BXT, KBL, GLK uye ICL. Iko kugona kudzima skrini yemagetsi mune asynchronous modhi yaitwa. Added tsigiro yekuchengetedza uye kudzoreredza mamiriro ekupa Ironlake (gen5) uye gen4 (Broadwater - Cantiga) machipisi, ayo anobvumidza iwe kudzoreredza iyo GPU mamiriro kubva munzvimbo yemushandisi kana uchifamba kubva kune rimwe batch oparesheni kuenda kune imwe;
    • Mutyairi weNouveau anopa kuonekwa kweNVIDIA Turing TU116 chipset;
    • Kugona kweDRM/KMS mutyairi weARM Komeda screen accelerators (Mali D71) akawedzerwa, tsigiro yekuyera, kupatsanura/kubatanidza maseru, kutenderera, kuverengerwa kunyora, AFBC, SMMU uye mavara encoding mafomati Y0L2, P010, YUV420_8/10BIT ine. been added;
    • Mutyairi weMSM anowedzera tsigiro yeA540 GPU Adreno series inoshandiswa muQualcomm processors, pamwe nerutsigiro rweMSM8998 DSI controller yeSnapdragon 835;
    • Akawedzera madhiraivha eLCD mapaneru Samsung S6E63M0, Armadeus ST0700, EDT ETM0430G0DH6, OSD101T2045-53TS,
      Evervision VGG804821, FriendlyELEC HD702E, KOE tx14d24vm1bpa, TFC S9700RTWV43TR-01B, EDT ET035012DM6 uye VXT VL050-8048NT-C01;

    • Added mutyairi wekugonesa decoding acceleration maturusi
      mavhidhiyo anowanikwa muAmlogic Meson SoC;

    • Mune v3d mutyairi (yeBroadcom Vhidhiyo Core V GPU inoshandiswa muRaspberry Pi) yakaonekwa kutsigira kutumira komputa shaders;
    • Added mutyairi weSPI keyboards uye trackpads anoshandiswa mumhando dzemazuva ano dzeApple MacBook uye MacBookPro laptops;
    • Added yekuwedzera dziviriro yeioctl mafoni ane chekuita nemutyairi wefloppy, uye mutyairi pachawo anomakwa seasina kuchengetedzwa.
      ("nherera"), izvo zvinoreva kuguma kwekuedzwa kwayo. Mutyairi achiri kuchengetwa mu kernel, asi kushanda kwayo chaiko hakuna kuvimbiswa. Mutyairi anoonekwa seachinyakare, nekuti zvakaoma kuwana midziyo yekushanda yekuiedza - ese aripo ekunze madhiraivha, sekutonga, shandisa iyo USB interface.

    • Added cpufreq mutyairi weRaspberry Pi mabhodhi, ayo anotendera iwe kuti udzore zvine simba shanduko mu processor frequency;
    • Yakawedzerwa rutsigiro rweiyo ARM SoC Mediatek mt8183 (4x Cortex-A73 + 4x Cortex-A53), TI J721E (2x Cortex-A72 + 3x Cortex-R5F + 3 DSPs + MMA) uye Amlogic G12B (4x Cortex-A73tex 2 Cortex +- A53 ), pamwe nemabhodhi:
      • Purism Librem5,
      • Kukurumidza BMC,
      • Microsoft Olympus BMC,
      • Kontron SMARC,
      • Novtech Meerkat96 (i.MX7),
      • ST Micro Avenger96,
      • Google Cheza (Qualcomm SDM845),
      • Qualcomm Dragonboard 845c (Qualcomm SDM845),
      • Hugsun X99 TV Bhokisi (Rockchip RK3399),
      • Khadas Edge/Edge-V/Captain (Rockchip RK3399),
      • HiHope RZ/G2M,
      • NXP LS1021A-TSN.

Panguva imwecheteyo, iyo Latin America Yemahara Software Foundation akaumbwa
sarudzo zvachose yemahara kernel 5.3 - Linux-mahara 5.3-gnu, kucheneswa kwe firmware uye zvinhu zvemutyairi zvine zvikamu zvisingabhadharwi kana zvikamu zvekodhi, chiyero chazvo chinogumira nemuiti. Mukuburitswa kutsva, kurodha kweblob kwakadzimwa mu qcom, hdcp drm, allegro-dvt uye meson-vdec driver.
Yakagadziridzwa blob yekuchenesa kodhi mumadhiraivha uye subsystems amdgpu, i915, netx, r8169, brcmfmac, rtl8188eu, adreno, si2157, pvrusb2, touchscreen_dmi, mutyairi anonzwika weskylake, pamwe neiyo microcode zvinyorwa.

Source: opennet.ru

Voeg