Linux 5.18 kernel release

Pagkatapos ng dalawang buwan ng pag-unlad, ipinakita ni Linus Torvalds ang paglabas ng Linux kernel 5.18. Kabilang sa mga pinaka-kapansin-pansing pagbabago: ang isang malaking paglilinis ng hindi na ginagamit na pag-andar ay isinagawa, ang Reiserfs FS ay idineklara na hindi na ginagamit, ang proseso ng pagsubaybay sa mga kaganapan ng user ay ipinatupad, ang suporta para sa mekanismo para sa pagharang sa mga pagsasamantala ng Intel IBT ay idinagdag, ang isang buffer overflow detection mode ay pinagana kapag gamit ang memcpy() function, isang mekanismo para sa pagsubaybay sa mga tawag sa function ng fprobe ay idinagdag, Ang pagganap ng task scheduler sa AMD Zen CPUs ay napabuti, isang driver para sa pamamahala ng Intel CPU functionality (SDS) ay isinama, ilang mga patch ay isinama para sa muling pagsasaayos ng mga file ng header, at ang paggamit ng pamantayang C11 ay naaprubahan.

Kasama sa bagong bersyon ang 16206 na pag-aayos mula sa 2127 developer (sa huling release ay mayroong 14203 na pag-aayos mula sa 1995 developer), ang laki ng patch ay 108 MB (ang mga pagbabago ay nakaapekto sa 14235 na file, 1340982 linya ng code ang idinagdag, 593836 na linya ang tinanggal). Humigit-kumulang 44% ng lahat ng mga pagbabagong ipinakilala sa 5.18 ay nauugnay sa mga driver ng device, humigit-kumulang 16% ng mga pagbabago ay nauugnay sa pag-update ng code na partikular sa mga arkitektura ng hardware, 11% ay nauugnay sa networking stack, 3% ay nauugnay sa mga file system, at 3% ay nauugnay sa panloob na mga subsystem ng kernel.

