{"id":119836,"date":"2024-09-16T15:43:01","date_gmt":"2024-09-16T13:43:01","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/reliz-yadra-linux-6-11"},"modified":"2024-09-16T15:43:01","modified_gmt":"2024-09-16T13:43:01","slug":"reliz-yadra-linux-6-11","status":"publish","type":"post","link":"https:\/\/prohoster.info\/pl\/blog\/news\/reliz-yadra-linux-6-11","title":{"rendered":"Wydanie j\u0105dra Linux 6.11","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Po dw\u00f3ch miesi\u0105cach prac Linus Torvalds zaprezentowa\u0142 wydanie j\u0105dra Linux 6.11. W\u015br\u00f3d najwa\u017cniejszych zmian znajduj\u0105 si\u0119: wsparcie dla atomowych operacji zapisu na poziomie blok\u00f3w, wsparcie dla operacji bind() i listen() w io_uring, nowy mechanizm blokad programowych obs\u0142ugi przerwa\u0144, mo\u017cliwo\u015b\u0107 zapisu do odzwierciedlonych w pami\u0119ci plik\u00f3w wykonywalnych, wsparcie dla pisania sterownik\u00f3w urz\u0105dze\u0144 blokowych w j\u0119zyku Rust, optymalizacja wywo\u0142ania getrandom(), nowa implementacja AES-GCM.                <\/p>\n<p>W nowej wersji wprowadzono 15130 poprawek od 2078 programist\u00f3w, rozmiar \u0142atki wynosi 85 MB (zmiany obejmuj\u0105 13282 plik\u00f3w, dodano 985857 linii kodu, usuni\u0119to 268915 linii). W poprzedniej wersji by\u0142o 14564 poprawek od 1989 programist\u00f3w, rozmiar \u0142atki wynosi\u0142 41 MB (dwa razy mniej ni\u017c \u0142atka dla j\u0105dra 6.11). Oko\u0142o 46% wszystkich przedstawionych w zmianach 6.11 dotyczy sterownik\u00f3w urz\u0105dze\u0144, oko\u0142o 17% zmian ma zwi\u0105zek z aktualizacj\u0105 kodu specyficznego dla architektur sprz\u0119towych, 10% dotyczy stosu sieciowego, 5% \u2013 system\u00f3w plik\u00f3w, a 3% z wewn\u0119trznych podsystem\u00f3w j\u0105dra.      <\/p>\n<p>G\u0142\u00f3wne nowo\u015bci w j\u0105drze 6.11:  <\/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\"> Zrealizowano wsparcie dla atomowych operacji zapisu na poziomie blok\u00f3w, w kt\u00f3rych na no\u015bniku zapisywany jest albo ca\u0142y zadany zestaw blok\u00f3w, albo \u017caden z blok\u00f3w, co pozwala chroni\u0107 przed sytuacjami, w kt\u00f3rych po awarii sprz\u0119tu zapisywana jest tylko cz\u0119\u015b\u0107 blok\u00f3w, a w pozosta\u0142ej cz\u0119\u015bci zostaje stara informacja. Aby w\u0142\u0105czy\u0107 atomowy tryb zapisu w wywo\u0142aniu systemowym pwritev(), dodano flag\u0119 RWF_ATOMIC. Informacje o wsparciu atomowego zapisu (atomic_write_unit_min, atomic_write_unit_max i atomic_write_segments_max) w odniesieniu do pojedynczych plik\u00f3w mo\u017cna uzyska\u0107 za pomoc\u0105 funkcji statx().\n<li class=\"l\"> Oferowane jest wsparcie dla zapisu do plik\u00f3w wykonywalnych zwi\u0105zanych z dzia\u0142aj\u0105cymi procesami. Wcze\u015bniej, tak jak w innych systemach uniksowych, j\u0105dro zg\u0142asza\u0142o b\u0142\u0105d przy pr\u00f3bie zapisu do pliku wykonywalnego uruchomionego procesu. Ograniczenie to zosta\u0142o zniesione, poniewa\u017c jest pozbawione praktycznego sensu.\n<li class=\"l\"> Zrealizowano mo\u017cliwo\u015b\u0107 tworzenia sterownik\u00f3w urz\u0105dze\u0144 blokowych w j\u0119zyku Rust. Jako przyk\u0142ad do j\u0105dra dodano sterownik rnull, b\u0119d\u0105cy odpowiednikiem sterownika null_blk, napisanego w j\u0119zyku Rust.\n<li class=\"l\"> W systemie plik\u00f3w Btrfs w opcji montowania \u201erescue=\u201d wprowadzono wsparcie dla nowych tryb\u00f3w \u201eignoremetacsums\u201d i \u201eignoresuperflags\u201d, kt\u00f3re mo\u017cna wykorzysta\u0107 do przeniesienia niekt\u00f3rych kontroli do przestrzeni u\u017cytkownika podczas przywracania systemu plik\u00f3w po awarii. Realizacja operacji dynamicznego zwracania grup blok\u00f3w zosta\u0142a przekszta\u0142cona, aby unikn\u0105\u0107 sytuacji braku wolnego miejsca w warunkach niepe\u0142nego zape\u0142nienia systemu plik\u00f3w.\n<li class=\"l\"> W systemie plik\u00f3w ntfs3 wprowadzono wsparcie dla atrybut\u00f3w \u201ecompressed\u201d i \u201eimmutable\u201d, kt\u00f3re definiuj\u0105 pliki skompresowane i niezmienne.\n<li class=\"l\"> W systemach plik\u00f3w F2FS i Ext4 przetwarzanie nazw plik\u00f3w bez uwzgl\u0119dnienia wielko\u015bci liter (casefold) uproszczono poprzez przechowywanie nazw w formie qstr-\u0142a\u0144cuch\u00f3w bez zb\u0119dnych przekszta\u0142ce\u0144 wielko\u015bci liter.\n<li class=\"l\"> W systemie plik\u00f3w Ext4 optymalizacja funkcji jbd2_transaction_committed poprawi\u0142a wydajno\u015b\u0107 na bardzo szybkich no\u015bnikach (w testach odnotowano wzrost liczby przetwarzanych operacji na sekund\u0119 o 20%).\n<li class=\"l\"> W wywo\u0142aniu systemowym statx() zezwolono na przekazywanie wska\u017anika NULL zamiast pustego ci\u0105gu z \u015bcie\u017ck\u0105 do pliku, je\u015bli ustawiony jest znacznik AT_EMPTY_PATH.\n<li class=\"l\"> W wywo\u0142aniu systemowym open_by_handle_at() z\u0142agodzono kontrole uprawnie\u0144 dost\u0119pu do pliku, gdy brak jest uprawnie\u0144 CAP_DAC_READ_SEARCH do przeszukiwania w pocz\u0105tkowej przestrzeni nazw. Wcze\u015bniej konieczno\u015b\u0107 posiadania uprawnie\u0144 CAP_DAC_READ_SEARCH do pocz\u0105tkowej przestrzeni nazw uniemo\u017cliwia\u0142a korzystanie z wywo\u0142ania systemowego open_by_handle_at() w kontenerach.\n<li class=\"l\"> Rozszerzone mo\u017cliwo\u015bci wywo\u0142a\u0144 systemowych listmount() i statmount(). W listmount() dodano znacznik LISTMOUNT_REVERSE do wy\u015bwietlania zawarto\u015bci tabeli punkt\u00f3w montowania w odwr\u00f3conym porz\u0105dku (naj\u015bwie\u017csze wpisy na g\u00f3rze). W statmount() wprowadzono wy\u015bwietlanie opcji ustawionych podczas montowania systemu plik\u00f3w. W obu wywo\u0142aniach systemowych zezwolono na dzia\u0142anie bez dost\u0119pu do pocz\u0105tkowej przestrzeni nazw (gdy dost\u0119pne jest tylko lokalne lub zewn\u0119trzne przestrze\u0144 nazw).\n<li class=\"l\"> W systemie plik\u00f3w Bcachefs wprowadzono wsparcie dla automatycznego, przezroczystego przywracania uszkodzonych danych za pomoc\u0105 kod\u00f3w odzyskiwania b\u0142\u0119d\u00f3w \u2013 je\u015bli podczas odczytu wyst\u0105pi b\u0142\u0105d we\/wy lub obliczono niesp\u00f3jno\u015b\u0107 sumy kontrolnej, uszkodzony blok danych zostanie automatycznie nadpisany, je\u015bli dost\u0119pna jest nadmiarowo\u015b\u0107 do jego przywr\u00f3cenia.                                      <\/ul>\n<li class=\"l\"> <b>Pami\u0119\u0107 i us\u0142ugi systemowe<\/b>\n<ul>\n<li class=\"l\"> W zestawie przyj\u0119to poprawki z wdro\u017ceniem nowego mechanizmu blokowania programowych obs\u0142ugiwaczy przerwa\u0144 (BH, bottom-half), kt\u00f3ry zapewnia blokowanie u\u017cywanych struktur danych, ale jednocze\u015bnie nie powoduje zablokowania r\u00f3wnoleg\u0142ego wykonywania niepowi\u0105zanego z nimi kodu. Zauwa\u017cono, \u017ce zmiana pozwoli\u0142a nie tylko na zmniejszenie op\u00f3\u017anie\u0144 dla rdzeni dzia\u0142aj\u0105cych w trybie rzeczywistym, ale r\u00f3wnie\u017c na zwi\u0119kszenie wydajno\u015bci zwyk\u0142ych rdzeni (na przyk\u0142ad dla niekt\u00f3rych rodzaj\u00f3w obci\u0105\u017ce\u0144 zaobserwowano wzrost wydajno\u015bci systemu sieciowego o 14,5%).\n<li class=\"l\"> Do podsystemu asynchronicznego wej\u015bcia\/wyj\u015bcia io_uring dodano wsparcie dla operacji realizuj\u0105cych funkcje bind() i listen(), u\u017cywanych do tworzenia akceptuj\u0105cych po\u0142\u0105czenia gniazd sieciowych.\n<li class=\"l\"> Dodano zestaw operacji ioctl dla pseudo-FS NSFS (NameSpace FS), wykorzystywanego do pracy z przestrzeni\u0105 nazw. Nowe operacje ioctl pozwalaj\u0105 przekszta\u0142ca\u0107 identyfikatory proces\u00f3w i grup w\u0105tk\u00f3w mi\u0119dzy r\u00f3\u017cnymi przestrzeniami nazw identyfikator\u00f3w proces\u00f3w (PID namespace). Podobne operacje ioctl, pozwalaj\u0105ce na podstawie identyfikator\u00f3w pidfd okre\u015bla\u0107 deskryptory plik\u00f3w proces\u00f3w w odr\u0119bnych przestrzeniach nazw, r\u00f3wnie\u017c dodano do pseudo-FS pidfd.\n<li class=\"l\"> Dla program\u00f3w BPF dodano wsparcie dla nowego iteratora do pracy z maskami bitowymi, kt\u00f3ry mo\u017cna wykorzysta\u0107, na przyk\u0142ad, do iteracji poszczeg\u00f3lnych bit\u00f3w w obszarach pami\u0119ci, takich jak cpumask. Dodano mechanizm do wysy\u0142ania procesom w przestrzeni u\u017cytkownika powiadomie\u0144 o od\u0142\u0105czeniu (detach\/unregister) obiektu struct_ops. Poszerzono zakres typ\u00f3w, kt\u00f3re mo\u017cna stosowa\u0107 w tablicach (na przyk\u0142ad, mo\u017cna deklarowa\u0107 tablice, kt\u00f3re maj\u0105 elementy z typami kptr, bpf_rb_root i bpf_list_head). Proponowany jest bardziej niezawodny mechanizm Split BTF (BPF Type Format), u\u017cywany do weryfikacji typ\u00f3w w pseudokodzie BPF.\n<li class=\"l\"> Dodano podsystem, kt\u00f3ry pozwala na organizacj\u0119 zasilania urz\u0105dze\u0144 w okre\u015blonej kolejno\u015bci, na wypadek gdy jedno urz\u0105dzenie musi by\u0107 aktywowane przed innym (na przyk\u0142ad podczas aktywacji chip\u00f3w bezprzewodowych na platformach Qualcomm).\n<li class=\"l\"> Dodano modu\u0142 \u201eSloppy logic analyzer\u201d, kt\u00f3ry pozwala na tworzenie prostych logicznych analizator\u00f3w sygna\u0142u, wykorzystuj\u0105cych GPIO i dzia\u0142aj\u0105cych na oddzielnym rdzeniu CPU.\n<li class=\"l\"> Dodano wsparcie dla sta\u0142ych runtime, kt\u00f3re mog\u0105 by\u0107 u\u017cywane zamiast zmiennych inicjowanych jednokrotnie. Na przyk\u0142ad sta\u0142e runtime mog\u0105 by\u0107 stosowane zamiast zmiennych przechowuj\u0105cych wska\u017anik i rozmiar dla pami\u0119ci podr\u0119cznej dentry. Te zmienne s\u0105 ustawiane w czasie \u0142adowania i nigdy p\u00f3\u017aniej si\u0119 nie zmieniaj\u0105. Idea polega na tym, aby bezpo\u015brednio wstawia\u0107 warto\u015bci takich zmiennych do instrukcji w kodzie, eliminuj\u0105c narzuty zwi\u0105zane z manewrowaniem wska\u017anikami.\n<li class=\"l\"> Kontynuowano przenoszenie zmian z ga\u0142\u0119zi Rust-for-Linux, zwi\u0105zanych z wykorzystaniem j\u0119zyka Rust jako drugiego j\u0119zyka do tworzenia sterownik\u00f3w i modu\u0142\u00f3w j\u0105dra (wsparcie dla Rust nie jest domy\u015blnie aktywne i nie powoduje w\u0142\u0105czenia Rust do obowi\u0105zkowych zale\u017cno\u015bci budowlanych j\u0105dra). Dodano wsparcie dla wydania Rust 1.80 (jako minimalna wersja nadal wspierana jest Rust 1.78). Opr\u00f3cz wcze\u015bniej wspomnianych narz\u0119dzi do tworzenia sterownik\u00f3w urz\u0105dze\u0144 blokowych, w nowej wersji dodano abstrakcje do \u0142adowania oprogramowania uk\u0142adowego, dost\u0119pu do przestrzeni u\u017cytkownika (uaccess) oraz pracy z struktur\u0105 \u201epage\u201d.\n<li class=\"l\"> Dla system\u00f3w x86-64 zrealizowano nowy systemowy wywo\u0142anie uretprobe(), optymalizuj\u0105ce dzia\u0142anie mechanizmu \u015bledzenia uretprobe, pozwalaj\u0105cego \u015bledzi\u0107 warto\u015bci zwracane przez funkcje w aplikacjach przestrzeni u\u017cytkownika.\n<li class=\"l\"> Dodano parametry wiersza polece\u0144 j\u0105dra: &#171;reserve_mem&#187; do rezerwacji nazwanej puli pami\u0119ci podczas rozruchu oraz &#171;ramoops.mem_name&#187; do u\u017cywania w obszarze pami\u0119ci pstore, stworzonym za pomoc\u0105 reserve_mem.\n<li class=\"l\"> W kontrolerze pami\u0119ci opartym na cgroup dodano do pliku memory.reclaim parametr &#171;swappiness&#187;, kt\u00f3ry pozwala na zmian\u0119 balansu mi\u0119dzy usuwaniem anonimowych stron pami\u0119ci do pliku wymiany a zwalnianiem stron pami\u0119ci zaj\u0119tych przez pami\u0119\u0107 podr\u0119czn\u0105 plik\u00f3w.\n<li class=\"l\"> Dodano interfejs ioctl PROCMAP_QUERY dla bardziej efektywnego wyszukiwania wirtualnych obszar\u00f3w pami\u0119ci (Virtual Memory Area) w \/proc\/PID\/maps.\n<li class=\"l\"> Do systemowego wywo\u0142ania mmap() dodano flag\u0119 MAP_DROPPABLE do \u017c\u0105dania pami\u0119ci, kt\u00f3ra nigdy nie b\u0119dzie zrzucana do obszaru wymiany, a w przypadku niedoboru pami\u0119ci mo\u017ce by\u0107 usuni\u0119ta.\n<li class=\"l\"> Dla architektury ARM64 wprowadzono wsparcie dla gor\u0105cego pod\u0142\u0105czenia (prze\u0142\u0105czania pomi\u0119dzy trybami online\/offline) fizycznych i wirtualnych CPU w systemach z ACPI.\n<li class=\"l\"> Architektura RISC-V zyska\u0142a wsparcie dla hot-plugging pami\u0119ci oraz dodano wsparcie dla wtyczki GCC STACKLEAK (inicjalizuje wszystkie zmienne przechowywane na stosie, aby zapobiec wyciekom informacji z j\u0105dra przez nieinicjalizowane zmienne, kt\u00f3re mog\u0105 zawiera\u0107 resztki wcze\u015bniej zapisanych danych na stosie).\n<li class=\"l\"> Usuni\u0119to mechanizm fikcyjnego mapowania pami\u0119ci EFI (fake EFI memory map) na etapie rozruchu. Ten mechanizm nie by\u0142 wykorzystywany w praktyce i przeszkadza\u0142 w pracach nad wykonywaniem poufnym. <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/pl\/vps\/\"   title=\"maszyn wirtualnych\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"2173\">maszyn wirtualnych<\/a>.\n<li class=\"l\"> Zaprzestano wsparcia dla platformy PowerPC 40x.\n<li class=\"l\"> Podwy\u017cszone wymagania dotycz\u0105ce wersji GNU Make \u2014 do kompilacji j\u0105dra wymagana jest co najmniej wersja GNU Make opublikowana w 2013 roku.                      <\/ul>\n<li class=\"l\"> <b>Wirtualizacja i bezpiecze\u0144stwo<\/b>\n<ul>\n<li class=\"l\"> Zintegrowano poprawki, kt\u00f3re znacznie (do 15 razy) przyspieszaj\u0105 uzyskiwanie liczb losowych za pomoc\u0105 wywo\u0142ania systemowego getrandom(). Optymalizacja opiera si\u0119 na wykorzystaniu mechanizmu vDSO (virtual dynamic shared object), kt\u00f3ry przenosi obs\u0142ug\u0119 wywo\u0142ania systemowego z j\u0105dra do przestrzeni u\u017cytkownika i unika prze\u0142\u0105czania kontekstu. Operacja realizacji wywo\u0142ania systemowego jest \u0142adowana w przestrze\u0144 adresow\u0105 procesu bezpo\u015brednio przez j\u0105dro.\n<li class=\"l\"> Dla system\u00f3w x86-64 w\u0142\u0105czono now\u0105 implementacj\u0119 algorytmu szyfrowania AES-GCM, wspieraj\u0105c\u0105 u\u017cycie instrukcji wektorowych VAES, VPCLMULQDQ oraz AVX512\/AVX10 dla przyspieszenia oblicze\u0144. W przeprowadzonych testach wzrost wydajno\u015bci po przej\u015bciu na now\u0105 implementacj\u0119 osi\u0105ga 156%. Assemblerowa implementacja AES-GCM zosta\u0142a ca\u0142kowicie przepisana z uwzgl\u0119dnieniem poprawno\u015bci, wydajno\u015bci, rozmiaru i szczeg\u00f3\u0142owej dokumentacji kodu.\n<li class=\"l\"> Wprowadzono mo\u017cliwo\u015b\u0107 uruchamiania j\u0105dra jako systemu go\u015bcia w zwirtualizowanych \u015brodowiskach, wykorzystuj\u0105cych rozszerzenie procesora AMD SEV-SNP (Secure Nested Paging), maj\u0105ce na celu zapewnienie bezpiecznej pracy z zagnie\u017cd\u017conymi tabelami stron pami\u0119ci. W celu dodatkowej izolacji dost\u0119pu do zasob\u00f3w z maszyn wirtualnych mo\u017cna zastosowa\u0107 modu\u0142 SVSM (Linux Secure VM Service Module). W hipernadzorze <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/pl\/vps\/abuzoustojchivye-vps\/\"   title=\"KVM\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"4428\">KVM<\/a> dodano wst\u0119pne wsparcie dla uruchamiania system\u00f3w go\u015bci zabezpieczonych za pomoc\u0105 AMD SEV-SNP.\n<li class=\"l\"> Dodano osobny przydzielacz slab bucket, w\u0142\u0105czany przez parametr CONFIG_SLAB_BUCKETS, zapewniaj\u0105cy ochron\u0119 przed atakami przy u\u017cyciu techniki &#171;heap spraying&#187;.\n<li class=\"l\"> W hiperwiza KVM dodano wywo\u0142anie ioctl do wst\u0119pnego przydzielenia pami\u0119ci dla systemu go\u015bcia przed jego faktycznym uruchomieniem.                        <\/ul>\n<li class=\"l\"> <b>Subsystem sieciowy<\/b>\n<ul>\n<li class=\"l\"> Dodano parametr sysctl net.tcp_rto_min_us, za pomoc\u0105 kt\u00f3rego mo\u017cna ustawi\u0107 minimalny czas oczekiwania na retransmisj\u0119 (retransmission timeout) dla gniazd TCP.\n<li class=\"l\"> W narz\u0119dziu ethtool dodano mo\u017cliwo\u015b\u0107 precyzyjnego dostosowania konfiguracji obs\u0142ugi przerwa\u0144 dla interfejs\u00f3w sieciowych korzystaj\u0105cych z interfejsu Net DIM.                      <\/ul>\n<li class=\"l\"> <b>Sprz\u0119t<\/b>\n<ul>\n<li class=\"l\"> W sterowniku AMDGPU w\u0142\u0105czono wst\u0119pn\u0105 obs\u0142ug\u0119 GPU AMD RDNA4 (&#171;GFX12&#187;). Dodano wsparcie dla technologii DCN 4.0.x, GC 12.0, GMC 12.0, SDMA 7.0, MES12 i MMHUB 4.1.\n<li class=\"l\"> W kontynuowanej pracy nad sterownikiem drm (Direct Rendering Manager) Xe dla GPU opartych na architekturze Intel Xe, wykorzystywanych w kartach graficznych Intel rodziny Arc oraz w zintegrowanej grafice, pocz\u0105wszy od procesor\u00f3w Tiger Lake, poprawiono wsparcie dla GPU opartych na mikroarchitekturach Battlemage, Arrow Lake i Lunar Lake.\n<li class=\"l\"> W podsystemie DRM (Direct Rendering Manager) przepisano obs\u0142ug\u0119 parametr\u00f3w EDID (Extended Display Identification Data) dostarczanych przez monitor.\n<li class=\"l\"> W sterowniku i915 dodano wsparcie dla GPU Battlemage Xe2 oraz w\u0142\u0105czono domy\u015blny tryb CMRR (Content Match Refresh Rate).\n<li class=\"l\"> W sterowniku DRM msm (GPU Qualcomm Adreno) dodano wsparcie dla platformy SM7150 oraz GPU X185 i a505.\n<li class=\"l\"> Dodano wsparcie dla paneli ekranowych Lincoln Tech Sol LCD185-101CT, Microtips Technology 13-101HIEBCAF0-C, Microtips Technology MF-103HIEB0GA0, BOE nv110wum-l60, IVO t109nw41, WL-355608-A8, PrimeView PM070WL4, Lincoln Technologies LCD197, Ortustech COM35H3P70ULC, AUO G104STN01, K&#038;d kd101ne3-40ti.\n<li class=\"l\"> W podsystemie d\u017awi\u0119kowym dodano wsparcie dla uk\u0142ad\u00f3w i kodek\u00f3w Intel Panther Lake, Asahi Kasei AK4619, Cirrus Logic CS530x, Everest Semiconductors ES8311, NXP i.MX95, LPC32xx, Qualcomm LPASS v2.5, WCD937x, Realtek RT1318, RT1320 i Texas Instruments PCM5242.\n<li class=\"l\"> Wprowadzono ko\u0144cow\u0105 seri\u0119 zmian, kt\u00f3re zapewniaj\u0105 wsparcie dla ARM SoC Snapdragon X Elite, w kt\u00f3rym u\u017cywany jest w\u0142asny 12-rdzeniowy CPU Qualcomm Oryon oraz GPU Qualcomm Adreno. Chip jest skierowany do zastosowania w laptopach i PC, przewy\u017cszaj\u0105c w wielu testach wydajno\u015bci chipy Apple M3 oraz Intel Core Ultra 155H. Zmiany wprowadzone w j\u0105drze 6.11 zwi\u0105zane s\u0105 z obs\u0142ug\u0105 GPU Adreno X1-85 oraz zarz\u0105dzaniem zu\u017cyciem energii. Z urz\u0105dze\u0144 opartych na SoC Snapdragon X Elite zg\u0142oszono wsparcie dla laptop\u00f3w ASUS Vivobook S15 oraz Lenovo Yoga Slim7x.                                  <\/ul>\n<\/ul>\n<p>Jednocze\u015bnie latynoameryka\u0144ski Fundusz Wolnego Oprogramowania stworzy\u0142 wersj\u0119 ca\u0142kowicie wolnego j\u0105dra 6.11 &#8212; Linux-libre 6.10-gnu, oczyszczon\u0105 z element\u00f3w firmware i sterownik\u00f3w zawieraj\u0105cych niewolne komponenty lub fragmenty kodu, kt\u00f3rych zastosowanie jest ograniczone przez producenta. W wydaniu 6.11 zaktualizowano kod prasowania blob\u00f3w w sterownikach mdgpu, adreno, vgxy61, atomisp, btnxpuart, prueth i tas2781. Przeprowadzono czyszczenie nowych sterownik\u00f3w amdgpu isp, tn40, rtl8192du, cs40l50, rt1320 i pcie-rcar-gen4. Wykonano czyszczenie nazw blob\u00f3w w plikach dts (devicetree) dla architektury Aarch64. Dodano wersj\u0119 prymityw\u00f3w do \u0142adowania firmware, kt\u00f3ra nie generuje ostrze\u017ce\u0144 i zapyta\u0144 (nowait-nowarn). Dodano kod do identyfikacji prymityw\u00f3w \u0142adowania firmware w kodzie w j\u0119zyku Rust.<br \/>\n<br \/>\u0179r\u00f3d\u0142o: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=61869\">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 6.11. \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 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0439 \u0430\u0442\u043e\u043c\u0430\u0440\u043d\u043e\u0439 \u0437\u0430\u043f\u0438\u0441\u0438 \u043d\u0430 \u0431\u043b\u043e\u0447\u043d\u043e\u043c \u0443\u0440\u043e\u0432\u043d\u0435, \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0439 bind() \u0438 listen() \u0432 io_uring, \u043d\u043e\u0432\u044b\u0439 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043e\u043a \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u044b\u0445 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0439, \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0437\u0430\u043f\u0438\u0441\u0438 \u0432 \u043e\u0442\u0437\u0435\u0440\u043a\u0430\u043b\u0435\u043d\u043d\u044b\u0435 \u0432 \u043f\u0430\u043c\u044f\u0442\u044c \u0438\u0441\u043f\u043e\u043b\u043d\u044f\u0435\u043c\u044b\u0435 \u0444\u0430\u0439\u043b\u044b, \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0438\u044f \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u043e\u0432 \u0431\u043b\u043e\u0447\u043d\u044b\u0445 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Rust, \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u044f \u0432\u044b\u0437\u043e\u0432\u0430 getrandom(), \u043d\u043e\u0432\u0430\u044f [&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-119836","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 6.11.\" \/>\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-6-11\" \/>\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 6.11 | 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 6.11.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/pl\/blog\/news\/reliz-yadra-linux-6-11\" \/>\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=\"2024-09-16T13:43:01+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2024-09-16T13:43:01+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 6.11 | ProHoster","description":"Po dw\u00f3ch miesi\u0105cach prac Linus Torvalds zaprezentowa\u0142 wydanie j\u0105dra Linux 6.11.","canonical_url":"https:\/\/prohoster.info\/pl\/blog\/news\/reliz-yadra-linux-6-11","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 6.11 | 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 6.11.","og:url":"https:\/\/prohoster.info\/pl\/blog\/news\/reliz-yadra-linux-6-11","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":"2024-09-16T13:43:01+00:00","article:modified_time":"2024-09-16T13:43:01+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"119836","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":"default","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":"2026-02-09 17:33:24","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2026-01-23 06:34:19","updated":"2026-02-09 17:33:24","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\/119836","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=119836"}],"version-history":[{"count":2,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/posts\/119836\/revisions"}],"predecessor-version":[{"id":164306,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/posts\/119836\/revisions\/164306"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/media?parent=119836"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/categories?post=119836"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/tags?post=119836"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}