{"id":100032,"date":"2021-04-26T10:22:56","date_gmt":"2021-04-26T08:22:56","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/reliz-yadra-linux-5-12"},"modified":"2021-04-26T10:22:56","modified_gmt":"2021-04-26T08:22:56","slug":"reliz-yadra-linux-5-12","status":"publish","type":"post","link":"https:\/\/prohoster.info\/pl\/blog\/news\/reliz-yadra-linux-5-12","title":{"rendered":"Wydanie j\u0105dra Linux 5.12","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Po dw\u00f3ch miesi\u0105cach prac Linus Torvalds zaprezentowa\u0142 wydanie j\u0105dra Linux 5.12. W\u015br\u00f3d najbardziej zauwa\u017calnych zmian znajduj\u0105 si\u0119: wsparcie dla zonowanych urz\u0105dze\u0144 blokowych w Btrfs, mo\u017cliwo\u015b\u0107 mapowania identyfikator\u00f3w u\u017cytkownik\u00f3w dla system\u00f3w plik\u00f3w, czyszczenie przestarza\u0142ych architektur ARM, tryb 'niecierpliwego' zapisu w NFS, mechanizm LOOKUP_CACHED do okre\u015blania \u015bcie\u017cek plik\u00f3w z pami\u0119ci podr\u0119cznej, wsparcie dla atomowych instrukcji w BPF, system debugowania KFENCE do identyfikacji b\u0142\u0119d\u00f3w zwi\u0105zanych z pami\u0119ci\u0105, dzia\u0142aj\u0105cy w osobnym w\u0105tku j\u0105dra tryb NAPI polling w stosie sieciowym, hipernadzorca ACRN, mo\u017cliwo\u015b\u0107 dynamicznej zmiany modelu preempt w schedulerze oraz wsparcie dla optymalizacji LTO podczas kompilacji w Clang.    <\/p>\n<p>W nowej wersji przyj\u0119to 14170 (w poprzedniej edycji 15480) poprawek od 1946 (1991) programist\u00f3w, rozmiar \u0142atki \u2014 38 MB (zmiany obejmowa\u0142y 12102 (12090) plik\u00f3w, dodano 538599 (868025) linii kodu, usuni\u0119to 333377 (261456) linii). Oko\u0142o 43% wszystkich przedstawionych w 5.12 zmian dotyczy sterownik\u00f3w urz\u0105dze\u0144, oko\u0142o 17% zmian ma zwi\u0105zek z aktualizacj\u0105 kodu specyficznego dla architektur sprz\u0119towych, 12% dotyczy stosu sieciowego, 5% \u2014 system\u00f3w plik\u00f3w i 4% z wewn\u0119trznymi podsystemami j\u0105dra.    <\/p>\n<p>G\u0142\u00f3wne nowo\u015bci:  <\/p>\n<ul>\n<li class=\"l\"> <b>Podsystem dyskowy, wej\u015bcie\/wyj\u015bcie i systemy plik\u00f3w<\/b>\n<ul>\n<li class=\"l\"> Zaimplementowano mo\u017cliwo\u015b\u0107 mapowania identyfikator\u00f3w u\u017cytkownik\u00f3w dla zamontowanych system\u00f3w plik\u00f3w (mo\u017cna mapowa\u0107 pliki jednego u\u017cytkownika na zamontowanej obcej partycji z innym u\u017cytkownikiem w bie\u017c\u0105cym systemie). Mapowanie jest wspierane dla system\u00f3w plik\u00f3w FAT, ext4 oraz XFS. Proponowana funkcjonalno\u015b\u0107 u\u0142atwia wsp\u00f3\u0142dzielenie plik\u00f3w przez r\u00f3\u017cnych u\u017cytkownik\u00f3w i r\u00f3\u017cne komputery, w tym mapowanie b\u0119dzie stosowane w mechanizmie przeno\u015bnych katalog\u00f3w domowych systemd-homed, umo\u017cliwiaj\u0105c u\u017cytkownikom przenoszenie swoich katalog\u00f3w domowych na zewn\u0119trzne no\u015bniki i korzystanie z nich na r\u00f3\u017cnych komputerach, gdzie rozk\u0142ad identyfikator\u00f3w u\u017cytkownik\u00f3w jest r\u00f3\u017cny. Innym u\u017cytecznym zastosowaniem jest organizacja dost\u0119pu do plik\u00f3w z zewn\u0119trznego hosta, bez faktycznej zmiany danych dotycz\u0105cych w\u0142a\u015bcicieli plik\u00f3w w systemie plik\u00f3w.\n<li class=\"l\"> W j\u0105drze zaimplementowano poprawki LOOKUP_CACHED, umo\u017cliwiaj\u0105ce wykonywanie operacji okre\u015blania \u015bcie\u017cki pliku z przestrzeni u\u017cytkownika bez blokady, wy\u0142\u0105cznie na podstawie danych dost\u0119pnych w pami\u0119ci podr\u0119cznej. Tryb LOOKUP_CACHED jest aktywowany w wywo\u0142aniu openat2() poprzez przekazanie flagi RESOLVE_CACHED, w ramach kt\u00f3rej dane s\u0105 dostarczane wy\u0142\u0105cznie z cache, a w przypadku, gdy okre\u015blenie \u015bcie\u017cki wymaga dost\u0119pu do magazynu, zwracany jest b\u0142\u0105d EAGAIN.\n<li class=\"l\"> W systemie plik\u00f3w Btrfs dodano pocz\u0105tkowe wsparcie dla zlokalizowanych urz\u0105dze\u0144 blokowych (urz\u0105dzenia na dyskach twardych lub NVMe SSD, w kt\u00f3rych przestrze\u0144 do przechowywania jest podzielona na strefy, sk\u0142adaj\u0105ce si\u0119 z grup blok\u00f3w lub sektor\u00f3w, do kt\u00f3rych dozwolone jest jedynie sekwencyjne dodawanie danych, z ca\u0142kowit\u0105 aktualizacj\u0105 ca\u0142ej grupy blok\u00f3w). W trybie tylko do odczytu zaimplementowano wsparcie dla blok\u00f3w z metadanymi i danymi o rozmiarze mniejszym ni\u017c strona (subpage).\n<li class=\"l\"> W systemie plik\u00f3w F2FS dodano mo\u017cliwo\u015b\u0107 wyboru algorytmu i poziomu kompresji. Dodano wsparcie dla wysokiego poziomu kompresji dla algorytmu LZ4. Wprowadzono opcj\u0119 montowania checkpoint_merge.\n<li class=\"l\"> Wprowadzono now\u0105 komend\u0119 ioctl FS_IOC_READ_VERITY_METADATA do odczytu metadanych z plik\u00f3w zabezpieczonych przy u\u017cyciu fs-verity.\n<li class=\"l\"> W kliencie NFS zaimplementowano tryb 'niecierpliwego' zapisu (writes=eager), w kt\u00f3rym operacje zapisu do pliku s\u0105 natychmiast przekazywane na serwer, omijaj\u0105c pami\u0119\u0107 podr\u0119czn\u0105 stron. Wskazany tryb pozwala na zmniejszenie zu\u017cycia pami\u0119ci, zapewnia natychmiastowe uzyskanie informacji o zako\u0144czeniu wolnego miejsca w systemie plik\u00f3w i w niekt\u00f3rych sytuacjach pozwala uzyska\u0107 wzrost wydajno\u015bci.\n<li class=\"l\"> W CIFS (SMB) dodano nowe opcje montowania: acregmax do zarz\u0105dzania buforowaniem plik\u00f3w oraz acdirmax do zarz\u0105dzania buforowaniem metadanych katalog\u00f3w.\n<li class=\"l\"> W XFS w\u0142\u0105czono tryb wielow\u0105tkowego sprawdzania limit\u00f3w, przyspieszono wykonanie fsync, przeprowadzono przygotowanie kodu growfs do realizacji funkcji zmniejszania rozmiaru systemu plik\u00f3w.                        <\/ul>\n<li class=\"l\"> <b>Pami\u0119\u0107 i us\u0142ugi systemowe<\/b>\n<ul>\n<li class=\"l\"> Dodano podsystem DTMP (Dynamic Thermal Power Management), kt\u00f3ry umo\u017cliwia dynamiczne regulowanie zu\u017cycia energii r\u00f3\u017cnych urz\u0105dze\u0144 na podstawie na\u0142o\u017conych og\u00f3lnych ogranicze\u0144 temperatury.\n<li class=\"l\"> Zrealizowano mo\u017cliwo\u015b\u0107 kompilacji j\u0105dra za pomoc\u0105 kompilatora Clang z w\u0142\u0105czeniem optymalizacji w czasie linkowania (LTO, Link Time Optimization). Optymalizacje LTO r\u00f3\u017cni\u0105 si\u0119 tym, \u017ce uwzgl\u0119dniaj\u0105 stan wszystkich plik\u00f3w bior\u0105cych udzia\u0142 w procesie kompilacji, podczas gdy tradycyjne tryby optymalizacji optymalizuj\u0105 ka\u017cdy plik z osobna i nie uwzgl\u0119dniaj\u0105 warunk\u00f3w wywo\u0142ania funkcji zdefiniowanych w innych plikach. Na przyk\u0142ad, przy LTO mo\u017cliwe jest inline'owe rozwijanie funkcji z innych plik\u00f3w, nieu\u017cywany kod nie jest w\u0142\u0105czany do pliku wykonywalnego, przeprowadzana jest kontrola typ\u00f3w oraz og\u00f3lna optymalizacja na poziomie projektu jako ca\u0142o\u015bci. Obs\u0142uga LTO jest obecnie ograniczona do architektur x86 i ARM64.\n<li class=\"l\"> Wprowadzono mo\u017cliwo\u015b\u0107 wyboru tryb\u00f3w wyw\u0142aszczania (PREEMPT) w planowaniu zada\u0144 na etapie \u0142adowania (preempt=none\/voluntary\/full) lub w czasie dzia\u0142ania przez debugfs (\/debug\/sched_debug), w przypadku wskazania podczas kompilacji ustawienia PREEMPT_DYNAMIC. Wcze\u015bniej tryb wyw\u0142aszczania m\u00f3g\u0142 by\u0107 ustalany tylko na poziomie parametr\u00f3w kompilacji. Zmiana ta umo\u017cliwia dystrybucjom dostarczanie j\u0105der z w\u0142\u0105czonym trybem PREEMPT, zapewniaj\u0105cym minimalne op\u00f3\u017anienia dla \u015brodowisk graficznych, kosztem nieznacznego zmniejszenia wydajno\u015bci, oraz w razie potrzeby powr\u00f3t do tryb\u00f3w PREEMPT_VOLUNTARY (po\u015bredni tryb dla \u015brodowisk graficznych) lub PREEMPT_NONE (zapewnia maksymaln\u0105 wydajno\u015b\u0107 dla). <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/pl\/server\/\"   title=\"serwer\u00f3w\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"1575\">serwer\u00f3w<\/a>).\n<li class=\"l\"> Do podp\u00f3rki BPF dodano wsparcie dla atomowych operacji BPF_ADD, BPF_AND, BPF_OR, BPF_XOR, BPF_XCHG i BPF_CMPXCHG.\n<li class=\"l\"> Programy BPF maj\u0105 mo\u017cliwo\u015b\u0107 dost\u0119pu do danych na stosie za pomoc\u0105 wska\u017anik\u00f3w z zmiennym przesuni\u0119ciem. Na przyk\u0142ad, je\u015bli wcze\u015bniej do uzyskania dost\u0119pu do tablicy na stosie mo\u017cna by\u0142o u\u017cywa\u0107 tylko sta\u0142ego indeksu elementu, to teraz mo\u017cna u\u017cywa\u0107 zmiennego. Kontrola dost\u0119pu odbywa si\u0119 tylko w ramach istniej\u0105cych granic przez weryfikator BPF. Mo\u017cliwo\u015b\u0107 ta jest dost\u0119pna tylko dla program\u00f3w uprzywilejowanych z obawy przed wykorzystaniem luk zwi\u0105zanych z spekulatywnym wykonaniem kodu.\n<li class=\"l\"> Dodano mo\u017cliwo\u015b\u0107 przy\u0142\u0105czania program\u00f3w BPF do &#171;go\u0142ych&#187; punkt\u00f3w \u015bledzenia (bare tracepoints), kt\u00f3re nie s\u0105 zwi\u0105zane z widocznymi w przestrzeni u\u017cytkownika zdarzeniami \u015bledzenia (dla takich punkt\u00f3w \u015bledzenia nie gwarantuje si\u0119 zachowania ABI).\n<li class=\"l\"> Zrealizowano wsparcie dla magistrali CXL 2.0 (Compute Express Link), wykorzystywanej do organizacji szybkiej komunikacji CPU z urz\u0105dzeniami pami\u0119ci (umo\u017cliwia korzystanie z zewn\u0119trznych urz\u0105dze\u0144 pami\u0119ci jako cz\u0119\u015bci RAM lub pami\u0119ci trwa\u0142ej, tak jakby ta pami\u0119\u0107 by\u0142a pod\u0142\u0105czona przez standardowy kontroler pami\u0119ci w CPU).\n<li class=\"l\"> Dodano sterownik nvmem do pozyskiwania danych z zarezerwowanych przez firmware obszar\u00f3w pami\u0119ci, bezpo\u015brednio niedost\u0119pnych dla systemu Linux (np. pami\u0119\u0107 EEPROM, fizycznie dost\u0119pna tylko dla firmware, lub dane dost\u0119pne tylko na wczesnym etapie uruchamiania).\n<li class=\"l\"> Usuni\u0119to wsparcie dla systemu profilowania \u201eoprofile\u201d, kt\u00f3ry nie zyska\u0142 odpowiedniej popularno\u015bci i zosta\u0142 wyparty przez nowocze\u015bniejszy mechanizm perf.\n<li class=\"l\"> W interfejsie asynchronicznego wej\u015bcia\/wyj\u015bcia io_uring zapewniono integracj\u0119 z cgroup, kontroluj\u0105cymi wykorzystanie pami\u0119ci.\n<li class=\"l\"> Dla architektury RISC-V zrealizowano wsparcie dla system\u00f3w NUMA, a tak\u017ce mechanizm\u00f3w kprobes i uprobes.\n<li class=\"l\"> Dodano mo\u017cliwo\u015b\u0107 korzystania z wywo\u0142ania systemowego kcmp() niezale\u017cnie od funkcjonalno\u015bci zrzut\u00f3w stanu proces\u00f3w (checkpoint\/restore).\n<li class=\"l\"> Usuni\u0119to makra EXPORT_UNUSED_SYMBOL() i EXPORT_SYMBOL_GPL_FUTURE(), kt\u00f3re od wielu lat nie s\u0105 u\u017cywane w praktyce.                       <\/ul>\n<li class=\"l\"> <b>Wirtualizacja i bezpiecze\u0144stwo<\/b>\n<ul>\n<li class=\"l\"> Dodano mechanizm ochrony KFence (Kernel Electric Fence), kt\u00f3ry wychwytuje b\u0142\u0119dy podczas pracy z pami\u0119ci\u0105, takie jak przekroczenie granicy bufora i odwo\u0142ania po zwolnieniu pami\u0119ci. W przeciwie\u0144stwie do mechanizmu debugowania KASAN, podsystem KFence wyr\u00f3\u017cnia si\u0119 du\u017c\u0105 szybko\u015bci\u0105 dzia\u0142ania i niskimi kosztami, co pozwala na wychwytywanie b\u0142\u0119d\u00f3w pracy z pami\u0119ci\u0105, kt\u00f3re ujawniaj\u0105 si\u0119 tylko w systemach produkcyjnych lub podczas d\u0142ugotrwa\u0142ej pracy.\n<li class=\"l\"> Dodano wsparcie dla hipernadzorcy ACRN, stworzonego z my\u015bl\u0105 o gotowo\u015bci do realizacji zada\u0144 w czasie rzeczywistym oraz przydatno\u015bci do u\u017cycia w systemach krytycznych. ACRN zapewnia minimalne koszty og\u00f3lne, gwarantuje niskie op\u00f3\u017anienia (low latency) i odpowiedni\u0105 responsywno\u015b\u0107 podczas interakcji z sprz\u0119tem. Obs\u0142ugiwane s\u0105 wirtualizacja zasob\u00f3w CPU, wej\u015bcia\/wyj\u015bcia, systemu sieciowego oraz operacji z grafik\u0105 i d\u017awi\u0119kiem. ACRN mo\u017ce by\u0107 u\u017cywany do uruchamiania kilku izolowanych <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/pl\/vps\/\"   title=\"maszyn wirtualnych\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"2053\">maszyn wirtualnych<\/a> w elektronicznych blokach zarz\u0105dzania, panelach instrument\u00f3w, systemach informacyjnych w samochodach, konsumenckich urz\u0105dzeniach IoT i innym sprz\u0119cie wbudowanym. ACRN obs\u0142uguje dwa typy system\u00f3w go\u015bcinnych \u2014 uprzywilejowany Service VM, kt\u00f3ry jest u\u017cywany do zarz\u0105dzania zasobami systemu (CPU, pami\u0119\u0107, wej\u015bcie\/wyj\u015bcie itp.), oraz u\u017cytkownikowe User VM, w kt\u00f3rych mo\u017cna uruchamia\u0107 dystrybucje Linuxa, Androida i Windows.\n<li class=\"l\"> W podsystemie IMA (Architektura Pomiaru Integralno\u015bci), kt\u00f3ra zapewnia utrzymanie bazy hash\u00f3w do weryfikacji integralno\u015bci plik\u00f3w i zwi\u0105zanych z nimi metadanych, dodano mo\u017cliwo\u015b\u0107 weryfikacji integralno\u015bci danych samego rdzenia, na przyk\u0142ad, do \u015bledzenia zmian w regu\u0142ach SELinux.\n<li class=\"l\"> W hipernadzorze KVM dodano mo\u017cliwo\u015b\u0107 przechwytywania hipernadzor\u00f3w Xen i ich przekazywania do emulatora dzia\u0142aj\u0105cego w przestrzeni u\u017cytkownika.\n<li class=\"l\"> Dodano mo\u017cliwo\u015b\u0107 u\u017cycia systemu Linux jako \u015brodowiska g\u0142\u00f3wnego dla hipernadzoru Hyper-V. \u015arodowisko g\u0142\u00f3wne ma bezpo\u015bredni dost\u0119p do sprz\u0119tu i jest u\u017cywane do uruchamiania system\u00f3w go\u015bcinnych (odpowiednik Dom0 w Xen). Do tej pory Hyper-V (Microsoft Hypervisor) obs\u0142ugiwa\u0142 Linux tylko w \u015brodowiskach go\u015bcinnych, podczas gdy sam hipernadz\u00f3r by\u0142 zarz\u0105dzany z \u015brodowiska opartego na Windows.\n<li class=\"l\"> Dodano wsparcie dla szyfrowania inline dla kart eMMC, kt\u00f3re pozwala na wykorzystanie wbudowanych w kontroler dysku mechanizm\u00f3w szyfrowania, kt\u00f3re przeprowadzaj\u0105 przezroczyste szyfrowanie i deszyfrowanie wej\u015bcia\/wyj\u015bcia.\n<li class=\"l\"> Z kryptosystemu usuni\u0119to wsparcie dla nieu\u017cywanych w rdzeniu hash\u00f3w RIPE-MD 128\/256\/320 oraz Tiger 128\/160\/192, a tak\u017ce dla strumieniowego szyfru Salsa20, kt\u00f3ry zosta\u0142 zast\u0105piony algorytmem ChaCha20. Algorytm blake2 zosta\u0142 zaktualizowany do realizacji blake2s.          <\/ul>\n<li class=\"l\"> <b>Subsystem sieciowy<\/b>\n<ul>\n<li class=\"l\">Dodano mo\u017cliwo\u015b\u0107 przeniesienia obs\u0142ugi polowania NAPI sieciowych urz\u0105dze\u0144 do oddzielnego w\u0105tku rdzenia, co pozwala na zwi\u0119kszenie wydajno\u015bci w przypadku niekt\u00f3rych typ\u00f3w obci\u0105\u017cenia. Wcze\u015bniej polowanie by\u0142o wykonywane w kontek\u015bcie softirq i nie by\u0142o uwzgl\u0119dniane przez scheduler, co utrudnia\u0142o precyzyjn\u0105 optymalizacj\u0119 w celu osi\u0105gni\u0119cia maksymalnej wydajno\u015bci. Wykonywanie w oddzielnym w\u0105tku rdzenia umo\u017cliwia monitorowanie obs\u0142ugi polowania z przestrzeni u\u017cytkownika, przypisywanie do oddzielnych rdzeni CPU i uwzgl\u0119dnianie w planowaniu prze\u0142\u0105czania zada\u0144. Aby w\u0142\u0105czy\u0107 nowy tryb w sysfs, zaproponowano parametr \/sys\/class\/net\/\/threaded.\n<li class=\"l\"> Kontynuowana integracja z j\u0105drem MPTCP (MultiPath TCP), rozszerzenia protoko\u0142u TCP, kt\u00f3re umo\u017cliwia jednoczesne przesy\u0142anie pakiet\u00f3w poprzez wiele tras za pomoc\u0105 r\u00f3\u017cnych interfejs\u00f3w sieciowych przypisanych do r\u00f3\u017cnych adres\u00f3w IP. W nowym wydaniu dodano mo\u017cliwo\u015b\u0107 przypisania priorytetu do okre\u015blonych strumieni, co pozwala na przyk\u0142ad na organizacj\u0119 pracy zapasowych strumieni, kt\u00f3re w\u0142\u0105czaj\u0105 si\u0119 tylko w przypadku problem\u00f3w z g\u0142\u00f3wnym strumieniem.\n<li class=\"l\"> W IGMPv3 dodano wsparcie dla mechanizmu EHT (Explicit Host Tracking).\n<li class=\"l\"> W mechanizmie filtracji pakiet\u00f3w netfilter wprowadzono mo\u017cliwo\u015b\u0107 posiadania okre\u015blonych tabel dla uzyskania wy\u0142\u0105cznej kontroli (na przyk\u0142ad, proces w tle zapory sieciowej mo\u017ce przydzieli\u0107 sobie okre\u015blone tabele, uniemo\u017cliwiaj\u0105c innym osobom ingerencj\u0119 w nie).                               <\/ul>\n<li class=\"l\"> <b>Sprz\u0119t<\/b>\n<ul>\n<li class=\"l\"> Przeprowadzono czyszczenie nieaktualnych i nieobs\u0142ugiwanych platform ARM. Usuni\u0119to kod platform efm32, picoxcell, prima2, tango, u300, zx oraz c6x, a tak\u017ce zwi\u0105zane z nimi sterowniki.\n<li class=\"l\"> W sterowniku amdgpu wprowadzono mo\u017cliwo\u015b\u0107 podkr\u0119cania (OverDrive) kart opartych na GPU Sienna Cichlid (Navi 22, Radeon RX 6xxx). Dodano wsparcie dla formatu pikseli FP16 dla DCE (engine kontrolera wy\u015bwietlacza) od 8 do 11 pokolenia. Dla GPU Navy Flounder (Navi 21) i APU Van Gogh wprowadzono mo\u017cliwo\u015b\u0107 resetowania GPU.\n<li class=\"l\"> W sterowniku i915 dla kart graficznych Intel wprowadzono parametr i915.mitigations s\u0142u\u017c\u0105cy do wy\u0142\u0105czenia mechanizm\u00f3w izolacji i ochrony na rzecz zwi\u0119kszenia wydajno\u015bci. Dla procesor\u00f3w od Tiger Lake w\u0142\u0105czono wsparcie mechanizmu VRR (Variable Rate Refresh), kt\u00f3ry umo\u017cliwia adaptacyjne zmienianie cz\u0119stotliwo\u015bci od\u015bwie\u017cania monitora w celu zapewnienia p\u0142ynno\u015bci i braku zaci\u0119\u0107 podczas gier. W\u0142\u0105czono wsparcie technologii Intel Clear Color dla zwi\u0119kszenia dok\u0142adno\u015bci odwzorowania kolor\u00f3w. Dodano wsparcie DP-HDMI 2.1. Wprowadzono mo\u017cliwo\u015b\u0107 zarz\u0105dzania pod\u015bwietleniem paneli eDP. Dla GPU Gen9 z obs\u0142ug\u0105 LSPCON (Level Shifter and Protocol Converter) w\u0142\u0105czono wsparcie HDR.\n<li class=\"l\"> W sterowniku nouveau dodano pocz\u0105tkowe wsparcie dla GPU NVIDIA opartego na architekturze GA100 (Ampere).\n<li class=\"l\"> W sterowniku msm dodano wsparcie dla GPU Adreno 508, 509 i 512, u\u017cywanych w chipach SDM (Snapdragon) 630, 636 i 660.\n<li class=\"l\"> Dodano wsparcie dla kart d\u017awi\u0119kowych Sound BlasterX AE-5 Plus, Lexicon I-ONIX FW810s i Pioneer DJM-750. Dodano wsparcie dla systemu d\u017awi\u0119kowego Intel Alder Lake PCH-P. Wprowadzono wsparcie dla programowej symulacji pod\u0142\u0105czenia i od\u0142\u0105czenia gniazda audio w celu debugowania obs\u0142ugi w przestrzeni u\u017cytkownika.\n<li class=\"l\"> Dodano wsparcie dla konsol do gier Nintendo 64, produkowanych w latach 1996-2003 (wcze\u015bniejsze pr\u00f3by portowania Linuxa na Nintendo 64 nie zosta\u0142y uko\u0144czone i mia\u0142y status Vaporware). Motywacj\u0105 do stworzenia nowego portu na przestarza\u0142\u0105 platform\u0119, kt\u00f3ra nie jest produkowana od prawie dwudziestu lat, jest ch\u0119\u0107 stymulowania rozwoju emulator\u00f3w oraz uproszczenia portowania gier.\n<li class=\"l\"> Dodano sterownik dla kontrolera gier Sony PlayStation 5 DualSense.\n<li class=\"l\"> Dodano wsparcie dla platform ARM, urz\u0105dze\u0144 i platform: PineTab, Snapdragon 888 \/ SM8350, Snapdragon MTP, Two Beacon EmbeddedWorks, Intel eASIC N5X, Netgear R8000P, Plymovent M2M, Beacon i.MX8M Nano, NanoPi M4B.\n<li class=\"l\"> Dodano wsparcie dla smartfon\u00f3w Purism Librem5 Evergreen, Xperia Z3+\/Z4\/Z5, ASUS Zenfone 2 Laser, BQ Aquaris X5, OnePlus6, OnePlus6T, Samsung GT-I9070.\n<li class=\"l\"> Dodano sterownik bcm-vk dla kart przyspieszaj\u0105cych Broadcom VK (np. kart PCIe Valkyrie i Viper), kt\u00f3re mo\u017cna wykorzysta\u0107 do przeniesienia operacji zwi\u0105zanych z przetwarzaniem d\u017awi\u0119ku, wideo i obraz\u00f3w na osobne urz\u0105dzenie oraz do dzia\u0142a\u0144 zwi\u0105zanych z szyfrowaniem.\n<li class=\"l\"> Dodano wsparcie dla platformy Lenovo IdeaPad z mo\u017cliwo\u015bci\u0105 zarz\u0105dzania sta\u0142ym \u0142adowaniem i pod\u015bwietleniem klawiatury. Zapewnione zosta\u0142o tak\u017ce wsparcie dla profilu ACPI platformy ThinkPad z opcj\u0105 zarz\u0105dzania trybami oszcz\u0119dzania energii. Dodano sterownik dla podsystemu HID Lenovo ThinkPad X1 Tablet Gen 2.\n<li class=\"l\"> Dodano sterownik ov5647 z obs\u0142ug\u0105 modu\u0142u kamery dla Raspberry Pi.\n<li class=\"l\"> Dodano wsparcie dla RISC-V SoC FU740 i p\u0142yt HiFive Unleashed. Dodano r\u00f3wnie\u017c nowy sterownik dla chipu Kendryte K210.    <\/ul>\n<\/ul>\n<p>\u0179r\u00f3d\u0142o: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=54985\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u043e\u0441\u043b\u0435 \u0434\u0432\u0443\u0445 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u041b\u0438\u043d\u0443\u0441 \u0422\u043e\u0440\u0432\u0430\u043b\u044c\u0434\u0441 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b \u0440\u0435\u043b\u0438\u0437 \u044f\u0434\u0440\u0430 Linux 5.12. \u0421\u0440\u0435\u0434\u0438 \u043d\u0430\u0438\u0431\u043e\u043b\u0435\u0435 \u0437\u0430\u043c\u0435\u0442\u043d\u044b\u0445 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439: \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u0437\u043e\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u0431\u043b\u043e\u0447\u043d\u044b\u0445 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432 \u0432 Btrfs, \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043c\u0430\u043f\u043f\u0438\u043d\u0433\u0430 \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440\u043e\u0432 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 \u0434\u043b\u044f \u0424\u0421, \u0447\u0438\u0441\u0442\u043a\u0430 \u0443\u0441\u0442\u0430\u0440\u0435\u0432\u0448\u0438\u0445 ARM-\u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440, \u0440\u0435\u0436\u0438\u043c &#171;\u043d\u0435\u0442\u0435\u0440\u043f\u0435\u043b\u0438\u0432\u043e\u0439&#187; \u0437\u0430\u043f\u0438\u0441\u0438 \u0432 NFS, \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c LOOKUP_CACHED \u0434\u043b\u044f \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u0444\u0430\u0439\u043b\u043e\u0432\u044b\u0445 \u043f\u0443\u0442\u0435\u0439 \u0438\u0437 \u043a\u044d\u0448\u0430, \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u0430\u0442\u043e\u043c\u0430\u0440\u043d\u044b\u0445 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0439 \u0432 BPF, \u043e\u0442\u043b\u0430\u0434\u043e\u0447\u043d\u0430\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u0430 KFENCE \u0434\u043b\u044f \u0432\u044b\u044f\u0432\u043b\u0435\u043d\u0438\u044f \u043e\u0448\u0438\u0431\u043e\u043a \u043f\u0440\u0438 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-100032","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.1.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041f\u043e\u0441\u043b\u0435 \u0434\u0432\u0443\u0445 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u041b\u0438\u043d\u0443\u0441 \u0422\u043e\u0440\u0432\u0430\u043b\u044c\u0434\u0441 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b \u0440\u0435\u043b\u0438\u0437 \u044f\u0434\u0440\u0430 Linux 5.12.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/pl\/blog\/news\/reliz-yadra-linux-5-12\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"pl_PL\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0420\u0435\u043b\u0438\u0437 \u044f\u0434\u0440\u0430 Linux 5.12 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041f\u043e\u0441\u043b\u0435 \u0434\u0432\u0443\u0445 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u041b\u0438\u043d\u0443\u0441 \u0422\u043e\u0440\u0432\u0430\u043b\u044c\u0434\u0441 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b \u0440\u0435\u043b\u0438\u0437 \u044f\u0434\u0440\u0430 Linux 5.12.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/pl\/blog\/news\/reliz-yadra-linux-5-12\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2021-04-26T08:22:56+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2021-04-26T08:22:56+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Wydanie j\u0105dra Linux 5.12 | ProHoster","description":"Po dw\u00f3ch miesi\u0105cach prac Linus Torvalds zaprezentowa\u0142 wydanie j\u0105dra Linux 5.12.","canonical_url":"https:\/\/prohoster.info\/pl\/blog\/news\/reliz-yadra-linux-5-12","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"pl_PL","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0420\u0435\u043b\u0438\u0437 \u044f\u0434\u0440\u0430 Linux 5.12 | ProHoster","og:description":"\u041f\u043e\u0441\u043b\u0435 \u0434\u0432\u0443\u0445 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u041b\u0438\u043d\u0443\u0441 \u0422\u043e\u0440\u0432\u0430\u043b\u044c\u0434\u0441 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b \u0440\u0435\u043b\u0438\u0437 \u044f\u0434\u0440\u0430 Linux 5.12.","og:url":"https:\/\/prohoster.info\/pl\/blog\/news\/reliz-yadra-linux-5-12","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2021-04-26T08:22:56+00:00","article:modified_time":"2021-04-26T08:22:56+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"100032","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-04-26 08:35:42","updated":"2026-02-09 17:11:13","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/posts\/100032","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/comments?post=100032"}],"version-history":[{"count":2,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/posts\/100032\/revisions"}],"predecessor-version":[{"id":159297,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/posts\/100032\/revisions\/159297"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/media?parent=100032"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/categories?post=100032"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/tags?post=100032"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}