{"id":96477,"date":"2020-10-12T13:42:06","date_gmt":"2020-10-12T11:42:06","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/reliz-yadra-linux-5-9"},"modified":"2020-10-12T13:42:06","modified_gmt":"2020-10-12T11:42:06","slug":"reliz-yadra-linux-5-9","status":"publish","type":"post","link":"https:\/\/prohoster.info\/pl\/blog\/news\/reliz-yadra-linux-5-9","title":{"rendered":"Wydanie j\u0105dra Linux 5.9","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Po dw\u00f3ch miesi\u0105cach prac Linus Torvalds <noindex><a rel=\"nofollow\" href=\"https:\/\/lkml.org\/lkml\/2020\/10\/11\/275\">przedstawi\u0142<\/a><\/noindex> wyda\u0142 j\u0105dro <noindex><a rel=\"nofollow\" href=\"https:\/\/kernel.org\/\">Linux 5.9<\/a><\/noindex>. W\u015br\u00f3d najbardziej zauwa\u017calnych zmian: ograniczenie importu symboli z modu\u0142\u00f3w w\u0142asno\u015bciowych do modu\u0142\u00f3w GPL, przyspieszenie operacji zmiany kontekstu za pomoc\u0105 instrukcji procesora FSGSBASE, wsparcie dla kompresji obrazu j\u0105dra za pomoc\u0105 Zstd, przebudowa priorytet\u00f3w w\u0105tk\u00f3w w j\u0105drze, wsparcie dla protoko\u0142u PRP (Parallel Redundancy Protocol), planowanie z uwzgl\u0119dnieniem przepustowo\u015bci w planowaniu deadline, wst\u0119pne pakowanie stron pami\u0119ci, flaga capability CAP_CHECKPOINT_RESTOR, wywo\u0142anie systemowe close_range(), zwi\u0119kszenie wydajno\u015bci dm-crypt, usuni\u0119cie kodu dla 32-bitowych system\u00f3w go\u015bcinnych Xen PV, nowy mechanizm zarz\u0105dzania pami\u0119ci\u0105 slab, opcja &#171;rescue&#187; w Btrfs, wsparcie dla szyfrowania inline w ext4 i F2FS.<\/p>\n<p>W nowej wersji uwzgl\u0119dniono 16074 poprawek od 2011 programist\u00f3w,<br \/>\nrozmiar \u0142atki &#8212; 62 MB (zmiany dotkn\u0119\u0142y 14548 plik\u00f3w, dodano 782155 linii kodu, usuni\u0119to 314792 linie). Oko\u0142o 45% wszystkich zmian w 5.9<br \/>\nzmian dotyczy sterownik\u00f3w urz\u0105dze\u0144, oko\u0142o 15% zmian dotyczy<br \/>\nzwi\u0105zek z aktualizacj\u0105 kodu specyficznego dla architektur sprz\u0119towych, 13%<br \/>\ndotyczy stosu sieciowego, 3% &#8212; system\u00f3w plik\u00f3w, a 3% z wewn\u0119trznymi<br \/>\npodsystemami j\u0105dra.<\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/kernelnewbies.org\/Linux_5.9\">Podstawowe<\/a><\/noindex> <noindex><a rel=\"nofollow\" href=\"https:\/\/lwn.net\/Articles\/828385\/\">nowo\u015bci<\/a><\/noindex>:<\/p>\n<ul>\n<li class=\"l\"> <b>Pami\u0119\u0107 i us\u0142ugi systemowe<\/b>\n<ul>\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=53485\">Zwi\u0119kszona<\/a><\/noindex> ochrona przed u\u017cywaniem warstw GPL do wi\u0105zania w\u0142asno\u015bciowych sterownik\u00f3w z komponentami j\u0105dra dost\u0119pnymi tylko dla modu\u0142\u00f3w na licencji GPL. Flaga TAINT_PROPRIETARY_MODULE teraz dziedziczy si\u0119 we wszystkich modu\u0142ach importuj\u0105cych symbole z modu\u0142\u00f3w z t\u0105 flag\u0105. Je\u015bli modu\u0142 GPL spr\u00f3buje zaimportowa\u0107 symbole z modu\u0142u nie-GPL, to ten modu\u0142 GPL dziedziczy etykiet\u0119 TAINT_PROPRIETARY_MODULE i nie b\u0119dzie m\u00f3g\u0142 uzyskiwa\u0107 dost\u0119pu do komponent\u00f3w j\u0105dra dost\u0119pnych tylko dla modu\u0142\u00f3w na licencji GPL, nawet je\u015bli wcze\u015bniej importowa\u0142 symbole z kategorii &#171;gplonly&#187;. Blokada wsteczna (eksport tylko EXPORT_SYMBOL_GPL w modu\u0142ach importuj\u0105cych EXPORT_SYMBOL_GPL), kt\u00f3ra mog\u0142a zak\u0142\u00f3ci\u0107 dzia\u0142anie w\u0142asno\u015bciowych sterownik\u00f3w, nie zosta\u0142a zrealizowana (dziedziczy si\u0119 tylko flaga modu\u0142u w\u0142asno\u015bciowego, ale nie powi\u0105zanie GPL).\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=facdaa917c4d5a376d09d25865f5a863f906234a\">Dodano<\/a><\/noindex> wsparcie dla mechanizmu kcompactd dla <noindex><a rel=\"nofollow\" href=\"https:\/\/lwn.net\/Articles\/817905\/\">prognozowanego pakowania stron pami\u0119ci<\/a><\/noindex> w tle, umo\u017cliwiaj\u0105c zwi\u0119kszenie liczby du\u017cych stron pami\u0119ci dost\u0119pnych dla j\u0105dra. Wst\u0119pne szacunki pokazuj\u0105, \u017ce pakowanie w tle z minimalnymi kosztami transakcyjnymi pozwala na 70-80 razy zmniejszy\u0107 op\u00f3\u017anienia przy alokacji du\u017cych stron pami\u0119ci (huge-page) w por\u00f3wnaniu do wcze\u015bniej stosowanego mechanizmu pakowania, aktywowanego w razie potrzeby (on-demand). Dodano sysctl vm.compaction_proactiveness, aby ustali\u0107 granice zewn\u0119trznej fragmentacji, kt\u00f3r\u0105 zapewni kcompactd.\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=48f7ddf785af24aa380f3282d8d4400883d0099e\">Dodano<\/a><\/noindex> wsparcie dla kompresji obrazu j\u0105dra z wykorzystaniem algorytmu <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=45058\">Zstandard<\/a><\/noindex> (zstd).\n<li class=\"l\"> Dla system\u00f3w x86 zaimplementowano wsparcie instrukcji procesora <noindex><a rel=\"nofollow\" href=\"https:\/\/software.intel.com\/security-software-guidance\/best-practices\/guidance-enabling-fsgsbase\">FSGSBASE<\/a><\/noindex>, pozwalaj\u0105cej na odczyt i modyfikacj\u0119 zawarto\u015bci rejestr\u00f3w FS\/GS z przestrzeni u\u017cytkownika. W j\u0105drze FSGSBASE jest u\u017cywane do przyspieszenia operacji prze\u0142\u0105czania kontekstu poprzez wyeliminowanie zb\u0119dnych operacji zapisu MSR dla GSBASE, a w przestrzeni u\u017cytkownika pozwala unikn\u0105\u0107 zb\u0119dnych wywo\u0142a\u0144 systemowych do zmiany FS\/GS.\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=a7e1f67ed29f\">Dodano<\/a><\/noindex> parametr &#171;allow_writes&#187;, pozwalaj\u0105cy zakaza\u0107 zmian rejestr\u00f3w MSR procesora z przestrzeni u\u017cytkownika i ograniczy\u0107 dost\u0119p do zawarto\u015bci danych rejestr\u00f3w operacjami odczytu, poniewa\u017c zmiana MSR mo\u017ce prowadzi\u0107 do problem\u00f3w. Domy\u015blnie zapisy nie s\u0105 jeszcze zabronione, a zmiany MSR s\u0105 rejestrowane w logu, ale w przysz\u0142o\u015bci planowane jest przej\u015bcie na tryb tylko do odczytu jako domy\u015blny.\n<li class=\"l\"> W interfejsie asynchronicznego wej\u015bcia\/wyj\u015bcia <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=50631#io_uring\">io_uring<\/a><\/noindex> dodano pe\u0142ne wsparcie dla asynchronicznych operacji buforowanego odczytu, kt\u00f3re nie wymagaj\u0105 anga\u017cowania w\u0105tk\u00f3w j\u0105dra. Wsparcie dla zapisu oczekiwane jest w nast\u0119pnej wersji.\n<li class=\"l\"> W planowaniu wej\u015bcia\/wyj\u015bcia deadline <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=65065fd70b5a\">zosta\u0142a wdro\u017cona<\/a><\/noindex> planowanie z uwzgl\u0119dnieniem przepustowo\u015bci, <noindex><a rel=\"nofollow\" href=\"https:\/\/lwn.net\/Articles\/821578\/\">umo\u017cliwiaj\u0105ce<\/a><\/noindex> podejmowa\u0107 prawid\u0142owe decyzje w systemach asymetrycznych, takich jak systemy ARM oparte na architekturach  <noindex><a rel=\"nofollow\" href=\"https:\/\/www.arm.com\/why-arm\/technologies\/dynamiq\">DynamIQ<\/a><\/noindex> i big.LITTLE, \u0142\u0105cz\u0105ce w jednym chipie pot\u0119\u017cne i mniej wydajne, energooszcz\u0119dne rdzenie CPU. W szczeg\u00f3lno\u015bci nowy tryb pozwala unikn\u0105\u0107 niesp\u00f3jno\u015bci w planowaniu, kiedy wolne rdzenie CPU nie maj\u0105 odpowiednich zasob\u00f3w do wykonania zadania w wyznaczonym terminie.\n<li class=\"l\"> Model zu\u017cycia energii w j\u0105drze (framework Energy Model) teraz  <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/linus\/7b7570ad0d76\">opisuje<\/a><\/noindex> nie tylko zachowanie zu\u017cycia energii CPU, ale tak\u017ce obejmuje urz\u0105dzenia peryferyjne.\n<li class=\"l\"> Zrealizowano wywo\u0142anie systemowe close_range(), kt\u00f3re pozwala procesowi zamkn\u0105\u0107 ca\u0142y zakres otwartych deskryptor\u00f3w plik\u00f3w na raz.\n<li class=\"l\"> Z implementacji tekstowej konsoli i sterownika fbcon <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=53714\">usuni\u0119to kod<\/a><\/noindex>, kt\u00f3ry zapewnia mo\u017cliwo\u015b\u0107 programowego przewijania tekstu wstecz (CONFIG_VGACON_SOFT_SCROLLBACK) o wi\u0119cej ni\u017c obj\u0119to\u015b\u0107 pami\u0119ci wideo trybu tekstowego VGA.\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/lwn.net\/Articles\/818388\/\">Przeprojektowano<\/a><\/noindex> algorytm przydzielania priorytet\u00f3w dla w\u0105tk\u00f3w wewn\u0105trz j\u0105dra. Nowa wersja zapewnia lepsz\u0105 sp\u00f3jno\u015b\u0107 we wszystkich podsystemach j\u0105dra przy przydzielaniu priorytet\u00f3w dla zada\u0144 czasu rzeczywistego.\n<li class=\"l\"> Dodano sysctl <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=1f73d1abe5836bd8ffe747ff5cb7561b17ce5bc6\">sched_uclamp_util_min_rt_default<\/a><\/noindex>  do zarz\u0105dzania parametrami wymuszania cz\u0119stotliwo\u015bci CPU dla zada\u0144 czasu rzeczywistego (na przyk\u0142ad mo\u017cna na bie\u017c\u0105co zmienia\u0107 zachowanie podczas wykonywania zada\u0144 czasu rzeczywistego, aby oszcz\u0119dza\u0107 energi\u0119 po prze\u0142\u0105czeniu na zasilanie z akumulatora lub w systemach mobilnych).\n<li class=\"l\"> Przeprowadzono przygotowanie do implementacji wsparcia dla technologii Transparent Huge Pages w pami\u0119ci podr\u0119cznej stron.\n<li class=\"l\"> W mechanizmie fanotify wprowadzono nowe flagi FAN_REPORT_NAME i FAN_REPORT_DIR_FID do przesy\u0142ania informacji o nazwie nadrz\u0119dnej i unikalnym identyfikatorze FID podczas zdarze\u0144 tworzenia, usuwania lub przenoszenia element\u00f3w katalogu oraz obiekt\u00f3w niezwi\u0105zanych z katalogami.\n<li class=\"l\"> Dla cgroups <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=52790\">zrealizowano<\/a><\/noindex> nowy kontroler przydzielania pami\u0119ci slab (kontroler pami\u0119ci slab), kt\u00f3ry wyr\u00f3\u017cnia si\u0119 przeniesieniem rachunkowo\u015bci slab z poziomu stron pami\u0119ci na poziom obiekt\u00f3w j\u0105dra, co pozwala na wsp\u00f3\u0142dzielenie stron slab w r\u00f3\u017cnych cgroup, zamiast przydzielania oddzielnych pami\u0119ci podr\u0119cznych slab dla ka\u017cdej cgroup. Proponowane podej\u015bcie pozwala zwi\u0119kszy\u0107 efektywno\u015b\u0107 wykorzystania slab, zmniejszy\u0107 o 30-45% rozmiar u\u017cywanej pami\u0119ci dla slab, znacznie zmniejszy\u0107 ca\u0142kowite zu\u017cycie pami\u0119ci przez j\u0105dro i zmniejszy\u0107 fragmentacj\u0119 pami\u0119ci.\n<li class=\"l\"> W podsystemie d\u017awi\u0119ku <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=53404\">ALSA<\/a><\/noindex> i  <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=53508\">stanie USB<\/a><\/noindex>, zgodnie z <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=53342\">niedawno przyj\u0119tymi<\/a><\/noindex> wytycznymi dotycz\u0105cymi u\u017cywania inkluzywnej terminologii w j\u0105drze Linux, przeprowadzono czyszczenie z niepoprawnych politycznie termin\u00f3w. Kod zosta\u0142 oczyszczony z u\u017cycia s\u0142\u00f3w \u201eslave\u201d, \u201emaster\u201d, \u201eblacklist\u201d i \u201ewhitelist\u201d.\n<\/ul>\n<li class=\"l\"> <b>Wirtualizacja i bezpiecze\u0144stwo<\/b>\n<ul>\n<li class=\"l\"> Podczas kompilacji j\u0105dra z u\u017cyciem kompilatora Clang <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/linus\/f0fe00d4972a\">pojawi\u0142a si\u0119<\/a><\/noindex> mo\u017cliwo\u015bci\u0105 ustawienia (CONFIG_INIT_STACK_ALL_ZERO) automatycznej inicjalizacji zmiennych na warto\u015b\u0107 zerow\u0105 we wszystkich zmiennych przechowywanych na stosie (podczas kompilacji mo\u017cna ustawi\u0107 \u201e-ftrivial-auto-var-init=zero\u201d).\n<li class=\"l\"> W podsystemie seccomp, podczas korzystania z trybu monitorowania procesu w przestrzeni u\u017cytkownika, <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=c97aedc52dce4c87d4c44de4e6af941cd102600c\">dodano<\/a><\/noindex> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=7cf97b12545503992020796c74bd84078eb39299\">mo\u017cliwo\u015b\u0107<\/a><\/noindex> podstawienia w monitorowanym procesie deskryptor\u00f3w plik\u00f3w, aby w pe\u0142ni emulowa\u0107 wywo\u0142ania systemowe prowadz\u0105ce do tworzenia deskryptor\u00f3w plik\u00f3w. Funkcjonalno\u015b\u0107 ta jest poszukiwana w systemach izolowanych kontener\u00f3w i realizacji sandbox dla Chrome.\n<li class=\"l\"> Dla architektur xtensa i csky dodano wsparcie dla ograniczania wywo\u0142a\u0144 systemowych za pomoc\u0105 podsystemu seccomp. Dla xtensa dodatkowo zrealizowano wsparcie dla mechanizmu audytu.\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/linus\/74858abbb103\">Dodano<\/a><\/noindex> nowy flaga capability CAP_CHECKPOINT_RESTORE, pozwalaj\u0105ca na uzyskanie dost\u0119pu do mo\u017cliwo\u015bci zwi\u0105zanych z zamra\u017caniem i przywracaniem stanu proces\u00f3w bez przekazywania dodatkowych uprawnie\u0144.\n<li class=\"l\"> W GCC 11 zrealizowano wszystkie mo\u017cliwo\u015bci niezb\u0119dne dla<br \/>\nnarz\u0119dzia do debugowania KCSAN (Kernel Concurrency Sanitizer), przeznaczonego do dynamicznego wykrywania stan\u00f3w wy\u015bcigowych w j\u0105drze. Tak wi\u0119c, KCSAN mo\u017ce by\u0107 teraz u\u017cywany z j\u0105drami skompilowanymi w GCC. <\/p>\n<li class=\"l\"> Dla AMD Zen i nowszych modeli CPU <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/linus\/dea286bb71baded7d2fb4f090e3b9fd2c1ccac58\">dodano<\/a><\/noindex> wsparcie dla technologii P2PDMA, pozwalaj\u0105cej na u\u017cycie DMA do bezpo\u015bredniego przesy\u0142ania danych mi\u0119dzy pami\u0119ci\u0105 dw\u00f3ch urz\u0105dze\u0144 pod\u0142\u0105czonych do magistrali PCI.\n<li class=\"l\"> W dm-crypt dodano tryb umo\u017cliwiaj\u0105cy skr\u00f3cenie op\u00f3\u017anie\u0144, wykonuj\u0105c przetwarzanie kryptograficzne danych bez wykorzystania kolejek roboczych. Wskazany tryb jest r\u00f3wnie\u017c niezb\u0119dny do prawid\u0142owego dzia\u0142ania z <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=52092\">strefowanymi<\/a><\/noindex> urz\u0105dzeniami blokowymi (urz\u0105dzenia z obszarami, kt\u00f3re musz\u0105 by\u0107 zapisywane sekwencyjnie z aktualizacj\u0105 ca\u0142ej grupy blok\u00f3w). Przeprowadzono prace nad zwi\u0119kszeniem przepustowo\u015bci i zmniejszeniem op\u00f3\u017anie\u0144 w dm-crypt.\n<li class=\"l\"> Usuni\u0119to kod do obs\u0142ugi 32-bitowych system\u00f3w go\u015bcinnych dzia\u0142aj\u0105cych w trybie parawirtualizacji pod zarz\u0105dzaniem hipernadzorcy Xen. U\u017cytkownicy takich system\u00f3w powinni przej\u015b\u0107 na u\u017cycie 64-bitowych j\u0105der w \u015brodowiskach go\u015bcinnych lub zastosowa\u0107 do uruchamiania \u015brodowisk zamiast parawirtualizacji (PV) tryby pe\u0142nej (HVM) lub po\u0142\u0105czonej (PVH) wirtualizacji.\n<\/ul>\n<li class=\"l\"> <b>Podsystem dyskowy, wej\u015bcie\/wyj\u015bcie i systemy plik\u00f3w<\/b>\n<ul>\n<li class=\"l\"> W systemie plik\u00f3w Btrfs <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/linus\/74ef00185eb864252156022ff129b01549504175\">zrealizowano<\/a><\/noindex> opcja montowania \u201erescue\u201d, kt\u00f3ra ujednolica dost\u0119p do wszystkich innych opcji odzyskiwania. Usuni\u0119to wsparcie dla opcji \u201ealloc_start\u201d i \u201esubvolrootid\u201d, a opcja \u201einode_cache\u201d zosta\u0142a oznaczona jako przestarza\u0142a. Przeprowadzono optymalizacj\u0119 wydajno\u015bci, szczeg\u00f3lnie zauwa\u017calnie przyspieszone zosta\u0142y operacje fsync(). <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=137c541821a83debb63b3fa8abdd1cbc41bdf3a1\">Dodano<\/a><\/noindex> mo\u017cliwo\u015b\u0107 wykorzystania alternatywnych typ\u00f3w sum kontrolnych, r\u00f3\u017cnych od CRC32c.\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=690b25675f5c9c082cb1b902e6d21dd956754e7e\">Dodano<\/a><\/noindex> mo\u017cliwo\u015b\u0107 u\u017cycia inline-szyfrowania (Inline Encryption) w systemach plik\u00f3w ext4 i F2FS, do aktywacji kt\u00f3rego przewidziano opcj\u0119 montowania \u201einlinecrypt\u201d. Tryb inline-szyfrowania pozwala wykorzysta\u0107 wbudowane w kontroler pami\u0119ci mechanizmy szyfrowania, kt\u00f3re dokonuj\u0105 przezroczystego szyfrowania i deszyfrowania wej\u015bcia\/wyj\u015bcia.\n<li class=\"l\"> W XFS  <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=5631c5e0eb9035d92ceb20fcd9cdb7779a3f5cc7\">zapewnione<\/a><\/noindex>  czyszczenie inode (flush) w ca\u0142kowicie asynchronicznym trybie, nie blokuj\u0105c proces\u00f3w podczas wykonywania operacji czyszczenia pami\u0119ci. Rozwi\u0105zano stary problem z kwotami, przez kt\u00f3ry nieprawid\u0142owo \u015bledzono ostrze\u017cenia o przekroczeniu mi\u0119kkiego limitu i ogranicze\u0144 liczby inode. Ujednolicono realizacj\u0119 wsparcia DAX dla ext4 i xfs.\n<li class=\"l\"> W Ext4 <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=cfd73237722135807967f389bcbda558a60a30d6\">zrealizowano<\/a><\/noindex> wyprzedzaj\u0105ce \u0142adowanie bitmap rozk\u0142adu blok\u00f3w. W po\u0142\u0105czeniu z ograniczeniem skanowania nieinicjowanych grup, optymalizacja pozwoli\u0142a skr\u00f3ci\u0107 czas montowania bardzo du\u017cych partycji.\n<li class=\"l\"> W F2FS <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/linus\/9af846486d781a63de025a5f502c515268e48790\">dodano<\/a><\/noindex> ioctl F2FS_IOC_SEC_TRIM_FILE, umo\u017cliwiaj\u0105cy wykorzystanie komend TRIM\/discard do fizycznego zerowania wskazanych danych w pliku, na przyk\u0142ad do usuwania kluczy dost\u0119pu bez pozostawiania na dysku danych residualnych.<br \/>\nW F2FS r\u00f3wnie\u017c <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/linus\/0e5e81114de1c4ac32e36f057256653a04f27a33\">dodano<\/a><\/noindex> nowy tryb zbierania \u015bmieci GC_URGENT_LOW, dzia\u0142aj\u0105cy bardziej agresywnie poprzez wy\u0142\u0105czenie niekt\u00f3rych kontroli stanu bezczynno\u015bci (idle) przed uruchomieniem zbieracza \u015bmieci.<\/p>\n<li class=\"l\"> W bcache rozmiar bucket_size dla rozszerze\u0144 zwi\u0119kszono z 16 do 32 bit\u00f3w w ramach przygotowa\u0144 do zapewnienia mo\u017cliwo\u015bci stosowania dla pami\u0119ci podr\u0119cznej zr\u00f3\u017cnicowanych urz\u0105dze\u0144.\n<li class=\"l\"> W podsystemie SCSI dodano mo\u017cliwo\u015b\u0107 korzystania z inline-szyfrowania na podstawie wbudowanych \u015brodk\u00f3w sprz\u0119towego szyfrowania, oferowanych przez kontrolery UFS (<noindex><a rel=\"nofollow\" href=\"https:\/\/www.kernel.org\/doc\/Documentation\/scsi\/ufs.txt\">Universal Flash Storage<\/a><\/noindex>).\n<li class=\"l\"> Dodano nowy parametr wiersza polece\u0144 j\u0105dra \u201edebugfs\u201d, umo\u017cliwiaj\u0105cy zarz\u0105dzanie dost\u0119pno\u015bci\u0105 tej samej pseudopami\u0119ci.\n<li class=\"l\"> W kliencie NFSv4.2 zapewniono wsparcie dla rozszerzonych atrybut\u00f3w plik\u00f3w (xattr).\n<li class=\"l\"> W dm-dust <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=0c248ea27fc88cf8a3035ba0ed75b210be9abf80\">dodano<\/a><\/noindex> interfejs do jednoczesnego wy\u015bwietlania listy wszystkich wykrytych bad blok\u00f3w na dysku (\u201edmsetup message dust1 0 listbadblocks\u201d).\n<li class=\"l\"> Dla md\/raid5 dodano parametr \/sys\/block\/md1\/md\/stripe_size do konfiguracji rozmiaru bloku STRIPE.\n<li class=\"l\"> Dla urz\u0105dze\u0144 magazynuj\u0105cych NVMe <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=240e6ee272c07a2636dfc7d65f5bbb18377c49e5\">dodano<\/a><\/noindex> wsparcie dla komend do strefowania pami\u0119ci (ZNS, NVM Express Zoned Namespace), umo\u017cliwiaj\u0105ce podzia\u0142 przestrzeni na strefy, stanowi\u0105ce grupy blok\u00f3w, dla pe\u0142niejszego zarz\u0105dzania rozmieszczeniem danych na dysku.\n<\/ul>\n<li class=\"l\"> <b>Subsystem sieciowy<\/b>\n<ul>\n<li class=\"l\"> W Netfilter <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=f53b9b0bdc59c0823679f2e3214e0d538f5951b9\">dodano<\/a><\/noindex> mo\u017cliwo\u015b\u0107 odrzucania pakiet\u00f3w na etapie przed sprawdzeniem trasowania (wyra\u017cenie REJECT mo\u017ce by\u0107 u\u017cywane nie tylko w \u0142a\u0144cuchach INPUT, FORWARD i OUTPUT, ale tak\u017ce na etapie PREROUTING dla icmp i tcp).\n<li class=\"l\"> W nftables  <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/linus\/8e6cf365e1d5c70e275a77a3c5ad7e3dc685474c\">dodano<\/a><\/noindex> mo\u017cliwo\u015b\u0107 audytu zdarze\u0144 zwi\u0105zanych ze zmian\u0105 konfiguracji.\n<li class=\"l\"> W nftables w interfejsie API netlink <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=74cccc3d38438b346e40a4f8133cff3f0839ff84\">dodano<\/a><\/noindex> wsparcie dla anonimowych \u0142a\u0144cuch\u00f3w, kt\u00f3rych nazwy s\u0105 dynamicznie nadawane przez j\u0105dro. Po usuni\u0119ciu regu\u0142y zwi\u0105zanej z anonimowym \u0142a\u0144cuchem, sam \u0142a\u0144cuch r\u00f3wnie\u017c zostaje usuni\u0119ty.\n<li class=\"l\"> W BPF dodano wsparcie dla iterator\u00f3w do przeszukiwania, filtrowania i modyfikacji element\u00f3w tablic asocjacyjnych (map) bez kopiowania danych do przestrzeni u\u017cytkownika. Iteratory mog\u0105 by\u0107 u\u017cywane dla gniazd TCP i UDP, co pozwala programom BPF przeszukiwa\u0107 listy otwartych gniazd i wydobywa\u0107 z nich potrzebne informacje.\n<li class=\"l\"> Dodano nowy typ program\u00f3w BPF BPF_PROG_TYPE_SK_LOOKUP, uruchamianych w momencie, gdy j\u0105dro szuka odpowiedniego gniazda nas\u0142uchuj\u0105cego dla przychodz\u0105cego po\u0142\u0105czenia. Dzi\u0119ki temu typowi programu BPF mo\u017cna tworzy\u0107 handlery podejmuj\u0105ce decyzje, z kt\u00f3rym gniazdem po\u0142\u0105czy\u0107 nowe po\u0142\u0105czenie, bez ogranicze\u0144 wynikaj\u0105cych z wywo\u0142ania systemowego bind(). Na przyk\u0142ad, mo\u017cna zorganizowa\u0107 powi\u0105zanie jednego gniazda z zakresem adres\u00f3w lub port\u00f3w. Ponadto, w bpf_setsockopt() dodano wsparcie dla flagi SO_KEEPALIVE oraz umo\u017cliwiono ustawienie handler\u00f3w BPF_CGROUP_INET_SOCK_RELEASE, wywo\u0142ywanych przy zwalnianiu gniazda.\n<li class=\"l\"> Zaimplementowano wsparcie dla protoko\u0142u <noindex><a rel=\"nofollow\" href=\"https:\/\/en.wikipedia.org\/wiki\/Parallel_Redundancy_Protocol\">PRP<\/a><\/noindex> (Parallel Redundancy Protocol), kt\u00f3ry umo\u017cliwia na bazie Ethernet realizacj\u0119 przejrzystego dla aplikacji prze\u0142\u0105czania na zapasowy kana\u0142 w przypadku awarii jakichkolwiek komponent\u00f3w sieci.\n<li class=\"l\"> W stosie mac80211 <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=f96622749a67d40ad5efe8a58d5fc95313097aa0\">dodano<\/a><\/noindex> wsparcie dla czteroetapowego uzgadniania kana\u0142u WPA\/WPA2-PSK w trybie punktu dost\u0119powego.\n<li class=\"l\"> Dodano mo\u017cliwo\u015b\u0107 prze\u0142\u0105czania planowania qdisc (queuing discipline) na domy\u015blne u\u017cycie algorytmu zarz\u0105dzania kolejkami FQ-PIE (Flow Queue PIE), maj\u0105cego na celu zmniejszenie negatywnego wp\u0142ywu po\u015bredniego buforowania pakiet\u00f3w na sprz\u0119cie sieciowym (bufferbloat) w sieciach z modemami kablowymi.\n<li class=\"l\"> Dodano nowe mo\u017cliwo\u015bci w MPTCP (MultiPath TCP), rozszerzeniu protoko\u0142u TCP, kt\u00f3re umo\u017cliwia jednoczesne przesy\u0142anie pakiet\u00f3w przez kilka tras za po\u015brednictwem r\u00f3\u017cnych interfejs\u00f3w sieciowych przypisanych do r\u00f3\u017cnych adres\u00f3w IP. Dodano wsparcie dla syn cookie, DATA_FIN, automatycznego dostosowywania bufor\u00f3w, diagnostyki gniazd oraz u\u017cywania flag REUSEADDR, REUSEPORT i V6ONLY w setsockopt.\n<li class=\"l\"> Dla wirtualnych tabel routingu VRF (Virtual Routing and Forwarding), kt\u00f3re pozwalaj\u0105 na organizowanie pracy kilku domen routingu w jednym systemie, wprowadzono tryb \u201estrict\u201d. W tym trybie wirtualna tabela mo\u017ce by\u0107 skojarzona tylko z tabel\u0105 routingu, kt\u00f3ra nie jest u\u017cywana w innych wirtualnych tabelach.\n<li class=\"l\"> W bezprzewodowym sterowniku ath11k <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=c5625abaf8266307d2237a75143b27be7afafcdf\">dodano<\/a><\/noindex> wsparcie dla cz\u0119stotliwo\u015bci 6 GHz i <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=9d11b7bff9508101d05f06e461ab81b5f0dc90ae\">skanowania spektralnego.<\/a><\/noindex>.\n<\/ul>\n<li class=\"l\"> <b>Sprz\u0119t<\/b>\n<ul>\n<li class=\"l\"> Usuni\u0119to kod dla wsparcia architektury UniCore, opracowanej w mikroprocesorowym centrum Uniwersytetu Peki\u0144skiego i w\u0142\u0105czonej do j\u0105dra Linuksa w 2011 roku. Ta architektura od 2014 roku jest nieaktualizowana i nie ma wsparcia w GCC.\n<li class=\"l\"> Dla architektury RISC-V wprowadzono wsparcie dla <noindex><a rel=\"nofollow\" href=\"https:\/\/www.kernel.org\/doc\/html\/v4.17\/dev-tools\/kcov.html\">kcov<\/a><\/noindex> (interfejs debugfs do analizy pokrycia kodu j\u0105dra), kmemleak (system wykrywania wyciek\u00f3w pami\u0119ci), ochrony stosu, znacznik\u00f3w przej\u015bcia oraz operacji bezczasowych (niezale\u017cny od sygna\u0142\u00f3w timera wielozadaniowo\u015b\u0107).\n<li class=\"l\"> Dla architektury PowerPC wprowadzono wsparcie dla kolejek spinlock, co znacznie zwi\u0119kszy\u0142o wydajno\u015b\u0107 w sytuacjach konflikt\u00f3w blokad.\n<li class=\"l\"> Dla architektur ARM i ARM64 domy\u015blnie wykorzystano mechanizm regulacji cz\u0119stotliwo\u015bci procesora <noindex><a rel=\"nofollow\" href=\"https:\/\/www.kernel.org\/doc\/Documentation\/cpu-freq\/governors.txt\">schedutil<\/a><\/noindex> (cpufreq governor), kt\u00f3ry do podejmowania decyzji o zmianie cz\u0119stotliwo\u015bci bezpo\u015brednio korzysta z informacji od planisty zada\u0144 i mo\u017ce natychmiast kontaktowa\u0107 si\u0119 z sterownikami cpufreq w celu natychmiastowej zmiany cz\u0119stotliwo\u015bci, dostosowuj\u0105c parametry pracy CPU do bie\u017c\u0105cego obci\u0105\u017cenia.\n<li class=\"l\"> W sterowniku DRM i915 dla kart graficznych Intel dodano wsparcie dla chip\u00f3w opartych na mikroarchitekturze <noindex><a rel=\"nofollow\" href=\"https:\/\/en.wikipedia.org\/wiki\/Rocket_Lake\">Rocket Lake<\/a><\/noindex> i dodano pocz\u0105tkowe wsparcie dla dyskretnych kart <noindex><a rel=\"nofollow\" href=\"https:\/\/www.theverge.com\/2020\/1\/9\/21058422\/intel-dg1-discrete-gpu-graphics-card-announcement-ces-2020\">Intel Xe DG1.<\/a><\/noindex>.\n<li class=\"l\"> W sterowniku amdgpu dodano pocz\u0105tkowe wsparcie dla GPU AMD <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/torvalds\/c\/206739119508d5ab4b42ab480ff61a7e6cd72d7c\">Navi 21<\/a><\/noindex> (Navy Flounder) i <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/torvalds\/c\/9555152beb1143c85c03f9b9de59863cbbe89f4b\">Navi 22<\/a><\/noindex> (Sienna Cichlid). Dodano wsparcie dla silnik\u00f3w przyspieszaj\u0105cych kodowanie i dekodowanie wideo UVD\/VCE dla GPU Southern Islands (Radeon HD 7000).<br \/>\nDodano w\u0142a\u015bciwo\u015b\u0107 do obracania wy\u015bwietlania o 90, 180 lub 270 stopni. <\/p>\n<p>Ciekawe, \u017ce sterownik dla GPU AMD <noindex><a rel=\"nofollow\" href=\"https:\/\/www.phoronix.com\/scan.php?page=news_item&#038;px=Linux-5.9-AMDGPU-Stats\">jest<\/a><\/noindex> najwi\u0119kszy sterownik w j\u0105drze \u2014 zawiera oko\u0142o 2,71 mln linii kodu, co stanowi oko\u0142o 10% ca\u0142kowitego rozmiaru j\u0105dra (27,81 mln linii). Z tego 1,79 mln linii to automatycznie generowane pliki nag\u0142\u00f3wkowe z danymi dla rejestr\u00f3w GPU, a kod C sk\u0142ada si\u0119 z 366 tysi\u0119cy linii (dla por\u00f3wnania, sterownik Intel i915 zawiera 209 tysi\u0119cy linii, a Nouveau \u2014 149 tysi\u0119cy).<\/p>\n<li class=\"l\"> W sterowniku Nouveau <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=12885ecbfe62df4358d452080d3b8feef54ec8cb\">dodano<\/a><\/noindex> wsparcie dla ramkowej weryfikacji integralno\u015bci za pomoc\u0105 <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/NVIDIA\/open-gpu-doc\/blob\/master\/Display-CRC\/display-crc.txt\">CRC<\/a><\/noindex> (Cyclic Redundancy Checks) w silnikach graficznych GPU NVIDIA. Implementacja opiera si\u0119 na dokumentacji dostarczonej przez firm\u0119 NVIDIA.\n<li class=\"l\"> Dodano sterowniki dla paneli LCD: Frida FRD350H54004, KOE TX26D202VM0BWA, CDTech S070PWS19HP-FC21, CDTech S070SWV29HG-DC44, Tianma TM070JVHG33 i Xingbangda XBD599.\n<li class=\"l\"> W systemie d\u017awi\u0119kowym ALSA dodano wsparcie <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/tiwai\/sound.git\/commit\/?h=for-next&#038;id=951894cf30f417443d9e0eda33312613c2a7edf6\">nowe urz\u0105dzenie<\/a><\/noindex> do kontroli pod\u015bwietlenia przycisk\u00f3w aktywacji mikrofonu i wyciszenia d\u017awi\u0119ku.  <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/tiwai\/sound.git\/commit\/?h=for-next&#038;id=c7440acc859778eed74b223fc41f094133aeaaf0\">nowego urz\u0105dzenia<\/a><\/noindex> do zarz\u0105dzania pod\u015bwietleniem przycisk\u00f3w aktywacji mikrofonu i wyciszenia, a tak\u017ce dodano wsparcie dla nowego sprz\u0119tu, w tym kontrolera <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/tiwai\/sound.git\/commit\/?h=for-next&#038;id=61eee4a7fc406f94e441778c3cecbbed30373c89\">Loongson 7A1000<\/a><\/noindex>.\n<li class=\"l\"> Dodano wsparcie dla platform ARM, urz\u0105dze\u0144 i platform: Pine64 PinePhone v1.2, Lenovo IdeaPad Duet 10.1, ASUS Google Nexus 7, Acer Iconia Tab A500, Qualcomm Snapdragon SDM630 (stosowany w Sony Xperia 10, 10 Plus, XA2, XA2 Plus i XA2 Ultra), Jetson Xavier NX, Amlogic WeTek Core2, Aspeed EthanolX, pi\u0119\u0107 nowych p\u0142ytek opartych na NXP i.MX6, MikroTik RouterBoard 3011, Xiaomi Libra, Microsoft Lumia 950, Sony Xperia Z5, MStar, Microchip Sparx5, Intel Keem Bay, Amazon Alpine v3, Renesas RZ\/G2H.\n<\/ul>\n<\/ul>\n<p>Jednocze\u015bnie latynoameryka\u0144ski Fundusz Wolnego Oprogramowania <noindex><a rel=\"nofollow\" href=\"http:\/\/www.fsfla.org\/ikiwiki\/selibre\/linux-libre\/\">utworzy\u0142a<\/a><\/noindex><br \/>\nwariant <noindex><a rel=\"nofollow\" href=\"http:\/\/www.fsfla.org\/ikiwiki\/selibre\/linux-libre\/\">zupe\u0142nie wolne j\u0105dro 5.9<\/a><\/noindex> \u2014 <noindex><a rel=\"nofollow\" href=\"http:\/\/linux-libre.fsfla.org\/pub\/linux-libre\/releases\/5.9-gnu\/\">Linux-libre 5.9-gnu<\/a><\/noindex>, oczyszczone z element\u00f3w firmware i sterownik\u00f3w zawieraj\u0105cych nieswoiste komponenty lub fragmenty kodu, kt\u00f3rych zastosowanie jest ograniczone przez producenta. W nowym wydaniu zablokowano \u0142adowanie blob\u00f3w w sterownikach dla WiFi rtw8821c i SoC MediaTek mt8183. Zaktualizowano kod czyszczenia blob\u00f3w w sterownikach i podsystemach Habanalabs, Wilc1000, amdgpu, mt7615, i915 CSR, Mellanox mlxsw (Spectrum3), r8169 (rtl8125b-2) oraz x86 touchscreen.<\/p>\n<p><noindex><a rel=\"nofollow\" name=\"link\"><\/a><\/noindex><\/p>\n<p>\u0179r\u00f3d\u0142o: <a \ncontent=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=53830\">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.9. \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: \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0435 \u0438\u043c\u043f\u043e\u0440\u0442\u0430 \u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432 \u0438\u0437 \u043f\u0440\u043e\u043f\u0440\u0438\u0435\u0442\u0430\u0440\u043d\u044b\u0445 \u043c\u043e\u0434\u0443\u043b\u0435\u0439 \u0432 GPL-\u043c\u043e\u0434\u0443\u043b\u0438, \u0443\u0441\u043a\u043e\u0440\u0435\u043d\u0438\u0435 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0439 \u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u043a\u043e\u043d\u0442\u0435\u043a\u0441\u0442\u0430 \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u043d\u043e\u0439 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438 FSGSBASE, \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u0441\u0436\u0430\u0442\u0438\u044f \u043e\u0431\u0440\u0430\u0437\u0430 \u044f\u0434\u0440\u0430 \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 Zstd, \u043f\u0435\u0440\u0435\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u0440\u0430\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u043f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442\u043e\u0432 \u0434\u043b\u044f \u043f\u043e\u0442\u043e\u043a\u043e\u0432 \u0432 \u044f\u0434\u0440\u0435, \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430 PRP (Parallel Redundancy Protocol), \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0441 \u0443\u0447\u0451\u0442\u043e\u043c [&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-96477","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.\" \/>\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-9\" \/>\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.9 | 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.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/pl\/blog\/news\/reliz-yadra-linux-5-9\" \/>\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=\"2020-10-12T11:42:06+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-10-12T11:42:06+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.9 | ProHoster","description":"Po dw\u00f3ch miesi\u0105cach prac Linus Torvalds zaprezentowa\u0142 wydanie j\u0105dra Linux.","canonical_url":"https:\/\/prohoster.info\/pl\/blog\/news\/reliz-yadra-linux-5-9","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.9 | 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.","og:url":"https:\/\/prohoster.info\/pl\/blog\/news\/reliz-yadra-linux-5-9","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":"2020-10-12T11:42:06+00:00","article:modified_time":"2020-10-12T11:42:06+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"96477","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-02-28 10:42:30","updated":"2022-10-03 19:48:34","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\/96477","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=96477"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/posts\/96477\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/media?parent=96477"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/categories?post=96477"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/tags?post=96477"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}