{"id":76046,"date":"2020-03-30T19:42:02","date_gmt":"2020-03-30T17:42:02","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/reliz-yadra-linux-5-6"},"modified":"2020-03-30T19:42:02","modified_gmt":"2020-03-30T17:42:02","slug":"reliz-yadra-linux-5-6","status":"publish","type":"post","link":"https:\/\/prohoster.info\/pl\/blog\/news\/reliz-yadra-linux-5-6","title":{"rendered":"Wydanie j\u0105dra Linux 5.6","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\/3\/29\/379\">przedstawi\u0142<\/a><\/noindex> wyda\u0142 j\u0105dro <noindex><a rel=\"nofollow\" href=\"https:\/\/www.kernel.org\/\">Linux 5.6<\/a><\/noindex>. \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: \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044f VPN-\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 WireGuard, \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 USB4, \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u0430 \u0438\u043c\u0451\u043d \u0434\u043b\u044f \u0432\u0440\u0435\u043c\u0435\u043d\u0438, \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432 \u043f\u0435\u0440\u0435\u0433\u0440\u0443\u0437\u043a\u0438 TCP \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 BPF, \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u0430\u044f \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 MultiPath TCP, \u0438\u0437\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u044f\u0434\u0440\u0430 \u043e\u0442 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b 2038 \u0433\u043e\u0434\u0430, \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c &#171;bootconfig&#187;,  \u0424\u0421 ZoneFS.<\/p>\n<p>Nowa wersja zawiera 13702 poprawek od 1810 programist\u00f3w,<br \/>\n\u0440\u0430\u0437\u043c\u0435\u0440 \u043f\u0430\u0442\u0447\u0430 &#8212; 40 \u041c\u0431 (\u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0437\u0430\u0442\u0440\u043e\u043d\u0443\u043b\u0438 11577 \u0444\u0430\u0439\u043b\u043e\u0432, \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043e 610012 \u0441\u0442\u0440\u043e\u043a \u043a\u043e\u0434\u0430,<br \/>\nusuni\u0119to 294828 linijek). Oko\u0142o 45% wszystkich zmian w wersji 5.6<br \/>\nzmian dotyczy sterownik\u00f3w urz\u0105dze\u0144, oko\u0142o 15% zmian dotyczy<br \/>\nodpowiedzialne jest za aktualizacj\u0119 kodu specyficznego dla architektur sprz\u0119towych, 12%<br \/>\n\u0441\u0432\u044f\u0437\u0430\u043d\u043e \u0441 \u0441\u0435\u0442\u0435\u0432\u044b\u043c \u0441\u0442\u0435\u043a\u043e\u043c, 4% &#8212; c  \u0444\u0430\u0439\u043b\u043e\u0432\u044b\u043c\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u043c\u0438 \u0438 3% c \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u043c\u0438<br \/>\npodsystemami j\u0105dra. <\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/kernelnewbies.org\/Linux_5.6\">Podstawowe<\/a><\/noindex> <noindex><a rel=\"nofollow\" href=\"https:\/\/lwn.net\/Articles\/811230\/\">nowo\u015bci<\/a><\/noindex>:<\/p>\n<ul>\n<li class=\"l\"> <b>Subsystem sieciowy<\/b>\n<ul>\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=51997\">Dodano<\/a><\/noindex> wdro\u017cenie interfejsu VPN  <noindex><a rel=\"nofollow\" href=\"https:\/\/www.wireguard.io\/\">WireGuard<\/a><\/noindex>, kt\u00f3ry oparty jest na nowoczesnych metodach szyfrowania (ChaCha20, Poly1305, Curve25519, BLAKE2s), jest \u0142atwy w u\u017cyciu, pozbawiony komplikacji, sprawdzi\u0142 si\u0119 w wielu du\u017cych wdro\u017ceniach i zapewnia bardzo wysok\u0105 wydajno\u015b\u0107 (3,9 razy przewy\u017csza OpenVPN pod wzgl\u0119dem przepustowo\u015bci). W WireGuard zastosowano koncepcj\u0119 routingu wed\u0142ug kluczy szyfrowania, co polega na przypisaniu do ka\u017cdego interfejsu sieciowego klucza prywatnego i wykorzystaniu go do \u0142\u0105czenia kluczy publicznych. Wymiana kluczy publicznych w celu ustanowienia po\u0142\u0105czenia odbywa si\u0119 na zasadzie podobnej do SSH. Niezb\u0119dne do pracy WireGuard prymitywy kryptograficzne <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=0ed42a6f431e930b2e8fae21955406e09fe75d70\">by\u0142y<\/a><\/noindex> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=66d7fb94e4ffe5acc589e0b2b4710aecc1f07a28\">przeniesiono<\/a><\/noindex> z biblioteki  <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=49064\">Zinc<\/a><\/noindex> s\u0105 cz\u0119\u015bci\u0105 standardowego Crypto API oraz <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=ed20078b7e3331e82828be357147af6a3282e4ce\">w\u0142\u0105czone<\/a><\/noindex> cz\u0119\u015bci\u0105 j\u0105dra <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=52256\">5.5<\/a><\/noindex>.\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=bd2463ac7d7ec51d432f23bf0e893fb371a908cd\">Rozpocz\u0119to<\/a><\/noindex> integracja komponent\u00f3w niezb\u0119dnych do wsparcia MPTCP (MultiPath TCP), rozszerzenia protoko\u0142u TCP w celu umo\u017cliwienia dzia\u0142ania po\u0142\u0105czenia TCP z jednoczesn\u0105 dostaw\u0105 pakiet\u00f3w przez r\u00f3\u017cne trasy przez r\u00f3\u017cne interfejsy sieciowe przypisane do r\u00f3\u017cnych adres\u00f3w IP. Dla aplikacji sieciowych takie skonsolidowane po\u0142\u0105czenie wygl\u0105da jak zwyk\u0142e po\u0142\u0105czenie TCP, a ca\u0142a logika podzia\u0142u strumieni jest realizowana przez MPTCP. Multipath TCP mo\u017ce by\u0107 u\u017cywane zar\u00f3wno do zwi\u0119kszenia przepustowo\u015bci, jak i poprawy niezawodno\u015bci. Na przyk\u0142ad, MPTCP mo\u017cna stosowa\u0107 do przesy\u0142ania danych na smartfonie przy u\u017cyciu jednocze\u015bnie po\u0142\u0105cze\u0144 WiFi i 4G lub do obni\u017cenia koszt\u00f3w, \u0142\u0105cz\u0105c serwer przy u\u017cyciu kilku tanich po\u0142\u0105cze\u0144 zamiast jednego drogiego.\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=dcc68b4d8084\">Dodano<\/a><\/noindex> wsparcie dla dyscypliny obs\u0142ugi kolejek sieciowych sch_ets (<noindex><a rel=\"nofollow\" href=\"https:\/\/1.ieee802.org\/dcb\/802-1qaz\/\">Enhanced Transmission Selection<\/a><\/noindex>, IEEE 802.1Qaz), kt\u00f3ra umo\u017cliwia przydzielanie przepustowo\u015bci mi\u0119dzy r\u00f3\u017cnymi klasami ruchu. Je\u015bli obci\u0105\u017cenie danej klasy ruchu jest poni\u017cej przydzielonej przepustowo\u015bci, to ETS pozwala innym klasom ruchu korzysta\u0107 z dost\u0119pnej (niewykorzystanej) przepustowo\u015bci. Qdisc sch_ets jest ustawiana jako dyscyplina PRIO i wykorzystuje klasy ruchu do okre\u015blenia \u015bcis\u0142ych i wsp\u00f3\u0142dzielonych ogranicze\u0144 przepustowo\u015bci. ETS dzia\u0142a jako kombinacja dyscyplin <noindex><a rel=\"nofollow\" href=\"https:\/\/linux.die.net\/man\/8\/tc-prio\">PRIO<\/a><\/noindex> i <noindex><a rel=\"nofollow\" href=\"http:\/\/man7.org\/linux\/man-pages\/man8\/tc-drr.8.html\">DRR<\/a><\/noindex> &#8212; \u043f\u0440\u0438 \u043d\u0430\u043b\u0438\u0447\u0438\u0438 \u0436\u0451\u0441\u0442\u043a\u043e \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u043d\u044b\u0445 \u043a\u043b\u0430\u0441\u0441\u043e\u0432 \u0442\u0440\u0430\u0444\u0438\u043a\u0430  \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f PRIO, \u043d\u043e \u0435\u0441\u043b\u0438 \u0432 \u043e\u0447\u0435\u0440\u0435\u0434\u0438 \u0442\u0440\u0430\u0444\u0438\u043a\u0430 \u043d\u0435\u0442, \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043a\u0430\u043a DRR.\n<li class=\"l\"> Dodano nowy typ program\u00f3w BPF <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=27ae7997a661\">BPF_PROG_TYPE_STRUCT_OPS<\/a><\/noindex>, pozwalaj\u0105cy na implementacj\u0119 funkcji obs\u0142ugi w j\u0105drze za po\u015brednictwem BPF. Obecnie t\u0119 funkcjonalno\u015b\u0107 mo\u017cna ju\u017c wykorzysta\u0107 do realizacji algorytm\u00f3w kontroli przeci\u0105\u017cenia TCP w formie program\u00f3w BPF. Na przyk\u0142ad <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=09903869f69f\">zaproponowana<\/a><\/noindex> program BPF implementuj\u0105cy algorytm <noindex><a rel=\"nofollow\" href=\"https:\/\/tools.ietf.org\/html\/rfc8257\">DCTCP<\/a><\/noindex>.\n<li class=\"l\"> Zosta\u0142y przyj\u0119te do j\u0105dra <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=1b3b289fd8da\">zmiany<\/a><\/noindex>, narz\u0119dzia do t\u0142umaczenia  <noindex><a rel=\"nofollow\" href=\"https:\/\/en.wikipedia.org\/wiki\/Ethtool\">ethtool<\/a><\/noindex> z ioctl() na u\u017cycie <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=2b4a8990b7df\">interfejsu netlink<\/a><\/noindex>. Nowy interfejs upraszcza dodawanie rozszerze\u0144, poprawia obs\u0142ug\u0119 b\u0142\u0119d\u00f3w, umo\u017cliwia wysy\u0142anie powiadomie\u0144 przy zmianie stanu, u\u0142atwia interakcj\u0119 mi\u0119dzy j\u0105drem a przestrzeni\u0105 u\u017cytkownika oraz zmniejsza liczb\u0119 synchronizowanych nazwanych list.\n<li class=\"l\"> Dodano implementacj\u0119 algorytmu zarz\u0105dzania kolejkami sieciowymi FQ-PIE (Flow Queue PIE), maj\u0105cego na celu zmniejszenie negatywnego wp\u0142ywu po\u015bredniego buforowania pakiet\u00f3w na granicznym sprz\u0119cie sieciowym (bufferbloat). FQ-PIE wykazuje wysok\u0105 wydajno\u015b\u0107 w systemach z modemami kablowymi.\n<\/ul>\n<li class=\"l\"> <b>Podsystem dyskowy, wej\u015bcie\/wyj\u015bcie i systemy plik\u00f3w<\/b>\n<ul>\n<li class=\"l\"> Dla systemu plik\u00f3w Btrfs <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=52228\">dodano<\/a><\/noindex> asynchroniczna realizacja operacji DISCARD (oznaczanie zwolnionych blok\u00f3w, kt\u00f3re mo\u017cna ju\u017c nie przechowywa\u0107 fizycznie). Pocz\u0105tkowo operacje DISCARD by\u0142y wykonywane synchronicznie, co mog\u0142o prowadzi\u0107 do spadku wydajno\u015bci z powodu oczekiwania na zako\u0144czenie odpowiednich polece\u0144 przez no\u015bniki. Asynchroniczna realizacja pozwala na nieczekanie na zako\u0144czenie DISCARD przez no\u015bnik i wykonywanie tej operacji w tle.\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=91f1a9566f387137f2da1957792a8f9f07cd058f\">zosta\u0142a<\/a><\/noindex> oczyszczenie kodu, w kt\u00f3rym u\u017cywane by\u0142y stare 32-bitowe liczniki czasu (typ time_t zosta\u0142 zast\u0105piony przez time64_t), co prowadzi\u0142o do problemu roku 2038. Usuni\u0119to b\u0142\u0119dy i uszkodzenia pami\u0119ci, kt\u00f3re pojawia\u0142y si\u0119 na 32-bitowych platformach. Przepisano kod, aby dzia\u0142a\u0142 z rozszerzonymi atrybutami.\n<li class=\"l\"> W systemie plik\u00f3w ext4 <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=e5da4c933c50d98d7990a7c1ca0bbf8946e80c4a\">zosta\u0142y wprowadzone<\/a><\/noindex> optymalizacja wydajno\u015bci zwi\u0105zana z obs\u0142ug\u0105 blokady inode podczas operacji odczytu i zapisu. Zwi\u0119kszono wydajno\u015b\u0107 nadpisywania w trybie bezpo\u015bredniego wej\u015bcia\/wyj\u015bcia (Direct I\/O). Aby upro\u015bci\u0107 diagnozowanie problem\u00f3w, zapewniono zapis w superbloku pierwszego i ostatniego kodu b\u0142\u0119du.\n<li class=\"l\"> W systemie plik\u00f3w F2FS <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=4c8ff7095bef\">zrealizowano<\/a><\/noindex> \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 \u0441\u0436\u0430\u0442\u043e\u043c \u0432\u0438\u0434\u0435. \u0414\u043b\u044f \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u0444\u0430\u0439\u043b\u0430 \u0438\u043b\u0438 \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0430 \u0441\u0436\u0430\u0442\u0438\u0435 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u043e \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u043a\u043e\u043c\u0430\u043d\u0434\u044b &#171;chattr +c file&#187; \u0438\u043b\u0438 &#171;chattr +c dir; touch dir\/file&#187;. \u0414\u043b\u044f \u0441\u0436\u0430\u0442\u0438\u044f \u0432\u0441\u0435\u0433\u043e \u0440\u0430\u0437\u0434\u0435\u043b\u0430  \u0432 \u0443\u0442\u0438\u043b\u0438\u0442\u0435 mount \u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043e\u043f\u0446\u0438\u044e &#171;-o compress_extension=ext&#187;.\n<li class=\"l\"> Do j\u0105dra zosta\u0142a przyj\u0119ta system plik\u00f3w <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=52092\">ZoneFS<\/a><\/noindex>, upraszczaj\u0105cy niskopoziomow\u0105 prac\u0119 z zasi\u0119gni\u0119tymi urz\u0105dzeniami pami\u0119ci. Pod zasi\u0119gni\u0119tymi no\u015bnikami rozumie si\u0119 urz\u0105dzenia na twardych dyskach magnetycznych lub NVMe SSD, gdzie 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 aktualizacj\u0105 ca\u0142ej grupy blok\u00f3w. System plik\u00f3w ZoneFS zosta\u0142 opracowany przez firm\u0119 Western Digital i \u0142\u0105czy ka\u017cd\u0105 stref\u0119 w no\u015bniku z osobnym plikiem, kt\u00f3ry mo\u017cna wykorzysta\u0107 do przechowywania danych w trybie raw bez manipulacji na poziomie sektor\u00f3w i blok\u00f3w, co pozwala aplikacjom korzysta\u0107 z API plik\u00f3w zamiast bezpo\u015bredniego dost\u0119pu do urz\u0105dzenia blokowego za pomoc\u0105 ioctl.\n<li class=\"l\"> \u0412 NFS \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u043e \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u043c\u043e\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0440\u0430\u0437\u0434\u0435\u043b\u043e\u0432 \u043f\u043e\u0432\u0435\u0440\u0445 UDP. \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0430 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u043e\u0439 \u0432 \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438  NFS 4.2 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u043f\u0440\u044f\u043c\u043e\u0433\u043e \u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0444\u0430\u0439\u043b\u043e\u0432 \u043c\u0435\u0436\u0434\u0443 \u0441\u0435\u0440\u0432\u0435\u0440\u0430\u043c\u0438. \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0430 \u043d\u043e\u0432\u0430\u044f \u043e\u043f\u0446\u0438\u044f \u043c\u043e\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f &#171;softreval&#187;, \u0432 \u0441\u043b\u0443\u0447\u0430\u0435 \u043e\u0442\u043a\u0430\u0437\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0434\u043e\u043f\u0443\u0441\u043a\u0430\u044e\u0449\u0430\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435  \u043f\u0440\u043e\u043a\u044d\u0448\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 \u0430\u0442\u0440\u0438\u0431\u0443\u0442\u043e\u0432. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043f\u0440\u0438 \u0443\u043a\u0430\u0437\u0430\u043d\u0438\u0438 \u0434\u0430\u043d\u043d\u043e\u0439 \u043e\u043f\u0446\u0438\u0438 \u043f\u043e\u0441\u043b\u0435 \u043d\u0435\u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0441\u0442\u0438 \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u0435\u0442\u0441\u044f \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043f\u0435\u0440\u0435\u043c\u0435\u0449\u0435\u043d\u0438\u044f \u043f\u043e \u043f\u0443\u0442\u044f\u043c \u0432 NFS-\u0440\u0430\u0437\u0434\u0435\u043b\u0435 \u0438 \u043e\u0431\u0440\u0430\u0449\u0435\u043d\u0438\u044f \u043a \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043e\u0441\u0435\u043b\u0430 \u0432 \u043a\u044d\u0448\u0435.\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=c8994374d90b5823b3b29a5e5d8648ac418b57b4\">Przeprowadzono<\/a><\/noindex> optymalizacja wydajno\u015bci mechanizmu fs-verity, stosowanego do kontroli integralno\u015bci i weryfikacji autentyczno\u015bci poszczeg\u00f3lnych plik\u00f3w. Zwi\u0119kszono pr\u0119dko\u015b\u0107 sekwencyjnego odczytu dzi\u0119ki zastosowaniu drzewa Merkle'a. Optymalizowana wydajno\u015b\u0107 FS_IOC_ENABLE_VERITY w warunkach braku danych w pami\u0119ci podr\u0119cznej (zastosowano prefetching stron z danymi).\n<\/ul>\n<li class=\"l\"> <b>Wirtualizacja i bezpiecze\u0144stwo<\/b>\n<ul>\n<li class=\"l\"> \u041e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u0430 \u0443\u0441\u0442\u0430\u0440\u0435\u0432\u0448\u0435\u0439 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u043c\u043e\u0434\u0443\u043b\u044f SELinux \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u0440\u0430\u0431\u043e\u0442\u044b, \u0430 \u0432 \u0431\u0443\u0434\u0443\u0449\u0435\u043c \u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0430 \u0443\u0436\u0435 \u0430\u043a\u0442\u0438\u0432\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e SELinux \u0431\u0443\u0434\u0435\u0442 \u0437\u0430\u043f\u0440\u0435\u0449\u0435\u043d\u0430. \u0414\u043b\u044f \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f SELinux  \u043f\u043e\u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u043f\u0435\u0440\u0435\u0434\u0430\u0442\u044c \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 &#171;selinux=0&#187; \u0432 \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0435 \u044f\u0434\u0440\u0430.\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=769071ac9f20\">Dodano<\/a><\/noindex> wsparcie dla przestrzeni nazw czasu (time namespaces), kt\u00f3re pozwalaj\u0105 powi\u0105za\u0107 stan zegar\u00f3w systemowych (CLOCK_REALTIME,<br \/>\nCLOCK_MONOTONIC, CLOCK_BOOTTIME) z kontenerem, umo\u017cliwiaj\u0105c w kontenerze swoje w\u0142asne czas i zapewniaj\u0105c niezmienno\u015b\u0107 wskaza\u0144 CLOCK_MONOTONIC i CLOCK_BOOTTIME przy migracji kontenera na inny host (uwzgl\u0119dniaj\u0105c czas po za\u0142adunku z uwzgl\u0119dnieniem lub bez uwzgl\u0119dnienia stanu w u\u015bpieniu).<\/p>\n<li class=\"l\"> Usuni\u0119to blokowany pul \/dev\/random. Zachowanie \/dev\/random przybli\u017cono do \/dev\/urandom pod wzgl\u0119dem zapobiegania blokowaniu entropii po inicjalizacji puli.\n<li class=\"l\"> Do g\u0142\u00f3wnej cz\u0119\u015bci j\u0105dra dodano sterownik, kt\u00f3ry pozwala systemom go\u015bcinnym dzia\u0142aj\u0105cym w VirtualBox montowa\u0107 katalogi udost\u0119pniane przez \u015brodowisko hosta (VirtualBox Shared Folder).\n<li class=\"l\"> Do podsystemu BPF dodano zestaw poprawek (<noindex><a rel=\"nofollow\" href=\"https:\/\/lwn.net\/Articles\/808503\/\">BPF dispatcher<\/a><\/noindex>), w warunkach stosowania mechanizmu Retpoline w celu ochrony przed atakami klasy Spectre V2, co pozwala zwi\u0119kszy\u0107 wydajno\u015b\u0107 wywo\u0142ywania program\u00f3w BPF przy wyst\u0105pieniu powi\u0105zanych z nimi zdarze\u0144 (na przyk\u0142ad umo\u017cliwia przyspieszenie wywo\u0142ywania przetwornik\u00f3w XDP przy przybyciu pakietu sieciowego).\n<li class=\"l\"> Dodano sterownik do wsparcia wbudowanych w APU AMD \u015brodowisk TEE (Trusted Execution Environment).\n<\/ul>\n<li class=\"l\"> <b>Pami\u0119\u0107 i us\u0142ugi systemowe<\/b>\n<ul>\n<li class=\"l\"> W BPF dodano wsparcie dla globalnych funkcji. Rozw\u00f3j odbywa si\u0119 w ramach inicjatywy dotycz\u0105cej dodania wsparcia bibliotek funkcji, kt\u00f3re mo\u017cna pod\u0142\u0105cza\u0107 w programach BPF. Nast\u0119pnym krokiem b\u0119dzie wsparcie dla dynamicznych rozszerze\u0144, kt\u00f3re umo\u017cliwiaj\u0105 \u0142adowanie globalnych funkcji, w tym do zast\u0105pienia istniej\u0105cych globalnych funkcji podczas ich u\u017cycia. W podsystemie BPF dodano r\u00f3wnie\u017c wsparcie dla wariantu operacji map (stosowanego do przechowywania danych trwa\u0142ych), wspieraj\u0105cego wykonywanie w trybie wsadowym.\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=0a1990a2d1f2\">Dodano<\/a><\/noindex> \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e &#171;cpu_cooling&#187; \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0449\u0435\u0435 \u043e\u0445\u043b\u0430\u0436\u0434\u0430\u0442\u044c \u043f\u0435\u0440\u0435\u0433\u0440\u0435\u0442\u044b\u0439 CPU \u043f\u0443\u0442\u0451\u043c \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u0430 \u0435\u0433\u043e \u0432 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u043f\u0440\u043e\u0441\u0442\u043e\u044f (idle) \u043d\u0430 \u043a\u043e\u0440\u043e\u0442\u043a\u0438\u0435 \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043a\u0438 \u0432\u0440\u0435\u043c\u0435\u043d\u0438.\n<li class=\"l\"> Dodano wywo\u0142anie systemowe <noindex><a rel=\"nofollow\" href=\"https:\/\/lwn.net\/Articles\/796868\/\">openat2()<\/a><\/noindex>, \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u044e\u0449\u0438\u0439 \u043d\u0430\u0431\u043e\u0440 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u0444\u043b\u0430\u0433\u043e\u0432 \u0434\u043b\u044f \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0444\u0430\u0439\u043b\u043e\u0432\u043e\u0433\u043e \u043f\u0443\u0442\u0438 (\u0437\u0430\u043f\u0440\u0435\u0442 \u043f\u0435\u0440\u0435\u0441\u0435\u0447\u0435\u043d\u0438\u044f \u0442\u043e\u0447\u0435\u043a \u043c\u043e\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f, \u0441\u0438\u043c\u0432\u043e\u043b\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0441\u0441\u044b\u043b\u043e\u043a, magic-\u0441\u0441\u044b\u043b\u043e\u043a (\/proc\/PID\/fd), \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432 &#171;..\/&#187;).\n<li class=\"l\"> Dla heterogenicznych system\u00f3w opartych na architekturze big.LITTLE, \u0142\u0105cz\u0105cych w jednym chipie mocne i mniej wydajne energooszcz\u0119dne rdzenie CPU, w trakcie realizacji zada\u0144 czasu rzeczywistego zapewnia wystawienie parametru uclamp_min (<noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=50201\">pojawi\u0142 si\u0119<\/a><\/noindex> w j\u0105drze 5.3 mechanizm przypinania obci\u0105\u017cenia). Okre\u015blony parametr gwarantuje, \u017ce zadanie zostanie umieszczone przez planist\u0119 na rdzeniu CPU, kt\u00f3ry ma wystarczaj\u0105c\u0105 wydajno\u015b\u0107.\n<li class=\"l\"> J\u0105dro zosta\u0142o uwolnione od <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%9F%D1%80%D0%BE%D0%B1%D0%BB%D0%B5%D0%BC%D0%B0_2038_%D0%B3%D0%BE%D0%B4%D0%B0\">problem\u00f3w roku 2038<\/a><\/noindex>. Zast\u0105piono ostatnie pozosta\u0142e obs\u0142ugiwacze, w kt\u00f3rych dla licznika epokowego czasu u\u017cywano 32-bitowego (signed int) typu time_t, kt\u00f3ry w zwi\u0105zku z raportem od 1970 roku powinien przepe\u0142ni\u0107 si\u0119 w 2038 roku.\n<li class=\"l\"> Kontynuowano doskonalenie interfejsu 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>, \u017ce postanowienie dyskryminuje dostawc\u00f3w i narusza  <noindex><a rel=\"nofollow\" href=\"https:\/\/lwn.net\/Articles\/810414\/\">zapewniona<\/a><\/noindex> wsparcie nowych operacji: IORING_OP_FALLOCATE (rezerwacja pustych obszar\u00f3w), IORING_OP_OPENAT,<br \/>\n    IORING_OP_OPENAT2,<br \/>\n    IORING_OP_CLOSE (otwieranie i zamykanie plik\u00f3w),<br \/>\n    IORING_OP_FILES_UPDATE (dodawanie i usuwanie plik\u00f3w z listy szybkiego dost\u0119pu),<br \/>\n IORING_OP_STATX (zapytanie o informacje o pliku),<br \/>\n    IORING_OP_READ,<br \/>\n    IORING_OP_WRITE (uproszczone odpowiedniki IORING_OP_READV i IORING_OP_WRITEV),<br \/>\n    IORING_OP_FADVISE,<br \/>\n    IORING_OP_MADVISE (asynchroniczne wersje wywo\u0142a\u0144 posix_fadvise i madvise), IORING_OP_SEND,<br \/>\n    IORING_OP_RECV (wysy\u0142anie i odbieranie danych sieciowych),<br \/>\n    IORING_OP_EPOLL_CTL (wykonywanie operacji na deskryptorach plik\u00f3w epoll).<\/p>\n<li class=\"l\"> Dodano wywo\u0142anie systemowe <noindex><a rel=\"nofollow\" href=\"https:\/\/lwn.net\/Articles\/808997\/\">pidfd_getfd()<\/a><\/noindex>, daj\u0105ce mo\u017cliwo\u015b\u0107 procesowi wydobycia z innego procesu deskryptora pliku otwartego pliku.\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/linus\/7b9b816f4b9a\">Zrealizowano<\/a><\/noindex> \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c &#171;bootconfig&#187;, \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0449\u0438\u0439 \u043f\u043e\u043c\u0438\u043c\u043e \u043e\u043f\u0446\u0438\u0439 \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0438 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0442\u044c \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0440\u0430\u0431\u043e\u0442\u044b \u044f\u0434\u0440\u0430 \u0447\u0435\u0440\u0435\u0437 \u0444\u0430\u0439\u043b \u0441 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430\u043c\u0438. \u0414\u043b\u044f \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043f\u043e\u0434\u043e\u0431\u043d\u044b\u0445 \u0444\u0430\u0439\u043b\u043e\u0432 \u0432 \u043e\u0431\u0440\u0430\u0437 initramfs \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u0430 \u0443\u0442\u0438\u043b\u0438\u0442\u0430 bootconfig. \u0423\u043a\u0430\u0437\u0430\u043d\u043d\u0430\u044f \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043c\u043e\u0436\u0435\u0442 \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0442\u044c\u0441\u044f, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0434\u043b\u044f \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 kprobes \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438.\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=0ddad21d3e99\">Przeprojektowano<\/a><\/noindex> mechanizm oczekiwania na zapis i odczyt danych w nieoznaczonych kana\u0142ach (pipe). Zmiana ta umo\u017cliwi\u0142a przyspieszenie realizacji zada\u0144, takich jak r\u00f3wnoleg\u0142a kompilacja du\u017cych projekt\u00f3w. Optymalizacja ta mo\u017ce prowadzi\u0107 do warunk\u00f3w wy\u015bcigu w GNU make z powodu b\u0142\u0119du w wersji 4.2.1, kt\u00f3ry zosta\u0142 usuni\u0119ty w wersji 4.3.\n<li class=\"l\"> W prctl() dodano flag\u0119 PR_SET_IO_FLUSHER, kt\u00f3ra mo\u017ce by\u0107 u\u017cywana do oznaczania proces\u00f3w zajmuj\u0105cych si\u0119 zwalnianiem pami\u0119ci, dla kt\u00f3rych nie nale\u017cy stosowa\u0107 ogranicze\u0144 w przypadku niedoboru pami\u0119ci w systemie.\n<li class=\"l\"> Na podstawie stosowanego w systemie Android systemu alokacji pami\u0119ci ION zrealizowano podsystem <noindex><a rel=\"nofollow\" href=\"https:\/\/lwn.net\/Articles\/792733\/\">dma-buf heaps<\/a><\/noindex>, kt\u00f3ry pozwala zarz\u0105dza\u0107 alokacj\u0105 bufor\u00f3w DMA do wsp\u00f3\u0142dzielenia obszar\u00f3w pami\u0119ci przez sterowniki, aplikacje i r\u00f3\u017cne podsystemy.\n<\/ul>\n<li class=\"l\"> <b>Architektury sprz\u0119towe<\/b>\n<ul>\n<li class=\"l\"> Dodano wsparcie dla rozszerzenia E0PD, wprowadzonego w ARMv8.5, kt\u00f3re umo\u017cliwia implementacj\u0119 zabezpiecze\u0144 przed atakami zwi\u0105zanymi z spekulatywnym wykonaniem instrukcji w CPU. Ochrona oparta na E0PD wi\u0105\u017ce si\u0119 z mniejszymi kosztami ni\u017c ochrona KPTI (Kernel Page Table Isolation).\n<li class=\"l\"> Dla system\u00f3w opartych na architekturze ARMv8.5 dodano wsparcie dla instrukcji RNG, kt\u00f3ra zapewnia dost\u0119p do sprz\u0119towego generatora liczb pseudolosowych. W j\u0105drze instrukcja RNG jest wykorzystywana do generowania entropii podczas inicjalizacji dostarczanego przez j\u0105dro generatora liczb pseudolosowych.\n<li class=\"l\"> Usuni\u0119to wsparcie dla rozszerze\u0144 MPX (Memory Protection Extensions), wprowadzonych w j\u0105drze <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=41634\">3.19<\/a><\/noindex> i umo\u017cliwiaj\u0105cych weryfikacj\u0119 wska\u017anik\u00f3w na zgodno\u015b\u0107 z granicami obszar\u00f3w pami\u0119ci. Technologia ta nie znalaz\u0142a szerokiego zastosowania w kompilatorach i zosta\u0142a usuni\u0119ta z GCC.\n<li class=\"l\"> Dla architektury RISC-V zrealizowano wsparcie dla narz\u0119dzia do debugowania KASan (Kernel address sanitizer), kt\u00f3re pozwala na wykrywanie b\u0142\u0119d\u00f3w w obs\u0142udze pami\u0119ci.\n<\/ul>\n<li class=\"l\"> <b>Sprz\u0119t<\/b>\n<ul>\n<li class=\"l\"> Wprowadzono wsparcie dla specyfikacji <noindex><a rel=\"nofollow\" href=\"https:\/\/www.usb.org\/document-library\/usb4tm-specification\">USB 4.0<\/a><\/noindex>, kt\u00f3ra oparta jest na protokole Thunderbolt 3 i zapewnia przepustowo\u015b\u0107 do 40 Gbit\/s, zachowuj\u0105c zgodno\u015b\u0107 wsteczn\u0105 z USB 2.0 i USB 3.2. Podobnie jak <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/Thunderbolt\">Thunderbolt<\/a><\/noindex> , interfejs USB 4.0 umo\u017cliwia tunelowanie r\u00f3\u017cnych protoko\u0142\u00f3w przez jeden kabel z gniazdem <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/USB_Type-C\">Type-C<\/a><\/noindex>, w tym PCIe, Display Port i USB 3.x, a tak\u017ce programowe realizacje protoko\u0142\u00f3w, na przyk\u0142ad do organizacji po\u0142\u0105cze\u0144 sieciowych mi\u0119dzy hostami. Realizacja opiera si\u0119 na ju\u017c zawartym w j\u0105drze Linux driverze Thunderbolt i dostosowuje go do pracy z hostami i urz\u0105dzeniami zgodnymi z USB4. Zmiany r\u00f3wnie\u017c dodaj\u0105 wsparcie dla urz\u0105dze\u0144 Thunderbolt 3 w programowej realizacji mened\u017cera po\u0142\u0105cze\u0144 (Connection Manager), kt\u00f3ry odpowiada za tworzenie tuneli do pod\u0142\u0105czania wielu urz\u0105dze\u0144 przez jeden port.\n<li class=\"l\"> W sterowniku amdgpu <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=9f68e3655aae6d49d6ba05dd263f99f33c2567af\">dodano<\/a><\/noindex> zosta\u0142a dodana pocz\u0105tkowa obs\u0142uga technologii zabezpiecze\u0144 przed kopiowaniem HDCP 2.x (High-bandwidth Digital Content Protection). Dodano wsparcie dla chipu ASIC AMD Pollock, opartego na Raven 2. Zrealizowano mo\u017cliwo\u015b\u0107 resetowania GPU dla rodzin Renoir i Navi.\n<li class=\"l\"> W sterowniku DRM dla kart graficznych Intel <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=9f68e3655aae6d49d6ba05dd263f99f33c2567af\">dodano<\/a><\/noindex> dodano wsparcie DSI VDSC dla chip\u00f3w opartych na mikroarchitekturze Ice Lake i Tiger Lake, zrealizowano LMEM mmap (pami\u0119\u0107 lokalna urz\u0105dzenia), ulepszono analiz\u0119 VBT (Video BIOS Table), zrealizowano wsparcie HDCP 2.2 dla chip\u00f3w Coffee Lake.\n<li class=\"l\"> Kontynuowano prace nad unifikacj\u0105 kodu sterownika amdkfd (dla dyskretnych GPU, takich jak Fiji, Tonga, Polaris) ze sterownikiem amdgpu.\n<li class=\"l\"> Przeprojektowano sterownik k10temp, kt\u00f3ry zyska\u0142 wsparcie dla wyj\u015bcia parametr\u00f3w napi\u0119cia i nat\u0119\u017cenia pr\u0105du dla CPU AMD Zen, oraz rozszerzonych informacji z czujnik\u00f3w temperatury stosowanych w CPU Zen i Zen 2.\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=9f68e3655aae6d49d6ba05dd263f99f33c2567af\">dodano<\/a><\/noindex> dodano wsparcie dla weryfikowanego trybu \u0142adowania firmware'u dla GPU NVIDIA opartego na mikroarchitekturze Turing (GeForce RTX 2000), co pozwoli\u0142o na w\u0142\u0105czenie wsparcia dla przyspieszenia 3D dla tych kart (wymaga za\u0142adowania oficjalnych firmware'\u00f3w z podpisem cyfrowym NVIDIA). Dodano wsparcie dla silnika graficznego TU10x. Rozwi\u0105zano problemy z HD Audio.\n<li class=\"l\"> Dodano wsparcie dla kompresji danych podczas transmisji przez DisplayPort MST (Multi-Stream Transport).\n<li class=\"l\"> \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d \u043d\u043e\u0432\u044b\u0439 \u0434\u0440\u0430\u0439\u0432\u0435\u0440 &#171;<noindex><a rel=\"nofollow\" href=\"https:\/\/lwn.net\/Articles\/796850\/\">ath11k<\/a><\/noindex>&#187; \u0434\u043b\u044f \u0431\u0435\u0441\u043f\u0440\u043e\u0432\u043e\u0434\u043d\u044b\u0445 \u0447\u0438\u043f\u043e\u0432 Qualcomm \u0441  \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u043e\u0439  802.11ax.<br \/>\nSterownik oparty na stosie mac80211 wspiera tryby punktu dost\u0119powego, stacji roboczej i w\u0119z\u0142a sieci Mesh.<\/p>\n<li class=\"l\"> Poprzez sysfs udost\u0119pniono dost\u0119p do odczyt\u00f3w z czujnik\u00f3w temperatury u\u017cywanych w nowoczesnych twardych dyskach i SSD.\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=80fe7430c708\">Wprowadzono<\/a><\/noindex> zna znacz\u0105ce zmiany w systemie d\u017awi\u0119kowym ALSA, maj\u0105ce na celu pozbycie si\u0119 kodu <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%9F%D1%80%D0%BE%D0%B1%D0%BB%D0%B5%D0%BC%D0%B0_2038_%D0%B3%D0%BE%D0%B4%D0%B0\">problem\u00f3w roku 2038<\/a><\/noindex> (odej\u015bcie od u\u017cycia 32-bitowego typu time_t w interfejsach snd_pcm_mmap_status i snd_pcm_mmap_control). Dodano wsparcie dla nowych kodek\u00f3w audio<br \/>\n Qualcomm WCD9340\/WCD9341, Realtek RT700, RT711, RT715, RT1308, Ingenic JZ4770.<\/p>\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=9f68e3655aae6d49d6ba05dd263f99f33c2567af\">Dodano<\/a><\/noindex> sterowniki do paneli LCD Logic PD 28, Jimax8729d MIPI-DSI, igenic JZ4770, Sony acx424AKP, Leadtek LTK500HD1829, Xinpeng XPP055C272, AUO B116XAK01, GiantPlus GPM940B0,<br \/>\n    BOE NV140FHM-N49,<br \/>\n    Satoz SAT050AT40H12R2,<br \/>\n    Sharp LS020B1DD01D.<\/p>\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=1afa9c3b7c9bdcb562e2afe9f58cc99d0b071cdc\">Dodano<\/a><\/noindex> wsparcie dla platform ARM i Gen1 Amazon Echo (oparty na OMAP3630), Samsung Galaxy S III mini (GT-I8190), Allwinner Emlid Neutis, Libre Computer ALL-H3-IT, PineH64 Model B, Aibretech Amlogic GX PC,<br \/>\n Armada SolidRun Clearfog GTR, NXPGateworks GW59xx,<br \/>\nczytnik eBook Tolino Shine 3,<br \/>\n Embedded Artists COM (i.MX7ULP), SolidRun Clearfog CX\/ITX oraz HoneyComb (LX2160A), Google Coral Edge TPU (i.MX8MQ),<br \/>\n Rockchip Radxa Dalang Carrier, Radxa Rock Pi N10, VMARC RK3399Pro SOM<br \/>\nST Ericsson HREF520, Inforce 6640, SC7180 IDP, Atmel\/Microchip AM9X60 (SoC ARM926, Kizboxmini), ST stm32mp15, AM3703\/AM3715\/DM3725, ST Ericsson ab8505, Unisoc SC9863A, Qualcomm SC7180. Dodano wsparcie dla kontrolera PCIe u\u017cywanego w Raspberry Pi 4.<\/p>\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\/\">w pe\u0142ni wolne j\u0105dro 5.6<\/a><\/noindex> \u2014 <noindex><a rel=\"nofollow\" href=\"http:\/\/linux-libre.fsfla.org\/pub\/linux-libre\/releases\/5.6-gnu\/\">Linux-libre 5.6-gnu<\/a><\/noindex>, oczyszczone z element\u00f3w firmware i sterownik\u00f3w zawieraj\u0105cych niewolne komponenty lub fragmenty kodu, kt\u00f3rych zastosowanie jest ograniczone przez producenta. W nowym wydaniu wy\u0142\u0105czono \u0142adowanie blob\u00f3w w sterownikach dla AMD TEE, ATH11K i Mediatek SCP. Zaktualizowano kod czyszczenia blob\u00f3w w sterownikach i subsystemach AMD PSP, amdgpu i nouveau.<\/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=52632\">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.6. \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: \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044f VPN-\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 WireGuard, \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 USB4, \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u0430 \u0438\u043c\u0451\u043d \u0434\u043b\u044f \u0432\u0440\u0435\u043c\u0435\u043d\u0438, \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432 \u043f\u0435\u0440\u0435\u0433\u0440\u0443\u0437\u043a\u0438 TCP \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 BPF, \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u0430\u044f \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 MultiPath TCP, \u0438\u0437\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u044f\u0434\u0440\u0430 \u043e\u0442 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b 2038 \u0433\u043e\u0434\u0430, \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c &#171;bootconfig&#187;, \u0424\u0421 ZoneFS. \u0412 \u043d\u043e\u0432\u0443\u044e \u0432\u0435\u0440\u0441\u0438\u044e \u043f\u0440\u0438\u043d\u044f\u0442\u043e 13702 \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0439 \u043e\u0442 1810 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432, [&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-76046","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-6\" \/>\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.6 | 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-6\" \/>\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-03-30T17:42:02+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-03-30T17:42:02+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.6 | 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-6","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.6 | 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-6","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-03-30T17:42:02+00:00","article:modified_time":"2020-03-30T17:42:02+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"76046","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 17:44:27","updated":"2022-10-03 19:48:02","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\/76046","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=76046"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/posts\/76046\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/media?parent=76046"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/categories?post=76046"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/tags?post=76046"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}