Linux 5.1 kernel kuburitswa

Mushure memwedzi miviri yebudiriro, Linus Torvalds kuunzwa kernel release Linux 5.1. Pakati pekuchinja kunonyanya kukosha: chimiro chitsva cheasynchronous I/O io_uring, kugona kushandisa NVDIMM se RAM, tsigiro yeyakagovaniswa yekurangarira muNouveau, tsigiro yekutarisisa kutarisisa kweakakura kwazvo faira masisitimu kuburikidza ne fanotify, kugona kugadzirisa Zstd compression. mazinga muBtrfs, itsva cpuidle TEO inobata, kushandiswa kwemafoni ehurongwa kugadzirisa dambudziko ra2038, kukwanisa kubhutsura kubva kumudziyo-mapper zvishandiso pasina initramfs, SafeSetID LSM module, tsigiro yezvigamba zvehupenyu zvakasanganiswa.

chikuru zvitsva:

  • Disk Subsystem, I/O uye File Systems
    • Yakaitwa itsva interface yeasynchronous I/O - io_uring, iyo inocherechedzwa nerutsigiro rwayo rwekuvhota kweI/O uye kugona kushanda pamwe kana pasina buffering. Ngatiyeukei kuti yakambotaurwa asynchronous I/O mechanism "aio" haina kutsigira buffered I/O, yaigona kungoshanda muO_DIRECT modhi (isina buffering uye nekunzvenga cache), yaive nematambudziko nekuvhara nekuda kwekumirira kuwanikwa kwemetadata, uye yakaratidza mari dzepamusoro nekuda kwekukopa data mundangariro.

      Mukati me API
      io_uring vagadziri vakaedza kubvisa kukanganisa kweiyo yekare aio interface. By kugadzirwa io_uring iri padyo ne SPDK uye iri pamberi zvakanyanya kune libaio kana uchishanda nekuvhota kwakagoneswa. Raibhurari yakagadzirirwa kushandisa io_uring mukupedzisira maapplication ari munzvimbo yemushandisi liburing, iyo inopa chimiro chepamusoro-soro pamusoro pe kernel interface;

    • Muchiitiko chekutevera chiitiko muFS fanotify() akawedzera rutsigiro rwekutevera superblock uye chimiro shanduko mamiriro dirent (zviitiko zvekugadzira, kudzima uye kufambisa madhairekitori). The present features help solve the scalability problems that comes when create recursive change tracking in very big file systems using inotify mechanism (dirent changes could already only be tracked through inotify, but.
      kuita mumamiriro ekudzokororwa kuteedzera madhairekitori akakura akasiiwa zvakanyanya kudiwa). Zvino kutarisa kwakadaro kunogona kuitwa zvinobudirira kuburikidza ne fanotify;

    • PaBtrfs faira system akawedzera kugona kugadzirisa mwero wekumanikidza we zstd algorithm, iyo inogona kutorwa seyakanyanya kukanganisa pakati peinokurumidza asi isingashande lz4 uye inononoka asi yakanaka compression xz. Nekufananidza nemabatiro azvaimboita kuseta iyo compression level kana uchishandisa zlib, rutsigiro rwe "-o compress=zstd:level" gomo sarudzo yawedzerwa zstd. Panguva yekuyedzwa, danho rekutanga rekutanga rakapa kudzvanywa kwedata ne2.658 nguva ine compression yekumhanya ye438.47 MB/s, decompression speed ye910.51 MB/s uye memory kushandiswa kwe780 MB, uye iyo yepamusoro nhanho gumi neshanu yakapihwa 15 nguva, asi ine compression. kumhanya kwe3.126 MB/s. kuburitsa 37.30 MB/s uye kushandiswa kwendangariro 878.84 MB;
    • Added kugona kubhutsu kubva kune faira system iri pane mudziyo-mapper mudziyo, pasina kushandisa initramfs. Kutanga neazvino kernel kuburitswa, mudziyo-mapper zvishandiso zvinogona kushandiswa zvakananga panguva yebhoti process, semuenzaniso, sechikamu nemudzi faira system. Iyo yekuparadzanisa inogadziriswa uchishandisa iyo boot parameter "dm-mod.create". Device-mapper modules inobvumirwa kurodha inosanganisira: "crypt", "kunonoka", "linear", "snapshot-origin" uye "verity";
    • Mureza weF2FS_NOCOW_FL wawedzerwa kuF2FS faira system yakanangana neFlash drives, iyo inokutendera kuti uvhare maitiro ekukopa-pa-kunyora kwefaira rakapihwa;
    • Faira system yakabviswa kubva kernel Exofs, inova musiyano we ext2, yakagadziridzwa kushanda neOSD (Object-based Storage Device) zvinhu zvekuchengetedza. Tsigiro yeSCSI protocol yemidziyo yakadaro yekuchengetedza yakabviswa zvakare;
  • Virtualization uye Chengetedzo
    • Yakawedzera PR_SPEC_DISABLE_NOEXEC sarudzo ku prctl() kudzora fungidziro yekuitwa kwemirairo yemaitiro akasarudzwa. Sarudzo nyowani inokutendera kuti usarudze kudzima fungidziro yekuita maitiro anogona kurwiswa neSpecter attack. Iko kukiya kunogara kusvika kufona kwekutanga kuita ();
    • Yakaitwa LSM module SafeSetID, iyo inobvumira masevhisi ehurongwa kuchengetedza zvakachengeteka vashandisi pasina kuwedzera maropafadzo (CAP_SETUID) uye pasina kuwana midzi ropafadzo. Ropafadzo dzinopihwa nekutsanangura mitemo mumasecurityfs zvichibva parunyoro ruchena rwezvisungo zvinoshanda (muchimiro "UID1: UID2");
    • Yakawedzerwa yakaderera-level shanduko inodiwa kune stack-based kurodha yemamodule ekuchengetedza (LSMs). Yakaunza iyo "lsm" kernel boot sarudzo yekudzora kuti ndeapi mamodule akaremerwa uye nehurongwa hupi;
    • Tsigiro yemazita emazita efaira yakawedzerwa kune iyo subsystem yekuongorora;
    • Yakawedzerwa kugona kweGCC plugin structleak, iyo inokutendera kuti uvhare kudonha kunogona kuitika kwemukati mendangariro.Kutangwa kwechero shanduko dzinoshandiswa mukodhi kuburikidza nereferensi yekuwana pane stack inopihwa;
  • Network subsystem
    • Zvezvigadziko itwa sarudzo itsva "SO_BINDTOIFINDEX" yakafanana ne
      "SO_BINDTODEVICE", asi kutora senharo nhamba yenhamba ye network network panzvimbo yezita rekushandisa;

    • Iyo mac80211 stack yakawedzera kugona kugovera akawanda BSSIDs (MAC kero) kune chimwe chinhu. Sechikamu chepurojekiti yekukwirisa kuita kweWiFi, iyo mac80211 stack yakawedzera airtime accounting uye kugona kugovera airtime pakati pezviteshi zvakawanda (kana uchishanda munzvimbo yekuwana nzira, kugovera nguva shoma yekufambisa kuti inonoke zviteshi zvisina waya, pane kugovera nguva zvakaenzana pakati pese. zviteshi);
    • Added mechanism"devlink hutano", iyo inopa zviziviso kana matambudziko aitika netiweki interface;
  • Memory uye system masevhisi
    • Implemented chengetedzo yechiratidzo inobvumira kushandiswa zvakare kwePID. Semuenzaniso, pakufona uraya kare, mamiriro ezvinhu anogona kuitika apo, pakarepo mushure mekutumira chiratidzo, chinangwa chePID chinogona kusunungurwa nekuda kwekugadziriswa kwekugadzirisa uye kugarwa neimwe nzira, uye chiratidzo chinoguma chapfuudzwa kune imwe nzira. Kuti ubvise mamiriro akadai, itsva system call pidfd_send_signal yawedzerwa, iyo inoshandisa faira descriptors kubva /proc/pid kuve nechokwadi chakagadzikana maitiro ekusunga. Kunyange kana PID yakashandiswa zvakare panguva yekugadzirisa kufona kwehurongwa, iyo tsanangudzo yefaira haizoshanduki uye inogona kushandiswa zvakachengeteka kutumira chiratidzo kune iyo nzira;
    • Added kugona kushandisa zvimiro zvendangariro zvigadziriso (inoramba ichiyeuka, semuenzaniso NVDIMMs) se RAM. Kusvika ikozvino, kernel yakatsigira michina yakadai semidziyo yekuchengetedza, asi ikozvino inogona kushandiswa sekuwedzera RAM. Iyo ficha inoitwa mukupindura zvishuwo zvevashandisi vanoda kushivirira nekuita lag uye vanoda kushandisa iyo yemuno Linux kernel memory management API pachinzvimbo chekushandisa iripo mushandisi-nzvimbo yendangariro yekugovera masisitimu anomhanya pamusoro pemmap yedax. file;
    • Yakawedzera itsva CPU idle handler (cpuidle, inosarudza riini CPU inogona kuiswa mune yakadzika magetsi ekuchengetedza modes; iyo yakadzika iyo modhi, iyo yakakura kuchengetedza, asiwo iyo yakareba inotora kubuda iyo mode) - TEO (Timer Events Oriented Gavhuna. ) Kusvika ikozvino, vaviri vanobata cpuidle vakatsanangurwa - "menu" uye "manera", akasiyana mune heuristics. Iyo "menu" mugadziri ane matambudziko anozivikanwa nekuita sarudzo dzeheuristic, kubvisa izvo zvakasarudzwa kugadzirira mugadziri mutsva. TEO inomisikidzwa seimwe nzira kune "menu" inobata, ichibvumira kushanda kwepamusoro uku ichichengetedza chiyero chakafanana chekushandisa simba.
      Unogona kushandura mugadziri mutsva uchishandisa boot parameter "cpuidle.governor=teo";

    • Sechikamu chebasa rekubvisa matambudziko e2038, zvichikonzerwa nekufashukira kwemhando ye32-bit time_t, inosanganisira nharembozha dzinopa 32-bit time counters ye64-bit architectures. Nekuda kweizvozvo, iyo 64-bit time_t dhizaini ikozvino inogona kushandiswa pane ese ezvivakwa. Shanduko dzakafanana dzakaitwa zvakare mune network subsystem yesarudzo timestamp network sockets;
    • Muiyo inopisa patching system yepakati (live patching) akawedzera "Atomic Replace" chimiro chekushandisa atomically shanduko yekuchinja kune imwechete basa. Ichi chimiro chinokutendera iwe kugovera zvigamba zvipfupi zvinofukidza akati wandei shanduko kamwechete, pachinzvimbo cheiyo nhanho-ne-nhanho application yezvigamba mhenyu mune yakanyatso kutsanangurwa kurongeka, izvo zvakaoma chaizvo kuchengetedza. Nepo kare shanduko imwe neimwe yaitevera yaifanira kunge yakavakirwa pamamiriro ebasa mushure mekuchinja kwekupedzisira, zvino zvinogoneka kuparadzira shanduko dzinoverengeka dzakasungirirwa kune imwe yekutanga nyika kamwechete (kureva, vachengeti vanogona kuchengetedza imwe yakasanganiswa chigamba chinoenderana neiyo base kernel pachinzvimbo. yeketani yezvigamba zvinoenderana nemumwe);
    • Kuziviswa yakadzikira tsigiro yea.out inogoneka faira fomati uye
      deleted kodhi yekugadzira mafaera epakati mune a.out fomati, iri munzvimbo yakasiiwa. Iyo a.out fomati haina kushandiswa paLinux masisitimu kwenguva yakareba, uye kugadzirwa kwemafaera e.out kwagara kusingatsigirwe nemidziyo yemazuva ano mukumisikidzwa kweLinux. Pamusoro pezvo, iyo loader yea.out mafaera inogona kuitwa zvachose munzvimbo yemushandisi;

    • Iko kugona kuona uye kubvisa kodhi isina kushandiswa yakawedzerwa kune iyo BPF chirongwa chekuongorora maitiro. Iyo kernel inosanganisirawo zvigamba zvine spinlock tsigiro yeiyo BPF subsystem, ichipa humwe hunyanzvi hwekutarisira kuenzanirana kwekuita kweBPF zvirongwa;
  • Zvigadzirwa
    • MuNouveau driver akawedzera tsigiro yeheterogeneous memory manejimendi, ichibvumira iyo CPU neGPU kuwana yakajairwa yakawiriraniswa nzvimbo dzekurangarira. Iyo yakagovaniswa virtual memory system (SVM, yakagovaniswa virtual memory) inoshandiswa pahwaro hweHMM (Heterogeneous memory management) subsystem, iyo inobvumira kushandiswa kwemidziyo ine yavo yekurangarira manejimendi unit (MMU, memory management unit), inogona kuwana. ndangariro huru. Kunyanya, uchishandisa HMM, unogona kuronga nzvimbo yekero yakagovaniswa pakati peGPU neCPU, umo iyo GPU inogona kuwana iyo huru yekurangarira maitiro. Tsigiro yeSVM parizvino inogoneswa chete kuPascal mhuri maGPU, kunyangwe rutsigiro rwunopihwa Volta neTuring GPU zvakare. Uyezve, muNouveau akawedzera ioctl itsva yekudzora kutama kwenzvimbo dzekurangarira kuGPU ndangariro;
    • MuIntel DRM mutyairi weGPU Skylake uye gare gare (gen9+) inosanganisirwa Nekumisikidza, fastboot mode inobvisa zvisina kufanira modhi shanduko panguva yebhoti. Added nyowani zviziviso zvemudziyo zvinoenderana neCoffelake neIce Lake microarchitectures. Zvemachipisi eCoffelake akawedzera GVT rutsigiro (GPU virtualization) ZvemaGPU chaiwo itwa VFIO EDID rutsigiro. Kune LCD mapaneru MIPI/DSI akawedzera rutsigiro rwe ACPI/PMIC zvinhu. Implemented mitsva yeTV modes 1080p30/50/60 TV;
    • Yakawedzera rutsigiro rweVega10/20 BACO GPU kumutyairi weamdgpu. Yakaitwa Vega 10/20 simba manejimendi uye Vega 10 inotonhorera control matafura. Added interface yekutarisira zvinorongeka zvinovimbika kudzivirira deadlocks;
    • Added DRM/KMS mutyairi wescreen accelerators ARM Komeda (Mali D71);
    • Yakawedzerwa rutsigiro rweToppoly TPG110, Sitronix ST7701, PDA 91-00156-A0, LeMaker BL035-RGB-002 3.5 uye Kingdisplay kd097d04 screen panels;
    • Yakawedzerwa rutsigiro rweRockchip RK3328, Cirrus Logic CS4341 uye CS35L36, MediaTek MT6358, Qualcomm WCD9335 uye Ingenic JZ4725B audio codecs, pamwe neMediatek MT8183 audio platform;
    • Yakawedzerwa rutsigiro rweNAND controllers Flash STMicroelectronics FMC2, Amlogic Meson;
    • Yakawedzera accelerator rutsigiro rweHabana AI hardware masisitimu;
    • Yakawedzerwa rutsigiro rweNXP ENETC gigabit Ethernet controllers uye MediaTek MT7603E (PCIe) uye MT76x8 isina waya nzvimbo.

Panguva imwecheteyo, iyo Latin America Yemahara Software Foundation akaumbwa
sarudzo zvachose yemahara kernel 5.1 - Linux-mahara 5.1-gnu, kucheneswa kwe firmware uye zvinhu zvemutyairi zvine zvikamu zvisingabhadharwi kana zvikamu zvekodhi, chiyero chazvo chinogumira nemuiti. Mukuburitswa kutsva, blob kurodha kwakadzimwa mumt7603 uye goya driver. Yakagadziridzwa blob yekuchenesa kodhi mumadhiraivha uye subsystems wilc1000, iwlwifi, soc-acpi-intel, brcmfmac, mwifiex, btmrvl, btmtk uye touchscreen_dmi. Blob yekuchenesa mulantiq xrx200 firmware loader yakamiswa nekuda kwekubviswa kwayo kubva kukernel.

Source: opennet.ru

Voeg