Linux 5.6 kernel kuburitswa

Mushure memwedzi miviri yebudiriro, Linus Torvalds kuunzwa kernel release Linux 5.6. Pakati pekuchinja kunonyanya kukosha: kubatanidzwa kweWireGuard VPN interface, kutsigirwa kwe USB4, mazita enguva, kugona kugadzira TCP congestion handlers uchishandisa BPF, yekutanga rutsigiro rweMultiPath TCP, kubvisa kernel yedambudziko ra2038, iyo "bootconfig" maitiro. , ZoneFS.

Iyo vhezheni nyowani inosanganisira gumi nemashanu,13702 zvigadziriso kubva 1810 vanogadzira,
saizi yechigamba - 40 MB (shanduko dzakakanganisa 11577 mafaera, yakawedzera 610012 mitsara yekodhi,
294828 mitsetse yakabviswa). Inenge 45% yezvose zvakaratidzwa mu5.6
shanduko dzine hukama nevatyairi vemidziyo, ingangoita 15% yekuchinja ndeye
mafungiro ekuvandudza kodhi yakananga kune hardware architectures, 12%
yakabatana neyetiweki stack, 4% ine mafaera masisitimu uye 3% neyemukati
kernel subsystems.

chikuru zvitsva:

  • Network subsystem
    • Added kushandiswa kweVPN interface WireGuard, iyo inoshandiswa maererano nemaitiro emazuva ano ekuvharidzira (ChaCha20, Poly1305, Curve25519, BLAKE2s), iri nyore kushandisa, isina matambudziko, yakazviratidza muhuwandu hwekushanda kukuru uye inopa kushanda kwakanyanya (3,9 nguva nekukurumidza kupfuura OpenVPN maererano nemashoko. ye throughput). WireGuard inoshandisa iyo pfungwa ye encryption kiyi nzira, iyo inosanganisira kubatanidza yakavanzika kiyi kune yega yega network interface uye kuishandisa kusunga makiyi eruzhinji. Makiyi eruzhinji anotsinhaniswa kuti amise chinongedzo nenzira yakafanana kune SSH. Cryptographic primitives inodiwa kuti WireGuard ishande yakanga kutakurwa kubva muraibhurari zen'e sechikamu chechiyero Crypto API uye zvaisanganisira mukatikati 5.5.
    • Yakatanga kubatanidzwa kwezvikamu zvakakosha kutsigira MPTCP (MultiPath TCP), kuwedzera kweTCP protocol yekuronga kushanda kweTCP yekubatanidza nekuendeswa kwemapakiti panguva imwe chete munzira dzakawanda kuburikidza netiweki yakasiyana-siyana inosanganiswa nekero dzakasiyana dzeIP. Zvemashandisirwo etiweki, kubatana kwakadai kwakasanganiswa kunoratidzika senge yenguva dzose TCP yekubatanidza, uye yese inoyerera yekuparadzanisa mantiki inoitwa neMPTCP. Multipath TCP inogona kushandiswa kune zvese kuwedzera throughput uye kuwedzera kuvimbika. Semuenzaniso, MPTCP inogona kushandiswa kuronga kufambiswa kwedata pa smartphone uchishandisa WiFi uye 4G zvinongedzo panguva imwe chete, kana kuderedza mutengo nekubatanidza sevha uchishandisa akati wandei akachipa link pane imwe inodhura.
    • Added rutsigiro rwetiweki queue processing discipline sch_ets (Kuwedzeredzwa Kwekutapurirana Sarudzo, IEEE 802.1Qaz), iyo inopa kugona kugovera bandwidth pakati pemakirasi akasiyana etraffic. Kana mutoro pane imwe kirasi yemotokari iri pasi peiyo yakagoverwa bandwidth, ipapo ETS inobvumira mamwe makirasi emigwagwa kushandisa inowanikwa (isina kushandiswa) bandwidth. Qdisc sch_ets inogadziriswa sePRIO chirango uye inoshandisa traffic makirasi kutsanangura yakasimba uye yakagovaniswa bandwidth miganho. ETS inoshanda semusanganiswa wezvidzidzo PASI ΠΈ DRR - kana paine makirasi akaganhurirwa emigwagwa, PRIO inoshandiswa, asi kana pasina traffic mumutsara, inoshanda seDRR.
    • Yakawedzera rudzi rutsva rwezvirongwa zveBPF BPF_PROG_TYPE_STRUCT_OPS, iyo inokutendera kuti ushandise kernel function handlers kuburikidza neBPF. Parizvino, chimiro ichi chinogona kutoshandiswa kuita TCP congestion control algorithms nenzira yeBPF zvirongwa. Somuenzaniso yakakurudzirwa BPF chirongwa chine algorithm kuita DCTCP.
    • Kugamuchirwa mukati mepakati change, maturusi ekushandura ethtool ne ioctl() yekushandisa netlink interface. Iyo itsva interface inoita kuti zvive nyore kuwedzera maextension, inovandudza kukanganisa kubata, inobvumira zviziviso kuti zvitumirwe kana nyika yachinja, inorerutsa kudyidzana pakati pe kernel nenzvimbo yemushandisi, uye inoderedza nhamba yemazita ane mazita anoda kuwiriraniswa.
    • Kuwedzerwa kuisirwa kweiyo FQ-PIE (Flow Queue PIE) network queue management algorithm, ine chinangwa chekudzikisa kusakanganiswa kwepakati pekiti buffering pamupendero wetiweki michina (bufferbloat). FQ-PIE inoratidza kushanda kwepamusoro kana ichishandiswa mumasitimu ane cable modem.
  • Disk Subsystem, I/O uye File Systems
    • YeBtrfs faira system akawedzera asynchronous kuitiswa kweDISCARD mashandiro (kumaka zvidhinha zvakasunungurwa izvo zvisingachadi kuchengetwa mumuviri). Pakutanga, DISCARD mashandiro akaitwa synchronously, izvo zvinogona kutungamira mukuderedzwa kwekuita nekuda kwemadhiraivha akamirira mirairo inoenderana kuti ipedze. Kuitwa kweAsynchronous kunoita kuti usamirire kuti drive ipedze DISCARD uye kuita oparesheni iyi kumashure.
    • Mu XFS wakaita Kuchenesa kodhi yaishandisa yekare 32-bit time counters (iyo time_t type yakatsiviwa netime64_t), zvichitungamira kudambudziko ra2038. Yakagadziriswa zvikanganiso uye huwori hwekurangarira hwakaitika pa32-bit mapuratifomu. Iyo kodhi yakagadziridzwa kuti ishande neakawedzera hunhu.
    • Ku ext4 faira system kuunzwa Performance optimizations ine chekuita nekubata inode kukiya panguva yekuverenga nekunyora mashandiro. Kuvandudzwa kwekunyorazve kuita muDirect I/O modhi. Kurerutsa kuongororwa kwematambudziko, yekutanga uye yekupedzisira kukanganisa makodhi anochengetwa mu superblock.
    • PaF2FS faira system itwa kugona kuchengetedza data mune yakamanikidzwa fomu. Kune yega faira kana dhairekitori, kudzvanya kunogona kugoneswa uchishandisa murairo "chattr +c faira" kana "chattr +c dir; bata dir/faira". Kumanikidza chikamu chose, unogona kushandisa "-o compress_extension=ext" sarudzo mugomo rekushandisa.
    • Iyo kernel inosanganisira faira system ZoneFS, iyo inorerutsa basa rakaderera nemidziyo yekuchengetera nzvimbo. Zoned madhiraivha anoreva midziyo pane yakaoma magineti disks kana NVMe SSDs, nzvimbo yekuchengetera iyo yakakamurwa kuita mazoni anoumba mapoka ezvivharo kana zvikamu, umo chete sequential kuwedzera kwedata kunobvumidzwa, kuvandudza iro rose boka remabhuraki. FS ZoneFS yakagadziridzwa neWestern Digital uye inobatanidza nzvimbo yega yega mudhiraivha nefaira rakasiyana rinogona kushandiswa kuchengetedza data mune mbishi modhi pasina kunyengedza pachikamu uye block level, i.e. Inobvumira maapuro kuti ashandise iyo faira API pachinzvimbo chekuwana zvakananga mudziyo wekuvhara uchishandisa ioctl.
    • MuNFS, kukwidza zvikamu pamusoro peUDP kunovharwa nekusarudzika. Yakawedzerwa rutsigiro rwekukwanisa kukopa mafaera zvakananga pakati pemaseva, anotsanangurwa muNFS 4.2 yakatarwa. Yakawedzera imwe nyowani yegomo sarudzo "softreval", iyo inobvumira cached hunhu kukosha kushandiswa kana server yakundikana. Semuenzaniso, kana uchitsanangura sarudzo iyi, mushure mekunge sevha isipo, zvinoramba zvichikwanisika kufamba munzira dziri muchikamu cheNFS uye ruzivo rwekuwana rwakagara mu cache.
    • Kuitwa optimization yekushanda kwefs-verity mechanism, inoshandiswa kutarisa kuvimbika uye kuvimbiswa kwemafaira ega. Kuwedzera kutevedzana kuverenga nekukurumidza nekuda kwekushandiswa kwemuti weMerkle hash. Kuita kweFS_IOC_ENABLE_VERITY kwakagadziridzwa kana pasina data mucache (yekutanga kuverenga mapeji ane data kwaiswa).
  • Virtualization uye Chengetedzo
    • Iko kugona kudzima iyo SELinux module uchimhanya kwakadzikiswa, uye kuburitsa yakatoitwa SELinux kucharambidzwa mune ramangwana. Kudzima SELinux iwe uchafanirwa kupfuudza "selinux = 0" parameter pane kernel command line.
    • Added tsigiro yenzvimbo dzemazita yenguva (nguva yemazita), ichikubvumidza kuti usunge mamiriro eiyo system wachi kumudziyo (CLOCK_REALTIME,
      CLOCK_MONOTONIC, CLOCK_BOOTTIME), shandisa yako nguva mumudziyo uye, paunenge uchiendesa mudziyo kune mumwe mugadziri, ita shuwa kuti CLOCK_MONOTONIC uye CLOCK_BOOTTIME kuverenga kunoramba kusingachinjike (funga nezvenguva mushure mekurodha, kana kana usinga fungidzire kuve mukurara mode. )

    • Iyo /dev/random blocking pool yabviswa. Maitiro e / dev / asina kujairika akafanana ne / dev / urandom maererano nekudzivirira entropy kuvharira mushure mekutanga dziva.
    • Iyo yepakati kernel inosanganisira mutyairi anobvumira vashanyi masisitimu anomhanyisa VirtualBox kukwidza madhairekitori anotengeswa kunze neyakaunzwa nharaunda (VirtualBox Yakagoverwa Folder).
    • Seti yezvigamba yakawedzerwa kune iyo BPF subsystem (BPF dispatcher), kana uchishandisa iyo Retpoline michina yekudzivirira kubva kuSpecter V2 kirasi kurwiswa, inokutendera iwe kuti uwedzere kugona kwekufonera BPF zvirongwa kana zviitiko zvine chekuita nazvo zvikaitika (semuenzaniso, zvinoita kuti ikurumidze kushevedzwa kwevanobata XDP kana network packet inosvika).
    • Akawedzera mutyairi kutsigira TEE (Trusted Execution Environment) yakavakirwa mu AMD APUs.
  • Memory uye system masevhisi
    • BPF yakawedzera tsigiro yemabasa epasi rose. Budiriro iri kuitwa sechikamu chedanho rekuwedzera rutsigiro kumaraibhurari emabasa anogona kuverengerwa muzvirongwa zveBPF. Nhanho inotevera ichave yekutsigira mawedzero ane simba anobvumira mabasa epasi rose kuti atakurwe, kusanganisira kutsiva mabasa epasirese aripo paanenge achishandiswa. Iyo BPF subsystem inowedzerawo rutsigiro rwekusiyana kwemepu kushanda (inoshandiswa kuchengetedza inoenderera data), iyo inotsigira kuurayiwa mubatch mode.
    • Wedzera Iyo "cpu_cooling" mudziyo unobvumidza iwe kutonhodza CPU yakanyanyisa nekuiisa munzvimbo isina basa kwenguva pfupi.
    • Yakawedzera system call openat2(), iyo inopa seti yemamwe mireza kudzikamisa faira nzira kugadzirisa (kurambidzwa kuyambuka mapoinzi emakomo, maratidziro ekubatanidza, mashiripiti links (/proc/PID/fd), "../" zvikamu).
    • Kumasisitimu akasiyana-siyana anoenderana nehukuru.LITTLE architecture, achibatanidza simba uye risinganyanyi kushanda nesimba-rinoshanda CPU cores mune imwe chip, iyo uclamp_min parameter inoiswa pakuita-chaiyo-nguva mabasa (buda mu kernel 5.3 pane nzira yekuchengetedza mutoro). Iyi parameter inova nechokwadi chekuti basa richaiswa neanoronga pane CPU musimboti ine kuita kwakakwana.
    • Iyo kernel inosunungurwa kubva matambudziko e2038. Akatsiva ekupedzisira asara ekubata, akashandisa iyo 32-bit (yakasaina int) type time_t ye epochal time counter, iyo, tichifunga nezve mushumo kubva 1970, inofanira kufashukira muna 2038.
    • Kuenderera mberi nekuvandudzwa kweasynchronous I/O interface io_uring, umo akapa tsigiro yemashandiro matsva: IORING_OP_FALLOCATE (kuchengetera nzvimbo dzisina chinhu), IORING_OP_OPENAT,
      IORING_OP_OPENAT2,
      IORING_OP_CLOSE (kuvhura nekuvhara mafaira),
      IORING_OP_FILES_UPDATE (kuwedzera nekubvisa mafaera kubva kurondedzero yekuwana nekukurumidza),
      IORING_OP_STATX (chikumbiro cheruzivo rwefaira),
      IORING_OP_READ,
      IORING_OP_WRITE (analogues akarerutswa eIORING_OP_READV neIORING_OP_WRITEV),
      IORING_OP_FADVISE,
      IORING_OP_MADVISE (asynchronous variants of call posix_fadvise and madvise), IORING_OP_SEND,
      IORING_OP_RECV (kutumira uye kugamuchira network data),
      IORING_OP_EPOLL_CTL (ita mashandiro pane epoll faira descriptors).

    • Yakawedzera system call pidfd_getfd(), kubvumira maitiro ekudzoreredza faira descriptor yefaira rakavhurika kubva kune imwe maitiro.
    • Implemented iyo "bootconfig" michina, iyo inobvumira, kuwedzera kune yekuraira mitsetse sarudzo, kuona iyo parameter ye kernel kuburikidza nefaira rekuisa. Kuti uwedzere mafaira akadaro kune initramfs mufananidzo, iyo bootconfig utility inokurudzirwa. Iyi ficha inogona kushandiswa, semuenzaniso, kugadzirisa kprobes panguva yebhutsu.
    • Redesigned nzira yekumirira kunyora uye kuverenga data mumapombi asina kutaurwa. Shanduko iyi yakaita kuti zvikwanisike kukurumidzira mabasa akadai sekuungana kwakafanana kwemapurojekiti makuru. Nekudaro, optimization inogona kutungamira kune mamiriro enhangemutange muGNU gadzira nekuda kwebug mukuburitswa kwe4.2.1, iyo yakagadziriswa mushanduro 4.3.
    • Yakawedzera PR_SET_IO_FLUSHER mureza ku prctl(), iyo inogona kushandiswa kumaka-yemahara maitiro asingafanirwe kuve pasi pemiganhu kana sisitimu yadzikira mundangariro.
    • Zvichienderana neION ndangariro yekugovera sisitimu inoshandiswa mu Android, subsystem yakaitwa dma-buf mirwi, iyo inokutendera iwe kudzora kugoverwa kweDMA buffers yekugovana nzvimbo dzekurangarira pakati pevatyairi, maapplication uye akasiyana masisitimu.
  • Hardware architectures
    • Yakawedzerwa rutsigiro rwekuwedzera kweE0PD, iyo yakaonekwa muARMv8.5 uye inobvumira dziviriro kubva pakurwiswa kune chekuita nekufungidzira kuurayiwa kwemirairo paCPU. E0PD-yakavakirwa kudzivirira inoguma yakaderera pamusoro pane KPTI (Kernel Peji Tafura Isolation) kudzivirira.
    • Kune masisitimu akavakirwa paArMv8.5 dhizaini, tsigiro yekuraira kweRNG yakawedzerwa, ichipa mukana kune hardware pseudo-random nhamba jenareta. Mu kernel, rairo yeRNG inoshandiswa kugadzira entropy kana uchitanga kernel-yakapihwa pseudo-random nhamba jenareta.
    • Yakabviswa tsigiro yeMPX (Memory Protection Extensions) yakawedzerwa mukernel 3.19 uye inobvumidza iwe kuronga kutarisa kweanongedza kuti uone kuti miganhu yenzvimbo dzekurangarira inoremekedzwa. Iyi tekinoroji haina kushandiswa zvakanyanya mumakongiri uye yakabviswa kubva kuGCC.
    • Kune iyo RISC-V yekuvaka, tsigiro yeKASan (Kernel kero sanitizer) debugging chishandiso yaitwa, iyo inobatsira kuona zvikanganiso kana uchishanda nendangariro.
  • Zvigadzirwa
    • Rutsigiro rwekutsanangurwa rwakaitwa USB 4.0, iyo yakavakirwa paThunderbolt 3 protocol uye inopa throughput kusvika ku40 Gbps, ichiramba ichienderana neshure ne USB 2.0 uye USB 3.2. Nekuenzanisa ne Thunderbolt USB 4.0 interface inokutendera kuti utore mapuroteni akasiyana pamusoro petambo imwechete ine chinongedzo Type-C, kusanganisira PCIe, Display Port uye USB 3.x, pamwe nekushandiswa kwepurogiramu yeprotocol, semuenzaniso, yekuronga network links pakati pevatenzi. Kuitwa kwacho kunovaka pamutyairi weThunderbolt akatosanganisirwa muLinux kernel uye anoigadzirisa kuti ishande ne USB4-inoenderana mauto nemidziyo. Shanduko idzi dzinowedzerawo rutsigiro rweThunderbolt 3 zvishandiso kune software yekumisikidza yeConnection Manager, iyo ine basa rekugadzira tunnel dzekubatanidza akawanda maturusi kuburikidza nechinhu chimwe chete chekubatanidza.
    • Mune amdgpu mutyairi akawedzera tsigiro yekutanga yeHDCP 2.x (High-bandwidth Digital Content Protection) tekinoroji yekudzivirira. Yakawedzera tsigiro ye AMD Pollock ASIC chip yakavakirwa paRaven 2. Yakaita kugona kuseta zvakare GPU yemhuri yeRenoir neNavi.
    • DRM mutyairi weIntel vhidhiyo makadhi akawedzera DSI VDSC tsigiro yemachipisi yakavakirwa paIce Lake uye Tiger Lake microarchitecture, LMEM mmap (mudziyo ndangariro ndangariro) yaitwa, VBT (Vhidhiyo BIOS Tafura) parsing yakagadziridzwa, HDCP 2.2 rutsigiro rwakaitwa kuKofi Lake machipisi.
    • Basa rakaenderera mberi nekubatanidza amdkfd driver code (ye discrete GPUs, seFiji, Tonga, Polaris) nemutyairi weamdgpu.
    • Mutyairi we k10temp akagadziridzwazve, achiwedzera rutsigiro rwekutaridza magetsi uye ma paramita azvino e AMD Zen CPUs, pamwe neruzivo rwakawedzerwa kubva kune tembiricha sensors dzinoshandiswa muZen neZen 2 CPUs.
    • Munouveau driver akawedzera Tsigiro yeyakasimbiswa firmware yekurodha modhi yeNVIDIA GPUs yakavakirwa paTuring microarchitecture (GeForce RTX 2000), iyo yakaita kuti zvikwanise kugonesa rutsigiro rwe 3D kukwidziridzwa kwemakadhi aya (kurodha yepamutemo firmware ine NVIDIA siginecha yedhijitari inodiwa). Yakawedzera rutsigiro rweTU10x giraidhi injini. Matambudziko neHD Audio akagadziriswa.
    • Yakawedzerwa rutsigiro rwekudzvanya data kana ichifambiswa kuburikidza neDisplayPort MST (Multi-Stream Transport).
    • Akawedzera mutyairi mutsva "at11kΒ»yeQualcomm isina waya machipisi inotsigira 802.11ax.
      Mutyairi anobva pane mac80211 stack uye anotsigira nzvimbo yekuwana, nzvimbo yekushanda uye mesh network node modes.

    • Kuburikidza nesysfs, kuwana kuverengeka tembiricha sensor kuverenga kunoshandiswa pamazuva ano hard drive uye SSDs inopihwa.
    • Submitted shanduko dzakakosha kune ALSA sound system, ine chinangwa chekubvisa kodhi ye matambudziko e2038 (kudzivisa kushandiswa kwe 32-bit time_t type mu snd_pcm_mmap_status uye snd_pcm_mmap_control interfaces). Yakawedzera rutsigiro rwemaodhiyo macodecs matsva
      Qualcomm WCD9340/WCD9341, Realtek RT700, RT711, RT715, RT1308, Ingenic JZ4770.

    • Added vatyairi veLCD mapaneru Logic PD 28, Jimax8729d MIPI-DSI, igenic JZ4770, Sony acx424AKP, Leadtek LTK500HD1829, Xinpeng XPP055C272, AUO B116XAK01, Giant940B0
      BOE NV140FHM-N49,
      Satoz SAT050AT40H12R2,
      Sharp LS020B1DD01D.

    • Added rutsigiro rwemabhodhi eARM uye mapuratifomu eGen1 Amazon Echo (OMAP3630-based), Samsung Galaxy S III mini (GT-I8190), Allwinner Emlid Neutis, Libre Computer ALL-H3-IT, PineH64 Model B, Aibretech Amlogic GX PC,
      Armada SolidRun Clearfog GTR, NXPGateworks GW59xx,
      Tolino Shine 3 eBook muverengi,
      Embedded Artists COM (i.MX7ULP), SolidRun Clearfog CX/ITX uye HoneyComb (LX2160A), Google Coral Edge TPU (i.MX8MQ),
      Rockchip Radxa Dalang Carrier, Radxa Rock Pi N10, VMARC RK3399Pro SOM
      ST Ericsson HREF520, Inforce 6640, SC7180 IDP, Atmel/Microchip AM9X60 (ARM926 SoC, Kizboxmini), ST stm32mp15, AM3703/AM3715/DM3725, ST Ericsson ab8505, Unisoc SC9863comm SC7180comm SC4A. Yakawedzerwa rutsigiro rwePCIe controller inoshandiswa muRaspberry Pi XNUMX.

Panguva imwecheteyo, iyo Latin America Yemahara Software Foundation akaumbwa
sarudzo zvachose yemahara kernel 5.6 - Linux-mahara 5.6-gnu, kucheneswa kwe firmware uye zvinhu zvemutyairi zvine zvikamu zvisingabhadharwi kana zvikamu zvekodhi, chiyero chazvo chinogumira nemuiti. Kuburitswa kutsva kunodzima blob kurodha mumadhiraivha e AMD TEE, ATH11K uye Mediatek SCP. Yakagadziridzwa blob yekuchenesa kodhi mu AMD PSP, amdgpu uye nouveau madhiraivha uye subsystems.

Source: opennet.ru

Voeg