Mga pangunahing inobasyon sa kernel 5.18:

  • Disk subsystem, I/O at mga file system
    • Ang Btrfs file system ay nagdagdag ng suporta para sa pagpapasa ng naka-compress na data kapag nagsasagawa ng pagpapadala at pagtanggap ng mga operasyon. Dati, kapag gumagamit ng send/receive, na-decompress ng sending side ang data na nakaimbak sa compressed form, at ang receiving side ay muling nag-compress nito bago ito isulat. Sa 5.18 kernel, ang mga application ng user-space na gumagamit ng send/receive na mga tawag ay binigyan ng kakayahang magpadala ng naka-compress na data nang walang repackaging. Ang functionality ay ipinatupad salamat sa bagong ioctl operations BTRFS_IOC_ENCODED_READ at BTRFS_IOC_ENCODED_WRITE, na nagbibigay-daan sa iyong direktang magbasa at magsulat ng impormasyon sa mga lawak.

      Bilang karagdagan, pinapabuti ng Btrfs ang pagganap ng fsync. Nagdagdag ng kakayahang mag-deduplicate at magsagawa ng reflink (pag-clone ng metadata ng file sa pamamagitan ng paggawa ng link sa umiiral nang data nang hindi aktwal na kinokopya ito) para sa buong storage, hindi limitado sa mga mount point.

    • Sa Direct I/O mode, posibleng ma-access ang mga naka-encrypt na file kapag gumagamit ang fscrypt ng inline na pag-encrypt, kung saan ang mga operasyon ng pag-encrypt at pag-decryption ay ginagawa ng drive controller kaysa sa kernel. Sa regular na kernel encryption, ang pag-access sa mga naka-encrypt na file gamit ang Direct I/O ay imposible pa rin, dahil ang mga file ay na-access sa pamamagitan ng pag-bypass sa buffering mechanism sa kernel.
    • Ang NFS server ay may kasamang suporta para sa NFSv3 protocol bilang default, na ngayon ay hindi nangangailangan ng hiwalay na pagpapagana at magagamit kapag ang NFS ay pinagana sa pangkalahatan. Ang NFSv3 ay itinuturing na pangunahing at palaging sinusuportahang bersyon ng NFS, at ang suporta para sa NFSv2 ay maaaring ihinto sa hinaharap. Ang kahusayan ng pagbabasa ng mga nilalaman ng direktoryo ay makabuluhang napabuti.
    • Ang ReiserFS file system ay hindi na ginagamit at inaasahang aalisin sa 2025. Ang paghinto sa paggamit ng ReiserFS ay magbabawas sa pagsisikap na kinakailangan upang mapanatili ang mga pagbabago sa buong system ng file na nauugnay sa suporta para sa bagong API para sa pag-mount, iomap, at tomes.
    • Para sa F2FS file system, ang kakayahang mag-map ng mga user ID ng mga naka-mount na file system ay ipinatupad, na ginagamit upang ihambing ang mga file ng isang partikular na user sa isang naka-mount na foreign partition sa isa pang user sa kasalukuyang system.
    • Ang code para sa pagkalkula ng mga istatistika sa mga tagapangasiwa ng Device-mapper ay muling ginawa, na makabuluhang nagpabuti sa katumpakan ng accounting sa mga humahawak tulad ng dm-crypt.
    • Sinusuportahan na ngayon ng mga NVMe device ang 64-bit checksums para sa integrity checking.
    • Para sa exfat file system, isang bagong mount na opsyon na "keep_last_dots" ang iminungkahi, na hindi pinapagana ang pag-clear ng mga tuldok sa dulo ng pangalan ng file (sa Windows, ang mga tuldok sa dulo ng pangalan ng file ay tinanggal bilang default).
    • Pinapabuti ng EXT4 ang performance ng fast_commit mode at pinapataas ang scalability. Ang "mb_optimize_scan" na opsyon sa pag-mount, na nagbibigay-daan sa pagtaas ng pagganap sa mga kondisyon ng malaking file system fragmentation, ay inangkop para sa pagtatrabaho sa mga file na may mga lawak.
    • Ang suporta para sa mga write stream sa subsystem na sumusuporta sa mga block device ay hindi na ipinagpatuloy. Iminungkahi ang feature na ito para sa mga SSD, ngunit hindi laganap at kasalukuyang walang ginagamit na device na sumusuporta sa mode na ito at malabong lalabas ang mga ito sa hinaharap.
  • Mga serbisyo ng memorya at system
    • Nagsimula na ang pagsasama-sama ng isang hanay ng mga patch, na nagbibigay-daan upang makabuluhang bawasan ang oras ng muling pagtatayo ng kernel sa pamamagitan ng muling pagsasaayos ng hierarchy ng mga file ng header at pagbabawas ng bilang ng mga cross-dependencies. Kasama sa Kernel 5.18 ang mga patch na nag-o-optimize sa istruktura ng mga file ng header ng task scheduler (kernel/sched). Kung ikukumpara sa nakaraang release, ang pagkonsumo ng oras ng CPU kapag nag-assemble ng kernel/sched/ code ay nabawasan ng 61%, at ang aktwal na oras ay bumaba ng 3.9% (mula 2.95 hanggang 2.84 sec).
    • Pinapayagan ang kernel code na gamitin ang pamantayang C11, na inilathala noong 2011. Noong nakaraan, ang code na idinagdag sa kernel ay kailangang sumunod sa detalye ng ANSI C (C89), na nabuo noong 1989. Sa 5.18 kernel build script, ang 'β€”std=gnu89' na opsyon ay pinalitan ng 'β€”std=gnu11 -Wno-shift-negative-value'. Ang posibilidad ng paggamit ng pamantayan ng C17 ay isinasaalang-alang, ngunit sa kasong ito ay kinakailangan upang taasan ang minimum na suportadong bersyon ng GCC, habang ang pagsasama ng suporta ng C11 ay umaangkop sa kasalukuyang mga kinakailangan para sa bersyon ng GCC (5.1).
    • Pinahusay na pagganap ng pag-iskedyul ng gawain sa mga processor ng AMD na may Zen microarchitecture, na nagbibigay ng maramihang Last Level Cache (LLC) para sa bawat node na may mga lokal na memory channel. Ang bagong bersyon ay nag-aalis ng LLC imbalance sa pagitan ng mga NUMA node, na humantong sa isang makabuluhang pagtaas sa pagganap para sa ilang mga uri ng workload.
    • Ang mga tool para sa pagsubaybay sa mga application sa espasyo ng gumagamit ay pinalawak. Ang bagong bersyon ng kernel ay nagdaragdag ng kakayahan para sa mga proseso ng user na lumikha ng mga kaganapan ng User at magsulat ng data sa trace buffer, na maaaring matingnan sa pamamagitan ng karaniwang kernel tracing utilities tulad ng ftrace at perf. Ang user space trace event ay nakahiwalay sa kernel trace event. Maaaring tingnan ang status ng kaganapan sa pamamagitan ng file /sys/kernel/debug/tracing/user_events_status, at pagpaparehistro ng kaganapan at pag-record ng data sa pamamagitan ng file /sys/kernel/debug/tracing/user_events_data.
    • Nagdagdag ng mekanismo para sa pagsubaybay (probe) function na tawag - fprobe. Ang fprobe API ay batay sa ftrace, ngunit nalilimitahan lamang ng kakayahang mag-attach ng mga callback handler upang gumana ang mga entry point at function na mga exit point. Hindi tulad ng kprobes at kretprobes, pinapayagan ka ng bagong mekanismo na gumamit ng isang handler para sa ilang mga function nang sabay-sabay.
    • Ang suporta para sa mga mas lumang ARM processor (ARMv4 at ARMv5) na hindi nilagyan ng memory management unit (MMU) ay hindi na ipinagpatuloy. Ang suporta para sa ARMv7-M system na walang MMU ay pinananatili.
    • Ang suporta para sa RISC-like NDS32 architecture na ginagamit sa Andes Technologies processors ay hindi na ipinagpatuloy. Ang code ay tinanggal dahil sa kakulangan ng pagpapanatili at kakulangan ng demand para sa NDS32 na suporta sa pangunahing Linux kernel (ang natitirang mga gumagamit ay gumagamit ng mga espesyal na kernel build mula sa mga tagagawa ng hardware).
    • Bilang default, ang pagbuo ng kernel na may suporta para sa a.out executable file format ay hindi pinagana para sa alpha at m68k architecture, na patuloy na gumagamit ng format na ito. Malamang na ang suporta para sa legacy na a.out na format ay ganap na maalis sa kernel sa lalong madaling panahon. Ang mga planong alisin ang a.out na format ay tinalakay na mula noong 2019.
    • Ang arkitektura ng PA-RISC ay nagbibigay ng kaunting suporta para sa vDSO (virtual dynamic shared objects) na mekanismo, na nagbibigay ng limitadong hanay ng mga system call na available sa espasyo ng user nang walang paglipat ng konteksto. Ang suporta ng vDSO ay naging posible upang maipatupad ang kakayahang tumakbo gamit ang isang hindi maipapatupad na stack.
    • Nagdagdag ng suporta para sa mekanismo ng Intel HFI (Hardware Feedback Interface), na nagpapahintulot sa hardware na magpadala ng impormasyon sa kernel tungkol sa kasalukuyang pagganap at kahusayan ng enerhiya ng bawat CPU.
    • Nagdagdag ng driver para sa mekanismo ng Intel SDSi (Software-Defined Silicon), na nagpapahintulot sa iyo na kontrolin ang pagsasama ng mga karagdagang feature sa processor (halimbawa, mga espesyal na tagubilin at karagdagang memorya ng cache). Ang ideya ay ang mga chip ay maaaring ibigay sa mas mababang presyo na may mga advanced na pag-andar na naka-lock, na pagkatapos ay maaaring "mabili" at mga karagdagang kakayahan na i-activate nang walang pagpapalit ng hardware ng chip.
    • Ang driver ng amd_hsmp ay idinagdag upang suportahan ang interface ng AMD HSMP (Host System Management Port), na nagbibigay ng access sa mga function ng pamamahala ng processor sa pamamagitan ng isang hanay ng mga espesyal na rehistro na lumitaw sa mga processor ng AMD EPYC server simula sa henerasyon ng Fam19h. Halimbawa, sa pamamagitan ng HSMP maaari kang makakuha ng data sa paggamit ng kuryente at temperatura, magtakda ng mga limitasyon sa dalas, mag-activate ng iba't ibang mga mode ng pagpapahusay ng pagganap, at pamahalaan ang mga parameter ng memorya.
    • Ang io_uring asynchronous I/O interface ay nagpapatupad ng IORING_SETUP_SUBMIT_ALL na opsyon upang magrehistro ng set ng mga file descriptor sa isang ring buffer, at ang IORING_OP_MSG_RING operation upang magpadala ng signal mula sa isang ring buffer patungo sa isa pang ring buffer.
    • Ang mekanismo ng DAMOS (Data Access Monitoring-based Operation Schemes), na nagpapahintulot sa memorya na mailabas na isinasaalang-alang ang dalas ng pag-access sa memorya, ay nagpalawak ng mga kakayahan para sa pagsubaybay sa mga operasyon ng memorya mula sa espasyo ng gumagamit.
    • Ang ikatlong serye ng mga patch ay isinama sa pagpapatupad ng konsepto ng mga page folio, na kahawig ng mga compound page, ngunit nagpahusay ng semantika at mas malinaw na organisasyon ng trabaho. Ang paggamit ng mga tomes ay nagbibigay-daan sa iyo upang mapabilis ang pamamahala ng memorya sa ilang mga kernel subsystem. Sa mga iminungkahing patch, isinalin sa mga folio ang internal memory management function, kabilang ang mga variation ng get_user_pages() function. Nagbigay ng suporta para sa paglikha ng malalaking volume sa read-ahead na code.
    • Sinusuportahan na ngayon ng sistema ng pagpupulong ang mga variable ng kapaligiran ng USERCFLAGS at USERLDFLAGS, kung saan maaari kang magpasa ng mga karagdagang flag sa compiler at linker.
    • Sa subsystem ng eBPF, ang mekanismo ng BTF (BPF Type Format), na nagbibigay ng impormasyon sa pagsusuri ng uri sa pseudocode ng BPF, ay nagbibigay ng kakayahang magdagdag ng mga anotasyon sa mga variable na tumutukoy sa mga lugar ng memorya sa espasyo ng user. Tinutulungan ng mga anotasyon ang sistema ng pag-verify ng BPF code na mas mahusay na makilala at ma-verify ang mga access sa memorya.
    • Ang isang bagong handler ng memory allocation para sa pag-iimbak ng mga naka-load na BPF program ay iminungkahi, na nagbibigay-daan sa mas mahusay na paggamit ng memorya sa mga sitwasyon kung saan ang isang malaking bilang ng mga BPF program ay na-load.
    • Ang bandila ng MADV_DONTNEED_LOCKED ay idinagdag sa madvise() system call, na nagbibigay ng mga tool para sa pag-optimize ng pamamahala ng memorya ng proseso, na umaakma sa umiiral na bandila ng MADV_DONTNEED, kung saan maaaring ipaalam sa kernel nang maaga ang tungkol sa paparating na paglabas ng isang memory block, i.e. na ang block na ito ay hindi na kailangan at maaaring gamitin ng kernel. Hindi tulad ng MADV_DONTNEED, ang paggamit ng bandila ng MADV_DONTNEED_LOCKED ay pinahihintulutan para sa mga pahina ng memorya na naka-pin sa RAM, na, kapag tinawag ang madvise, ay pinaalis nang hindi binabago ang kanilang naka-pin na katayuan at, sa kaganapan ng isang kasunod na pag-access sa block at pagbuo ng isang "pahina kasalanan," ay ibinalik na may pagkakatali na napanatili. Bukod pa rito, may idinagdag na pagbabago upang payagan ang MADV_DONTNEED flag na magamit sa malalaking memory page sa HugeTLB.
  • Virtualization at Seguridad
    • Para sa arkitektura ng x86, idinagdag ang suporta para sa mekanismo ng proteksyon ng daloy ng command ng Intel IBT (Indirect Branch Tracking), na pumipigil sa paggamit ng mga diskarte sa pagsasamantala sa pagtatayo gamit ang mga diskarte sa pagprograma na nakatuon sa pagbalik (ROP, Return-Oriented Programming), kung saan ang pagsasamantala ay nabuo sa anyo ng isang kadena ng mga tawag na mayroon na sa memorya ng mga piraso ng mga tagubilin sa makina na nagtatapos sa isang control return instruction (bilang panuntunan, ito ang mga dulo ng mga function). Ang kakanyahan ng ipinatupad na paraan ng proteksyon ay upang harangan ang mga hindi direktang paglipat sa katawan ng isang function sa pamamagitan ng pagdaragdag ng isang espesyal na pagtuturo ng ENDBR sa simula ng pag-andar at pinapayagan ang pagpapatupad ng isang hindi direktang paglipat lamang sa kaso ng isang paglipat sa pagtuturo na ito (isang hindi direktang Ang tawag sa pamamagitan ng JMP at ang TAWAG ay dapat palaging nasa pagtuturo ng ENDBR, na nakalagay sa pinakasimulang mga function).
    • Pinagana ang mas mahigpit na pagsusuri ng mga hangganan ng buffer sa memcpy(), memmove() at memset() function, na ginagawa sa oras ng pag-compile kapag naka-enable ang CONFIG_FORTIFY_SOURCE mode. Ang idinagdag na pagbabago ay nagmumula sa pagsuri kung ang mga elemento ng mga istruktura na alam ang laki ay lampas sa mga hangganan. Ito ay nabanggit na ang ipinatupad na tampok ay magbibigay-daan sa pagharang sa lahat ng memcpy() na nauugnay sa kernel buffer overflows na natukoy sa hindi bababa sa huling tatlong taon.
    • Idinagdag ang pangalawang bahagi ng code para sa na-update na pagpapatupad ng RDRAND pseudo-random number generator, na responsable para sa pagpapatakbo ng /dev/random at /dev/urandom device. Ang bagong pagpapatupad ay kapansin-pansin para sa pag-iisa ng operasyon ng /dev/random at /dev/urandom, pagdaragdag ng proteksyon laban sa paglitaw ng mga duplicate sa stream ng mga random na numero kapag nagsisimula ng mga virtual machine, at paglipat sa paggamit ng BLAKE2s hash function sa halip na SHA1 para sa mga operasyon ng paghahalo ng entropy. Pinahusay ng pagbabago ang seguridad ng pseudo-random number generator sa pamamagitan ng pag-aalis ng problemang SHA1 algorithm at pag-aalis ng overwriting ng RNG initialization vector. Dahil ang BLAKE2s algorithm ay mas mataas kaysa sa SHA1 sa pagganap, ang paggamit nito ay nagkaroon din ng positibong epekto sa pagganap.
    • Para sa arkitektura ng ARM64, idinagdag ang suporta para sa isang bagong algorithm ng pagpapatunay ng pointer - "QARMA3", na mas mabilis kaysa sa algorithm ng QARMA habang pinapanatili ang wastong antas ng seguridad. Binibigyang-daan ka ng teknolohiya na gumamit ng mga espesyal na tagubilin ng ARM64 upang i-verify ang mga return address gamit ang mga digital na lagda na nakaimbak sa hindi nagamit na mga upper bit ng pointer mismo.
    • Para sa arkitektura ng ARM64, ipinatupad ang suporta para sa pagpupulong na may kasamang mode ng proteksyon sa GCC 12 laban sa pag-overwrite sa return address mula sa isang function kung sakaling magkaroon ng buffer overflow sa stack. Ang esensya ng proteksyon ay i-save ang return address sa isang hiwalay na "shadow" stack pagkatapos ilipat ang kontrol sa isang function at makuha ang address na ito bago lumabas sa function.
    • Nagdagdag ng bagong keyring - "machine", na naglalaman ng mga key ng may-ari ng system (MOK, Machine Owner Keys), na sinusuportahan sa shim bootloader. Ang mga key na ito ay maaaring gamitin sa digitally sign kernel component na na-load sa isang post-boot stage (halimbawa, kernel modules).
    • Inalis ang suporta para sa mga asymmetric na pribadong key para sa mga TPM, na inaalok sa isang legacy na bersyon ng TPM, ay may alam na mga isyu sa seguridad, at hindi malawakang pinagtibay sa pagsasanay.
    • Nagdagdag ng proteksyon ng data na may uri na size_t mula sa mga overflow ng integer. Kasama sa code ang mga handler na size_mul(), size_add() at size_sub(), na nagbibigay-daan sa iyong ligtas na magparami, magdagdag at magbawas ng mga laki na may uri ng size_t.
    • Kapag binubuo ang kernel, ang mga flag na "-Warray-bounds" at "-Wzero-length-bounds" ay pinagana, na nagpapakita ng mga babala kapag lumampas ang index sa hangganan ng array at kapag ginamit ang mga zero-length na array.
    • Ang virtio-crypto device ay nagdagdag ng suporta para sa pag-encrypt gamit ang RSA algorithm.
  • Subsystem ng network
    • Sa pagpapatupad ng mga network bridge, ang suporta para sa port binding mode (locked mode) ay idinagdag, kung saan ang user ay maaaring magpadala ng trapiko sa pamamagitan ng port mula lamang sa isang awtorisadong MAC address. Ang kakayahang gumamit ng ilang mga istraktura upang suriin ang estado ng protocol ng STP (Spanning Tree Protocol) ay naidagdag din. Dati, ang mga VLAN ay maaari lamang imapa nang direkta sa STP (1:1), na ang bawat VLAN ay pinamamahalaan nang hiwalay. Ang bagong bersyon ay nagdaragdag ng mst_enable na parameter, kapag pinagana, ang estado ng mga VLAN ay kinokontrol ng MST (Multiple Spanning Trees) na module at ang pagbubuklod ng mga VLAN ay maaaring tumugma sa M:N na modelo.
    • Nagpatuloy ang trabaho sa pagsasama ng mga tool sa network stack upang subaybayan ang mga dahilan ng pag-drop ng mga packet (mga reason code). Ang dahilan ng code ay ipinadala kapag ang memorya na nauugnay sa packet ay napalaya at nagbibigay-daan para sa mga sitwasyon tulad ng packet discard dahil sa mga error sa header, rp_filter spoofing detection, invalid checksum, out of memory, IPSec XFRM rules triggered, invalid sequence number TCP, atbp.
    • Posibleng maglipat ng mga network packet mula sa mga BPF program na inilunsad mula sa user space sa BPF_PROG_RUN mode, kung saan ang mga BPF program ay isinasagawa sa kernel, ngunit ibalik ang resulta sa user space. Ang mga packet ay ipinapadala gamit ang XDP (eXpress Data Path) subsystem. Sinusuportahan ang mode ng pagpoproseso ng live na packet, kung saan ang processor ng XDP ay maaaring mag-redirect ng mga network packet sa mabilisang papunta sa network stack o sa iba pang mga device. Posible ring lumikha ng mga software generator ng panlabas na trapiko o palitan ang mga frame ng network sa network stack.
    • Para sa mga programa ng BPF na naka-attach sa mga network cgroup, ang mga function ng helper ay iminungkahi na tahasang itakda ang return value ng mga system call, na ginagawang posible na makapaghatid ng mas kumpletong impormasyon tungkol sa mga dahilan ng pagharang ng isang system call.
    • Ang subsystem ng XDP (eXpress Data Path) ay nagdagdag ng suporta para sa mga fragmented na packet na inilagay sa maraming buffer, na nagbibigay-daan sa iyong iproseso ang mga Jumbo frame sa XDP at gamitin ang TSO/GRO (TCP Segmentation Offload/Generic Receive Offload) para sa XDP_REDIRECT.
    • Ang proseso ng pagtanggal ng mga namespace ng network ay lubos na pinabilis, na hinihiling sa ilang malalaking system na may malaking dami ng trapiko.
  • ΠžΠ±ΠΎΡ€ΡƒΠ΄ΠΎΠ²Π°Π½ΠΈΠ΅
    • Ang amdgpu driver bilang default ay kinabibilangan ng FreeSync adaptive synchronization technology, na nagbibigay-daan sa iyong isaayos ang refresh rate ng impormasyon sa screen, na tinitiyak ang makinis at walang luhang mga larawan habang naglalaro at nanonood ng mga video. Ang suporta sa Aldebaran GPU ay inihayag bilang stable.
    • Ang i915 driver ay nagdaragdag ng suporta para sa Intel Alderlake N chips at Intel DG2-G12 discrete graphics card (Arc Alchemist).
    • Ang nouveau driver ay nagbibigay ng suporta para sa mas mataas na bitrate para sa DP/eDP interface at suporta para sa lttprs (Link-Training Tunable PHY Repeaters) cable extenders.
    • Sa drm (Direct Rendering Manager) subsystem sa mga driver armada, exynos, gma500, hyperv, imx, ingenic, mcde, mediatek, msm, omap, rcar-du, rockchip, sprd, sti, tegra, tilcdc, xen at vc4 parameter support ay naidagdag na nomodeset, na nagpapahintulot sa iyo na huwag paganahin ang paglipat ng mga mode ng video sa antas ng kernel at ang paggamit ng mga tool sa pagpapabilis ng pag-render ng hardware, na nag-iiwan lamang ng functionality na nauugnay sa framebuffer ng system.
    • Nagdagdag ng suporta para sa ARM SoΠ‘ Qualcomm Snapdragon 625/632 (ginamit sa LG Nexus 5X at Fairphone FP3 smartphone), Samsung Exynos 850, Samsung Exynos 7885 (ginamit sa Samsung Galaxy A8), Airoha (Mediatek/EcoNet) EN7523, Mediatek mt6582 (Prestigio PMT) tablet 5008G), Microchip Lan3, Renesas RZ/G966LC, RZ/V2L, Tesla FSD, TI K2/AM3 at i.MXRTxxxx.
    • Nagdagdag ng suporta para sa mga ARM device at board mula sa Broadcom (Raspberry Pi Zero 2 W), Qualcomm (Google Herobrine R1 Chromebook, SHIFT6mq, Samsung Galaxy Book2), Rockchip (Pine64 PineNote, Bananapi-R2-Pro, STM32 Emtrion emSBS, Samsung Galaxy Tab S , Prestigio PMT5008 3G tablet), Allwinner (A20-Marsboard), Amlogic (Amediatek X96-AIR, CYX A95XF3-AIR, Haochuangy H96-Max, Amlogic AQ222 at OSMC Vero 4K+), Aspeed (Quanta S6Q, ASRock) ROMED / Armada (Ctera C8 V3 at V200 NAS), Mstar (DongShanPiOne, Miyoo Mini), NXP i.MX (Protonic PRT1MM, emCON-MX2M Mini, Toradex Verdin, Gateworks GW8).
    • Nagdagdag ng suporta para sa mga sound system at codec AMD PDM, Atmel PDMC, Awinic AW8738, i.MX TLV320AIC31xx, Intel CS35L41, ESSX8336, Mediatek MT8181, nVidia Tegra234, Qualcomm SC7280, Renesas RZ/V2TASL585 Instruments. Nagdagdag ng paunang pagpapatupad ng sound driver para sa Intel AVS DSP chip. Na-update ang suporta sa driver para sa Intel ADL at Tegra234, at gumawa ng mga pagbabago para mapahusay ang suporta sa audio sa mga device na Dell, HP, Lenovo, ASUS, Samsung at Clevo.

    Kasabay nito, ang Latin American Free Software Foundation ay bumuo ng isang bersyon ng ganap na libreng kernel 5.18 - Linux-libre 5.18-gnu, na-clear sa mga elemento ng firmware at mga driver na naglalaman ng mga di-libreng bahagi o mga seksyon ng code, ang saklaw nito ay limitado. ng tagagawa. Nililinis ng bagong release ang mga driver para sa mga panel ng MIPI DBI, VPU Amphion, WiFi MediaTek MT7986 WMAC, Mediatek MT7921U (USB) at Realtek 8852a/8852c, Intel AVS at Texas Instruments TAS5805M sound chips. Ang mga file ng DTS ay nalinis din para sa iba't ibang Qualcomm SoC na may mga processor batay sa arkitektura ng AArch64. Na-update na blob cleaning code sa mga driver at subsystem ng AMD GPU, MediaTek MT7915, Silicon Labs WF200+ WiFi, Mellanox Spectru Ethernet, Realtek rtw8852c, Qualcomm Q6V5, Wolfson ADSP, MediaTek HCI UART.

Pinagmulan: opennet.ru

Magdagdag ng komento