{"id":83515,"date":"2020-06-01T13:41:56","date_gmt":"2020-06-01T11:41:56","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/reliz-yadra-linux-5-7"},"modified":"2020-06-01T13:41:56","modified_gmt":"2020-06-01T11:41:56","slug":"reliz-yadra-linux-5-7","status":"publish","type":"post","link":"https:\/\/prohoster.info\/cs\/blog\/news\/reliz-yadra-linux-5-7","title":{"rendered":"Uvoln\u011bn\u00ed j\u00e1dra Linux 5.7","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Po dvou m\u011bs\u00edc\u00edch v\u00fdvoje Linus Torvalds <noindex><a rel=\"nofollow\" href=\"https:\/\/lkml.org\/lkml\/2020\/5\/31\/326\">p\u0159edstavil<\/a><\/noindex> j\u00e1drn\u00fd release <noindex><a rel=\"nofollow\" href=\"https:\/\/www.kernel.org\/\">Linux 5.7<\/a><\/noindex>. Mezi nejv\u00fdznamn\u011bj\u0161\u00ed zm\u011bny pat\u0159\u00ed: nov\u00e1 implementace syst\u00e9mu exFAT, modul bareudp pro vytv\u00e1\u0159en\u00ed UDP tunel\u016f, ochrana zalo\u017een\u00e1 na autentizaci ukazatel\u016f pro ARM64, mo\u017enost p\u0159ipojen\u00ed BPF program\u016f k LSM zpracovatel\u016fm, nov\u00e1 implementace Curve25519, detektor \u201esplit-lock\u201c, kompatibilita BPF s PREEMPT_RT, odstran\u011bn\u00ed omezen\u00ed na 80 znak\u016f v k\u00f3du, zohledn\u011bn\u00ed teploty CPU v pl\u00e1nova\u010di \u00faloh, schopnost vyu\u017e\u00edvat clone() k vytv\u00e1\u0159en\u00ed proces\u016f v jin\u00e9 cgroup, ochrana proti z\u00e1pisu do pam\u011bti pomoc\u00ed userfaultfd.<\/p>\n<p>Do nov\u00e9 verze bylo p\u0159ijato 15033 oprav od 1961 v\u00fdvoj\u00e1\u0159\u016f,<br \/>\nvelikost patche \u2014 39 MB (zm\u011bny se dotkly 11590 soubor\u016f, p\u0159id\u00e1no 570560 \u0159\u00e1dk\u016f k\u00f3du,<br \/>\nzru\u0161eno 297401 \u0159\u00e1dk\u016f). P\u0159ibli\u017en\u011b 41 % ze v\u0161ech zm\u011bn p\u0159edstaven\u00fdch ve verzi 5.7<br \/>\nse t\u00fdk\u00e1 ovlada\u010d\u016f za\u0159\u00edzen\u00ed, p\u0159ibli\u017en\u011b 16 % zm\u011bn m\u00e1<br \/>\nvztah k aktualizaci k\u00f3du specifick\u00e9ho pro hardwarov\u00e9 architektury, 13 %<br \/>\nt\u00fdk\u00e1 se s\u00ed\u0165ov\u00e9ho z\u00e1sobn\u00edku, 4% \u2014 s\u00a0souborov\u00fdmi syst\u00e9my a 4% s\u00a0intern\u00edmi<br \/>\npodsystemy j\u00e1dra. <\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/kernelnewbies.org\/Linux_5.6\">Hlavn\u00ed<\/a><\/noindex> <noindex><a rel=\"nofollow\" href=\"https:\/\/lwn.net\/Articles\/816934\/\">novinky<\/a><\/noindex>:<\/p>\n<ul>\n<li class=\"l\"> <b>Diskov\u00fd subsyst\u00e9m, vstup\/v\u00fdstup a souborov\u00e9 syst\u00e9my<\/b>\n<ul>\n<li class=\"l\"> Byla p\u0159id\u00e1na nov\u00e1 implementace ovlada\u010de exFAT, <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=52222\">zalo\u017een\u00e1<\/a><\/noindex> na aktu\u00e1ln\u00ed k\u00f3dov\u00e9 z\u00e1kladn\u011b \u201esdfat\u201c (2.x), kter\u00e1 je vyv\u00edjena spole\u010dnost\u00ed Samsung pro jej\u00ed Android smartphony. D\u0159\u00edve p\u0159idan\u00fd ovlada\u010d do j\u00e1dra byl zalo\u017een na zastaral\u00e9m k\u00f3du Samsung (verze 1.2.9) a zaost\u00e1val v\u00a0v\u00fdkonu za nov\u00fdm ovlada\u010dem p\u0159ibli\u017en\u011b o 10%. P\u0159ipome\u0148me, \u017ee p\u0159id\u00e1n\u00ed podpory exFAT do j\u00e1dra se stalo mo\u017en\u00e9 pot\u00e9, co spole\u010dnost Microsoft <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=51374\">publikovala<\/a><\/noindex> uvolnila ve\u0159ejn\u00e9 specifikace a umo\u017enila bezplatn\u00e9 vyu\u017e\u00edv\u00e1n\u00ed patent\u016f na exFAT v Linuxu.\n<li class=\"l\"> V Btrfs byla implementov\u00e1na nov\u00e1 funkce ioctl() \u2014 BTRFS_IOC_SNAP_DESTROY_V2, kter\u00e1 umo\u017e\u0148uje odstra\u0148ovat pod\u0159\u00edzen\u00e9 podle jejich identifik\u00e1toru. Byla zaji\u0161t\u011bna pln\u00e1 podpora klonov\u00e1n\u00ed inline extent\u016f. Bylo roz\u0161\u00ed\u0159eno mno\u017estv\u00ed bod\u016f pro zru\u0161en\u00ed operac\u00ed redistribuce, co\u017e umo\u017enilo zkr\u00e1tit dlouh\u00e1 \u010dek\u00e1n\u00ed p\u0159i prov\u00e1d\u011bn\u00ed p\u0159\u00edkazu \u2018balance cancel\u2019. Bylo urychleno ur\u010dov\u00e1n\u00ed zp\u011btn\u00fdch odkaz\u016f na extent (nap\u0159\u00edklad doba prov\u00e1d\u011bn\u00ed testovac\u00edch sc\u00e9n\u00e1\u0159\u016f se sn\u00ed\u017eila z hodiny na n\u011bkolik minut). Byla p\u0159id\u00e1na mo\u017enost p\u0159ipojit k\u00a0jednomu inode stromu extent\u016f souboru. Byla p\u0159epracov\u00e1na sch\u00e9ma blokace pou\u017e\u00edvan\u00e1 p\u0159i z\u00e1pisu do pod\u0159\u00edzen\u00fdch a p\u0159i vylou\u010den\u00ed NOCOW. Byla zv\u00fd\u0161ena efektivita prov\u00e1d\u011bn\u00ed fsync pro rozsahy.\n<li class=\"l\"> Ve XFS byla vylep\u0161ena kontrola metadat a prov\u00e1d\u011bn\u00ed fsck pro aktivn\u00ed odd\u00edly. Byla navr\u017eena knihovna pro rekonstrukci struktur btree, kter\u00e1 bude v budoucnu pou\u017eita pro p\u0159epracov\u00e1n\u00ed xfs_repair a implementaci mo\u017enosti obnovy bez odpojen\u00ed odd\u00edlu.\n<li class=\"l\"> V CIFS byla p\u0159id\u00e1na experiment\u00e1ln\u00ed podpora um\u00edst\u011bn\u00ed odd\u00edlu pro z\u00e1pis do SMB3 \u00falo\u017ei\u0161\u0165. Byla implementov\u00e1na POSIX roz\u0161\u00ed\u0159en\u00ed v readdir, definovan\u00fdch ve specifikaci SMB3.1.1. Zlep\u0161ena v\u00fdkonnost z\u00e1pisu pro str\u00e1nky o velikosti 64KB p\u0159i zapnut\u00ed re\u017eimu cache=strict a pou\u017eit\u00ed verz\u00ed protokolu 2.1+.\n<li class=\"l\"> FS EXT4 byla p\u0159evedena z bmap a iopoll na vyu\u017e\u00edv\u00e1n\u00ed iomap.\n<li class=\"l\"> V F2FS byla implementov\u00e1na voliteln\u00e1 podpora komprese dat pomoc\u00ed algoritmu zstd. V\u00fdchoz\u00ed kompresn\u00ed algoritmus je LZ4. Byla p\u0159id\u00e1na podpora p\u0159\u00edkazu \u201echattr -c commit\u201c. Zaji\u0161t\u011bno zobrazen\u00ed doby p\u0159ipojen\u00ed. Byla p\u0159id\u00e1na ioctl F2FS_IOC_GET_COMPRESS_BLOCKS pro z\u00edsk\u00e1n\u00ed informac\u00ed o po\u010dtu komprimovan\u00fdch blok\u016f. Byla p\u0159id\u00e1na data o kompresi, kter\u00e1 se zobrazuj\u00ed p\u0159es statx.\n<li class=\"l\"> Ve souborov\u00e9m syst\u00e9mu Ceph byla p\u0159id\u00e1na mo\u017enost lok\u00e1ln\u00edho prov\u00e1d\u011bn\u00ed operac\u00ed vytv\u00e1\u0159en\u00ed a odstra\u0148ov\u00e1n\u00ed (unlink) souboru bez \u010dek\u00e1n\u00ed na odpov\u011b\u010f od serveru (asynchronn\u00ed re\u017eim). Tato zm\u011bna nap\u0159\u00edklad v\u00fdrazn\u011b zvy\u0161uje v\u00fdkonnost p\u0159i pr\u00e1ci s utilitou rsync.\n<li class=\"l\"> V OVERLAYFS byla p\u0159id\u00e1na mo\u017enost pou\u017eit\u00ed virtiofs jako FS horn\u00ed \u00farovn\u011b.\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/lkml.org\/lkml\/2020\/2\/22\/317\">P\u0159eps\u00e1n<\/a><\/noindex> k\u00f3d proch\u00e1zen\u00ed cest v VFS, p\u0159epracov\u00e1n k\u00f3d pro anal\u00fdzu symbolick\u00fdch odkaz\u016f a unifikov\u00e1n pr\u016fchod bod\u016f p\u0159ipojen\u00ed.\n<li class=\"l\"> V subsyst\u00e9mu scsi maj\u00ed neopr\u00e1vn\u011bn\u00ed u\u017eivatel\u00e9 <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/linus\/6fdb79ff27ee0d385ec8481458d2fd1d69fec50b\">je povoleno<\/a><\/noindex> mo\u017enost prov\u00e1d\u011bt p\u0159\u00edkazy ZBC.\n<li class=\"l\"> V dm_writecache <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/linus\/3923d4854e189d84c6ec22e66d536d3498f2747c\">byla implementov\u00e1na<\/a><\/noindex> byla p\u0159id\u00e1na mo\u017enost postupn\u00e9ho \u010di\u0161t\u011bn\u00ed cache na z\u00e1klad\u011b parametru max_age, kter\u00fd stanovuje maxim\u00e1ln\u00ed \u017eivotnost bloku.\n<li class=\"l\"> V dm_integrity <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/linus\/84597a44a9d86ac949900441cea7da0af0f2f473\">byla p\u0159id\u00e1na<\/a><\/noindex> podpora operace \u201ediscard\u201c.\n<li class=\"l\"> V null_blk <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/linus\/596444e7570587867924c3ab025183b1a8726897\">byla p\u0159id\u00e1na<\/a><\/noindex> byla p\u0159id\u00e1na podpora simulace chyb pro testov\u00e1n\u00ed selh\u00e1n\u00ed.\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=e598a72faeb543599bdf0d930df3a71906404e6f\">Byla p\u0159id\u00e1na<\/a><\/noindex> mo\u017enost zas\u00edl\u00e1n\u00ed udev ozn\u00e1men\u00ed o zm\u011bn\u011b velikosti blokov\u00e9ho za\u0159\u00edzen\u00ed.\n<\/ul>\n<li class=\"l\"> <b>S\u00ed\u0165ov\u00e1 subsyst\u00e9m<\/b>\n<ul>\n<li class=\"l\"> V Netfilter byly zahrnuty <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=52548\">zm\u011bny<\/a><\/noindex>, co\u017e v\u00fdznamn\u011b urychluje zpracov\u00e1n\u00ed velk\u00fdch seznam\u016f shod (nftables set), kde je t\u0159eba ov\u011b\u0159it kombinaci pods\u00edt\u00ed, s\u00ed\u0165ov\u00fdch port\u016f, protokolu a MAC adres.<br \/>\nOptimalizace <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=7400b063969bdca4a06cd97f1294d765c8eecbe1\">byly provedeny<\/a><\/noindex> V modulu nft_set_pipapo (PIle PAcket POlicies), kter\u00fd \u0159e\u0161\u00ed \u00falohu p\u0159i\u0159azen\u00ed obsahu paketu k aplika\u010dn\u00edm pravidl\u016fm filtrov\u00e1n\u00ed pomoc\u00ed libovoln\u00fdch rozsah\u016f stav\u016f pol\u00ed, jako jsou rozsahy IP a s\u00ed\u0165ov\u00fdch port\u016f (nft_set_rbtree a nft_set_hash manipuluj\u00ed s p\u0159i\u0159azov\u00e1n\u00edm interval\u016f a p\u0159\u00edm\u00fdm odrazem hodnot). Vektorov\u00e1 verze pipapo s instrukcemi AVX2 o \u0161\u00ed\u0159ce 256 bit\u016f na syst\u00e9mu s procesorem AMD Epyc 7402 vyk\u00e1zala n\u00e1r\u016fst v\u00fdkonu o 420 % p\u0159i anal\u00fdze 30 000 z\u00e1znam\u016f zahrnuj\u00edc\u00edch kombinace port-protokol. N\u00e1r\u016fst p\u0159i p\u0159i\u0159azen\u00ed kombinace z pods\u00edt\u011b a \u010d\u00edsla portu p\u0159i anal\u00fdze 1 000 z\u00e1znam\u016f \u010dinil 87 % pro IPv4 a 128 % pro IPv6. <\/p>\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=571912c69f0ed731bd1e071ade9dc7ca4aa52065\">P\u0159id\u00e1no<\/a><\/noindex> Modul bareudp, kter\u00fd umo\u017e\u0148uje enkapsulaci r\u016fzn\u00fdch L3 protokol\u016f, jako jsou MPLS, IP a NSH, do UDP tunelu.\n<li class=\"l\"> Pokra\u010dovala integrace komponent MPTCP (MultiPath TCP), roz\u0161\u00ed\u0159en\u00ed protokolu TCP pro organizaci TCP spojen\u00ed s doru\u010dov\u00e1n\u00edm paket\u016f sou\u010dasn\u011b p\u0159es v\u00edce tras r\u016fzn\u00fdmi s\u00ed\u0165ov\u00fdmi rozhran\u00edmi, kter\u00e1 jsou p\u0159i\u0159azena k r\u016fzn\u00fdm IP adres\u00e1m.\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=50ff477a8639fa1fbbeecb5a6f2f8b6c5557ecec\">Byla p\u0159id\u00e1na<\/a><\/noindex> Podpora mechanism\u016f hardwarov\u00e9ho urychlen\u00ed enkapsulace Ethernetov\u00fdch r\u00e1mc\u016f v 802.11 (Wi-Fi).\n<li class=\"l\"> P\u0159i p\u0159esunu za\u0159\u00edzen\u00ed z jednoho prostorov\u00e9ho n\u00e1zvu s\u00ed\u0165ov\u00e9ho subsyst\u00e9mu (network namespace) do jin\u00e9ho byla zaji\u0161t\u011bna korekce pr\u00e1v p\u0159\u00edstupu a vlastn\u00edka p\u0159\u00edslu\u0161n\u00fdch soubor\u016f v sysfs.\n<li class=\"l\"> Byla poskytnuta mo\u017enost pou\u017eit\u00ed p\u0159\u00edznaku SO_BINDTODEVICE u\u017eivateli, kte\u0159\u00ed nemaj\u00ed pr\u00e1va root.\n<li class=\"l\"> Byla p\u0159ijata t\u0159et\u00ed \u010d\u00e1st patch\u016f, kter\u00e9 p\u0159ev\u00e1d\u011bj\u00ed n\u00e1stroje ethtool z ioctl() na pou\u017eit\u00ed rozhran\u00ed netlink. Nov\u00e9 rozhran\u00ed usnad\u0148uje p\u0159id\u00e1v\u00e1n\u00ed roz\u0161\u00ed\u0159en\u00ed, zlep\u0161uje zpracov\u00e1n\u00ed chyb, umo\u017e\u0148uje odes\u00edl\u00e1n\u00ed ozn\u00e1men\u00ed p\u0159i zm\u011bn\u011b stavu, zjednodu\u0161uje interakci mezi j\u00e1drem a u\u017eivatelsk\u00fdm prostorem a zkracuje po\u010det synchronizovan\u00fdch pojmenovan\u00fdch seznam\u016f.\n<li class=\"l\"> Byla p\u0159id\u00e1na mo\u017enost vyu\u017eit\u00ed speci\u00e1ln\u00edch hardwarov\u00fdch akceler\u00e1tor\u016f pro prov\u00e1d\u011bn\u00ed operac\u00ed sledov\u00e1n\u00ed p\u0159ipojen\u00ed.\n<li class=\"l\"> V netfilter <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=8537f78647c072bdb1a5dbe32e1c7e5b13ff1258\">p\u0159id\u00e1n<\/a><\/noindex> hook pro p\u0159ipojen\u00ed klasifik\u00e1tor\u016f odchoz\u00edch paket\u016f (egress), kter\u00fd doplnil d\u0159\u00edve p\u0159\u00edtomn\u00fd hook pro p\u0159\u00edchoz\u00ed pakety (ingress).\n<\/ul>\n<li class=\"l\"> <b>Virtualizace a bezpe\u010dnost<\/b>\n<ul>\n<li class=\"l\"> Byla p\u0159id\u00e1na hardwarov\u00e1 implementace autentizace ukazatel\u016f (<noindex><a rel=\"nofollow\" href=\"https:\/\/lwn.net\/Articles\/718888\/\">Pointer Authentication<\/a><\/noindex>), kter\u00e1 pou\u017e\u00edv\u00e1 specializovan\u00e9 instrukce CPU ARM64 na ochranu proti \u00fatok\u016fm vyu\u017e\u00edvaj\u00edc\u00edm techniky n\u00e1vratov\u00e9ho programov\u00e1n\u00ed (ROP), kdy se \u00fato\u010dn\u00edk nesna\u017e\u00ed um\u00edstit sv\u016fj k\u00f3d do pam\u011bti, ale manipuluje s existuj\u00edc\u00edmi \u010d\u00e1stmi strojov\u00fdch instrukc\u00ed v na\u010dten\u00fdch knihovn\u00e1ch, kter\u00e9 kon\u010d\u00ed instrukc\u00ed n\u00e1vratu \u0159\u00edzen\u00ed. Ochrana spo\u010d\u00edv\u00e1 v pou\u017eit\u00ed digit\u00e1ln\u00edch podpis\u016f k ov\u011b\u0159en\u00ed n\u00e1vratov\u00fdch adres na \u00farovni j\u00e1dra. Podpis je ulo\u017een v nevyu\u017e\u00edvan\u00fdch horn\u00edch bitech samotn\u00e9ho ukazatele. Na rozd\u00edl od softwarov\u00fdch \u0159e\u0161en\u00ed se vytv\u00e1\u0159en\u00ed a ov\u011b\u0159ov\u00e1n\u00ed digit\u00e1ln\u00edch podpis\u016f prov\u00e1d\u00ed pomoc\u00ed speci\u00e1ln\u00edch instrukc\u00ed CPU.\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=57e5d4f278b9522646b49a3a97ebf5f2b8f9d4cf\">Byla p\u0159id\u00e1na<\/a><\/noindex> mo\u017enost chr\u00e1nit pam\u011b\u0165ovou oblast p\u0159ed z\u00e1pisem pomoc\u00ed syst\u00e9mov\u00e9ho vol\u00e1n\u00ed userfaultfd(), ur\u010den\u00e9ho pro zpracov\u00e1n\u00ed page faults (p\u0159\u00edstup k nealokovan\u00fdm str\u00e1nk\u00e1m pam\u011bti) v u\u017eivatelsk\u00e9 prostor. My\u0161lenka je vyu\u017e\u00edt userfaultfd() tak\u00e9 k sledov\u00e1n\u00ed poru\u0161en\u00ed p\u0159\u00edstupu ke str\u00e1nk\u00e1m ozna\u010den\u00fdm jako chr\u00e1n\u011bn\u00e9 p\u0159ed z\u00e1pisem a k vyvol\u00e1n\u00ed obslu\u017en\u00e9ho programu, kter\u00fd m\u016f\u017ee reagovat na takov\u00e9 pokusy o z\u00e1pis (nap\u0159\u00edklad k zpracov\u00e1n\u00ed zm\u011bn p\u0159i vytv\u00e1\u0159en\u00ed \u017eiv\u00fdch sn\u00edmk\u016f b\u011b\u017e\u00edc\u00edch proces\u016f, zaji\u0161t\u011bn\u00ed stavu p\u0159i odes\u00edl\u00e1n\u00ed dump\u016f pam\u011bti na disk, realizaci sd\u00edlen\u00e9 pam\u011bti, sledov\u00e1n\u00ed zm\u011bn v pam\u011bti). Funk\u010dnost <noindex><a rel=\"nofollow\" href=\"https:\/\/lwn.net\/Articles\/787308\/\">je ekvivalentn\u00ed<\/a><\/noindex> pou\u017eit\u00ed mprotect() v kombinaci s obslu\u017en\u00fdm sign\u00e1lem SIGSEGV, ale funguje v\u00fdrazn\u011b rychleji.\n<li class=\"l\"> V SELinux byl deklarov\u00e1n zastaral\u00fd parametr &#171;checkreqprot&#187;, kter\u00fd umo\u017e\u0148uje vypnout kontrolu ochrany pam\u011bti p\u0159i zpracov\u00e1n\u00ed pravidel (umo\u017e\u0148oval pou\u017e\u00edv\u00e1n\u00ed vykon\u00e1van\u00fdch oblast\u00ed pam\u011bti, bez ohledu na p\u0159edpisy uveden\u00e9 v pravidlech). Symbolick\u00fdm odkaz\u016fm v kernfs bylo povoleno d\u011bd\u011bn\u00ed kontextu rodi\u010dovsk\u00fdch adres\u00e1\u0159\u016f.\n<li class=\"l\"> Slo\u017een\u00ed <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/linus\/4dece7f3b925\">bylo zapnuto<\/a><\/noindex> modul <noindex><a rel=\"nofollow\" href=\"https:\/\/lwn.net\/Articles\/808048\/\">KRSI<\/a><\/noindex>, kter\u00fd umo\u017e\u0148uje p\u0159 attaching BPF programy k jak\u00fdmkoli LSM h\u00e1\u010dk\u016fm v j\u00e1d\u0159e. Zm\u011bna umo\u017e\u0148uje vytv\u00e1\u0159et LSM moduly (Linux Security Module) ve form\u011b BPF program\u016f pro \u00fa\u010dely auditu a mandatorn\u00edho \u0159\u00edzen\u00ed p\u0159\u00edstupu.\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=31c0aa87ec8a30b1e9e4cf862905a369560f7705\">Bylo provedeno<\/a><\/noindex> optimalizace v\u00fdkonu \/dev\/random d\u00edky d\u00e1vkov\u00e9mu p\u0159enosu hodnot CRNG nam\u00edsto jednotliv\u00e9ho vol\u00e1n\u00ed instrukc\u00ed RNG. Zlep\u0161ena funkce getrandom a \/dev\/random na syst\u00e9mech ARM64, kter\u00e9 poskytuj\u00ed instrukce RNG.\n<li class=\"l\"> Implementace elliptick\u00e9 k\u0159ivky Curve25519 <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=07b586fe06625b0b610dc3d3a969c51913d143d4\">byla nahrazena<\/a><\/noindex> variantou z knihovny <noindex><a rel=\"nofollow\" href=\"https:\/\/hacl-star.github.io\/\">HACL<\/a><\/noindex>, pro kterou <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=50470\">byla pod\u00e1na<\/a><\/noindex> matematick\u00e9 dokazov\u00e1n\u00ed form\u00e1ln\u00ed verifikace spolehlivosti.\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=1edca85e768a\">P\u0159id\u00e1no<\/a><\/noindex> mechanismus informov\u00e1n\u00ed o voln\u00fdch str\u00e1nk\u00e1ch pam\u011bti. Pomoc\u00ed tohoto mechanismu mohou hostitelsk\u00e9 syst\u00e9my zas\u00edlat hostitelsk\u00e9 syst\u00e9m informace o str\u00e1nk\u00e1ch, kter\u00e9 ji\u017e nejsou pou\u017e\u00edv\u00e1ny, a hostitelsk\u00fd syst\u00e9m m\u016f\u017ee tyto str\u00e1nky vr\u00e1tit zp\u011bt.\n<li class=\"l\"> Ve vfio\/pci <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=137e5531351db258eff58ea28f4dc8fdf7ca2990\">byla p\u0159id\u00e1na<\/a><\/noindex> podpora SR-IOV (Single-Root I\/O Virtualization).\n<\/ul>\n<li class=\"l\"> <b>Pam\u011b\u0165 a syst\u00e9mov\u00e9 slu\u017eby<\/b>\n<ul>\n<li class=\"l\"> Od 80 do 100 znak\u016f <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=bdc48fa11e46\">zv\u00fd\u0161eno<\/a><\/noindex> omezen\u00ed maxim\u00e1ln\u00ed d\u00e9lky \u0159et\u011bzce v p\u016fvodn\u00edch textech. P\u0159esto se v\u00fdvoj\u00e1\u0159\u016fm st\u00e1le doporu\u010duje dr\u017eet se v mez\u00edch 80 znak\u016f na \u0159et\u011bzec, ale to nyn\u00ed nen\u00ed striktn\u00ed limit. Krom\u011b toho p\u0159ekro\u010den\u00ed limitu velikosti \u0159et\u011bzce nyn\u00ed povede k vyps\u00e1n\u00ed varov\u00e1n\u00ed p\u0159i sestavov\u00e1n\u00ed pouze pokud je n\u00e1stroj checkpatch spu\u0161t\u011bn s volbou &#171;&#8212;strict&#8217;. Zm\u011bna umo\u017en\u00ed neodv\u00e1d\u011bt pozornost v\u00fdvoj\u00e1\u0159\u016f od <noindex><a rel=\"nofollow\" href=\"https:\/\/lkml.org\/lkml\/2020\/5\/28\/1245\">manipulace<\/a><\/noindex> s mezerami a voln\u011bji se c\u00edtit p\u0159i zarovn\u00e1v\u00e1n\u00ed k\u00f3du, a tak\u00e9  <noindex><a rel=\"nofollow\" href=\"https:\/\/lkml.org\/lkml\/2020\/5\/28\/1237\">zabr\u00e1n\u00ed<\/a><\/noindex> nadm\u011brn\u00e9mu d\u011blen\u00ed \u0159et\u011bzc\u016f, <noindex><a rel=\"nofollow\" href=\"https:\/\/lkml.org\/lkml\/2020\/5\/29\/1038\">kter\u00e9 p\u0159ek\u00e1\u017eej\u00ed<\/a><\/noindex> vn\u00edm\u00e1n\u00ed k\u00f3du a vyhled\u00e1v\u00e1n\u00ed.\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=17054f492dfd4d91e093ebb87013807812ec42a4\">Byla p\u0159id\u00e1na<\/a><\/noindex> podpora sm\u00ed\u0161en\u00e9ho re\u017eimu zav\u00e1d\u011bn\u00ed EFI, kter\u00fd umo\u017e\u0148uje zav\u00e9st 64bitov\u00e9 j\u00e1dro z 32bitov\u00e9ho firmware bez pou\u017eit\u00ed specializovan\u00e9ho zav\u00e1d\u011b\u010de b\u011b\u017e\u00edc\u00edho na 64bitov\u00e9m CPU.\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=6650cdd9a8ccf00555dbbe743d58541ad8feb6a7\">Byla zapnuta<\/a><\/noindex> syst\u00e9m pro detekci a lad\u011bn\u00ed rozd\u011blen\u00fdch z\u00e1mk\u016f (&#171;<noindex><a rel=\"nofollow\" href=\"https:\/\/lwn.net\/Articles\/806466\/\">split lock<\/a><\/noindex>&#171;), kter\u00e9 vznikaj\u00ed p\u0159i p\u0159\u00edstupu k nevyrovnan\u00fdm dat\u016fm v pam\u011bti, proto\u017ee p\u0159i prov\u00e1d\u011bn\u00ed atom\u00e1rn\u00ed instrukce data p\u0159ekra\u010duj\u00ed dv\u011b linky cache CPU. Takov\u00e9 z\u00e1mky vedou k v\u00fdznamn\u00e9mu poklesu v\u00fdkonu (o 1000 cykl\u016f pomalej\u0161\u00ed ne\u017e atom\u00e1rn\u00ed operace s daty, kter\u00e1 spadaj\u00ed do jedn\u00e9 linky cache). V z\u00e1vislosti na zav\u00e1d\u011bc\u00edm parametru &#171;split_lock_detect&#187; j\u00e1dro m\u016f\u017ee na m\u00edst\u011b detekovat takov\u00e9 z\u00e1mky a vypisovat varov\u00e1n\u00ed nebo pos\u00edlat sign\u00e1l SIGBUS aplikaci, kter\u00e1 z\u00e1mek zp\u016fsobila.\n<li class=\"l\"> V pl\u00e1nova\u010di \u00faloh je zaji\u0161t\u011bno sledov\u00e1n\u00ed ukazatel\u016f teplotn\u00edch senzor\u016f (<noindex><a rel=\"nofollow\" href=\"https:\/\/lwn.net\/Articles\/788380\/\">Thermal Pressure<\/a><\/noindex>) a byl implementov\u00e1n monitoring p\u0159eh\u0159\u00e1t\u00ed p\u0159i p\u0159i\u0159azov\u00e1n\u00ed \u00faloh. Na z\u00e1klad\u011b poskytovan\u00fdch statistik m\u016f\u017ee \u0159\u00eddic\u00ed prvek teploty (thermal governor) upravovat maxim\u00e1ln\u00ed frekvenci CPU p\u0159i p\u0159eh\u0159\u00e1t\u00ed, a pl\u00e1nova\u010d \u00faloh nyn\u00ed zohled\u0148uje sn\u00ed\u017een\u00ed v\u00fdpo\u010detn\u00edho v\u00fdkonu z d\u016fvodu takov\u00e9ho sn\u00ed\u017een\u00ed frekvence p\u0159i pl\u00e1nov\u00e1n\u00ed spu\u0161t\u011bn\u00ed \u00faloh (d\u0159\u00edve pl\u00e1nova\u010d reagoval na zm\u011bnu frekvence s ur\u010dit\u00fdm zpo\u017ed\u011bn\u00edm, n\u011bjakou dobu \u010dinil rozhodnut\u00ed na z\u00e1klad\u011b nadhodnocen\u00fdch p\u0159edpoklad\u016f o dostupn\u00fdch v\u00fdpo\u010detn\u00edch zdroj\u00edch).\n<li class=\"l\"> V pl\u00e1nova\u010di \u00faloh jsou zapojeny <noindex><a rel=\"nofollow\" href=\"https:\/\/lwn.net\/Articles\/816388\/\">invariantn\u00ed ukazatele<\/a><\/noindex> sledov\u00e1n\u00ed z\u00e1t\u011b\u017ee, kter\u00e9 umo\u017e\u0148uj\u00ed spr\u00e1vn\u011b hodnotit z\u00e1t\u011b\u017e, bez ohledu na aktu\u00e1ln\u00ed frekvenci CPU. Zm\u011bna umo\u017e\u0148uje p\u0159esn\u011bji progn\u00f3zovat chov\u00e1n\u00ed \u00faloh za podm\u00ednek dynamick\u00fdch zm\u011bn nap\u011bt\u00ed a frekvence CPU. Nap\u0159\u00edklad \u00faloha, kter\u00e1 spot\u0159ebov\u00e1vala 1\/3 zdroj\u016f CPU p\u0159i frekvenci 1000 MHz, za\u010dne spot\u0159ebov\u00e1vat 2\/3 zdroj\u016f p\u0159i sn\u00ed\u017een\u00ed frekvence na 500 MHz, co\u017e d\u0159\u00edve vytv\u00e1\u0159elo fale\u0161n\u00fd dojem o provozu na plnou kapacitu (tj. \u00falohy pro pl\u00e1nova\u010d se zd\u00e1ly b\u00fdt v\u011bt\u0161\u00ed pouze kv\u016fli sn\u00ed\u017een\u00ed frekvence, co\u017e vedlo k p\u0159ijet\u00ed nespr\u00e1vn\u00fdch rozhodnut\u00ed v schedutil cpufreq governor).\n<li class=\"l\"> Ovlada\u010d Intel P-state, zodpov\u011bdn\u00fd za v\u00fdb\u011br re\u017eim\u016f v\u00fdkonu, byl p\u0159eveden na pou\u017eit\u00ed <noindex><a rel=\"nofollow\" href=\"https:\/\/www.kernel.org\/doc\/Documentation\/cpu-freq\/governors.txt\">schedutil<\/a><\/noindex>.\n<li class=\"l\"> Byla implementov\u00e1na mo\u017enost vyu\u017eit\u00ed subsyst\u00e9mu BPF p\u0159i provozu j\u00e1dra v re\u00e1ln\u00e9m \u010dase (PREEMPT_RT). D\u0159\u00edve bylo p\u0159i aktivaci PREEMPT_RT na\u0159\u00edzeno vypnout BPF.\n<li class=\"l\"> Byl p\u0159id\u00e1n nov\u00fd typ BPF program\u016f &#8212; BPF_MODIFY_RETURN, kter\u00e9 mohou b\u00fdt p\u0159ipojeny k funkc\u00edm v j\u00e1dru a m\u011bnit vracenou hodnotu t\u00e9to funkce.\n<li class=\"l\"> Byla p\u0159id\u00e1na <noindex><a rel=\"nofollow\" href=\"https:\/\/lwn.net\/Articles\/807882\/\">mo\u017enost<\/a><\/noindex> pou\u017eit\u00ed syst\u00e9mov\u00e9ho vol\u00e1n\u00ed clone3() pro vytv\u00e1\u0159en\u00ed proces\u016f v cgroup, kter\u00e1 se li\u0161\u00ed od rodi\u010dovsk\u00e9 cgroup, co\u017e umo\u017e\u0148uje rodi\u010dovsk\u00e9mu procesu uplatnit omezen\u00ed a zahrnout \u00fa\u010detnictv\u00ed ihned po vzniku nov\u00e9ho procesu nebo vl\u00e1kna. Nap\u0159\u00edklad spr\u00e1vce slu\u017eeb m\u016f\u017ee p\u0159\u00edmo p\u0159id\u011blovat nov\u00e9 slu\u017eby do samostatn\u00fdch cgroup, a nov\u00e9 procesy p\u0159i um\u00edst\u011bn\u00ed do &#171;zamra\u017een\u00fdch&#187; cgroup budou okam\u017eit\u011b zastaveny.\n<li class=\"l\"> v Kbuild <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=a0d1c951ef08ed24f35129267e3595d86f57f5d3\">byla p\u0159id\u00e1na<\/a><\/noindex> podpora prom\u011bnn\u00e9 prost\u0159ed\u00ed &#171;LLVM=1&#187; pro p\u0159epnut\u00ed na n\u00e1stroj Clang\/LLVM p\u0159i sestavov\u00e1n\u00ed j\u00e1dra. Zvednuty byly po\u017eadavky na verzi binutils (2.23).\n<li class=\"l\"> Do debugfs byla p\u0159id\u00e1na sekce \/sys\/kernel\/debug\/kunit\/ s v\u00fdsledky test\u016f kunit.\n<li class=\"l\"> Byl p\u0159id\u00e1n parametr na\u010d\u00edt\u00e1n\u00ed j\u00e1dra pm_debug_messages (analog \/sys\/power\/pm_debug_messages), kter\u00fd zahrnuje v\u00fdstup ladic\u00edch informac\u00ed o pr\u00e1ci syst\u00e9mu \u0159\u00edzen\u00ed nap\u00e1jen\u00ed (u\u017eite\u010dn\u00e9 p\u0159i lad\u011bn\u00ed probl\u00e9m\u016f s re\u017eimy sp\u00e1nku a \u010dek\u00e1n\u00ed).\n<li class=\"l\"> Do rozhran\u00ed asynchronn\u00edho vstupu\/v\u00fdstupu <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=50631#io_uring\">io_uring<\/a><\/noindex> byla p\u0159id\u00e1na podpora  <noindex><a rel=\"nofollow\" href=\"https:\/\/www.man7.org\/linux\/man-pages\/man2\/splice.2.html\">splice()<\/a><\/noindex> a <noindex><a rel=\"nofollow\" href=\"https:\/\/lwn.net\/Articles\/815491\/\">atom\u00e1rn\u00ed v\u00fdb\u011br buffer\u016f<\/a><\/noindex>.\n<li class=\"l\"> Zlep\u0161eno profilov\u00e1n\u00ed cgroup pomoc\u00ed n\u00e1stroje perf. D\u0159\u00edve mohl perf profilovat \u00fakoly pouze v ur\u010dit\u00e9 cgroup a nemohl zjistit, k jak\u00e9 cgroup pat\u0159\u00ed aktu\u00e1ln\u00ed vzorek. Nyn\u00ed perf z\u00edsk\u00e1v\u00e1 informace o cgroup pro ka\u017ed\u00fd vzorek, co\u017e umo\u017e\u0148uje profilovat v\u00edce ne\u017e jednu cgroup a aplikovat t\u0159\u00edd\u011bn\u00ed podle<br \/>\ncgroup v zpr\u00e1v\u00e1ch.<\/p>\n<li class=\"l\"> V cgroupfs, pseudo-FS pro spr\u00e1vu cgroups, byla p\u0159id\u00e1na podpora roz\u0161\u00ed\u0159en\u00fdch atribut\u016f (xattrs), pomoc\u00ed kter\u00fdch lze nap\u0159\u00edklad ponechat dal\u0161\u00ed informace pro zpracovatele ve u\u017eivatelsk\u00e9m prostoru.\n<li class=\"l\"> V cgroup memory controller <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=8a931f801340\">p\u0159id\u00e1n<\/a><\/noindex>a podpora rekurzivn\u00ed ochrany hodnoty \u201ememory.low\u201c, kter\u00e1 reguluje minim\u00e1ln\u00ed objem opera\u010dn\u00ed pam\u011bti poskytovan\u00e9 \u010dlen\u016fm skupiny. P\u0159i mont\u00e1\u017ei hierarchie cgroup s volbou \u201ememory_recursiveprot\u201c bude hodnota \u201ememory.low\u201c, kter\u00e1 je nastavena pro doln\u00ed uzly, automaticky p\u0159id\u011blena v\u0161em pod\u0159\u00edzen\u00fdm uzl\u016fm.\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/linus\/aa017ab97a22\">P\u0159id\u00e1no<\/a><\/noindex>  framework Uacce (Unified\/User-space-access-intended Accelerator Framework) pro sd\u00edlen\u00ed virtu\u00e1ln\u00edch adres (SVA, Shared Virtual Addressing) mezi CPU a perifern\u00edmi za\u0159\u00edzen\u00edmi, umo\u017e\u0148uj\u00edc\u00ed hardwarov\u00fdm akceler\u00e1tor\u016fm p\u0159\u00edstup k datov\u00fdm struktur\u00e1m v hlavn\u00edm CPU.\n<\/li>\n<\/ul>\n<\/li>\n<li class=\"l\"> <b>Hardwarov\u00e9 architektury<\/b>\n<ul>\n<li class=\"l\"> Pro architekturu ARM byla implementov\u00e1na funkce hork\u00e9ho vyjmut\u00ed pam\u011bti.\n<li class=\"l\"> Pro architekturu RISC-V byla p\u0159id\u00e1na podpora hork\u00e9ho p\u0159ipojen\u00ed a vyjmut\u00ed CPU (CPU hotplug). Pro 32bitov\u00e9 RISC-V byl implementov\u00e1n eBPF JIT.\n<li class=\"l\"> Byla odstran\u011bna mo\u017enost pou\u017eit\u00ed 32bitov\u00fdch ARM syst\u00e9m\u016f pro spu\u0161t\u011bn\u00ed hostitelsk\u00fdch prost\u0159ed\u00ed KVM.\n<li class=\"l\"> Byla odstran\u011bna \u201efiktivn\u00ed\u201c implementace NUMA pro architekturu s390, pro kterou nebyly nalezeny sc\u00e9n\u00e1\u0159e vyu\u017eit\u00ed zaji\u0161\u0165uj\u00edc\u00ed zv\u00fd\u0161en\u00ed v\u00fdkonu.\n<li class=\"l\"> Pro ARM64 byla p\u0159id\u00e1na podpora roz\u0161\u00ed\u0159en\u00ed AMU (Activity Monitors Unit), definovan\u00e9ho v ARMv8.4 a poskytuj\u00edc\u00edho v\u00fdkonnostn\u00ed proctery, kter\u00e9 jsou vyu\u017eity pro v\u00fdpo\u010det koeficient\u016f \u00fapravy \u0161k\u00e1lov\u00e1n\u00ed frekvence v pl\u00e1nova\u010di \u00faloh.\n<\/ul>\n<li class=\"l\"> <b>Hardware<\/b>\n<ul>\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=961e9c84077f\">Byla p\u0159id\u00e1na<\/a><\/noindex> podpora za\u0159\u00edzen\u00ed vDPA, kter\u00e1 pou\u017e\u00edvaj\u00ed datov\u00fd kan\u00e1l odpov\u00eddaj\u00edc\u00ed specifikac\u00edm virtio. vDPA za\u0159\u00edzen\u00ed mohou b\u00fdt fyzicky p\u0159ipojen\u00fdm za\u0159\u00edzen\u00edmi nebo emulovan\u00fdmi softwarov\u00fdmi virtu\u00e1ln\u00edmi za\u0159\u00edzen\u00edmi.\n<li class=\"l\"> V subsyst\u00e9mu GPIO <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=51c1064e82e7\">se objevila<\/a><\/noindex> nov\u00fd p\u0159\u00edkaz ioctl() pro sledov\u00e1n\u00ed zm\u011bn, kter\u00fd umo\u017e\u0148uje informovat proces o zm\u011bn\u011b stavu jak\u00e9koliv \u0159ady GPIO. Jako p\u0159\u00edklad pou\u017eit\u00ed nov\u00e9ho p\u0159\u00edkazu <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=33f0c47b8fb4\">navr\u017eena<\/a><\/noindex> n\u00e1stroj gpio-watch.\n<li class=\"l\"> V DRM ovlada\u010di i915 pro grafick\u00e9 karty Intel <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=f365ab31efacb70bed1e821f7435626e0b2528a6\">je zahrnuta<\/a><\/noindex> v\u00fdchoz\u00ed podpora \u010dip\u016f Tigerlake (\u201eGen12\u201c) a p\u0159id\u00e1na z\u00e1kladn\u00ed podpora pro \u0159\u00edzen\u00ed podsv\u00edcen\u00ed OLED. Vylep\u0161ena podpora \u010dip\u016f Ice Lake, Elkhart Lake, Baytrail a Haswell.\n<li class=\"l\"> V ovlada\u010di amdgpu <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=f365ab31efacb70bed1e821f7435626e0b2528a6\">byla p\u0159id\u00e1na<\/a><\/noindex> mo\u017enost nahr\u00e1v\u00e1n\u00ed firmwaru do \u010dipu USBC pro ASIC. Zlep\u0161ena podpora \u010dip\u016f AMD Ryzen 4000 \u201eRenoir\u201c. Byla zavedena podpora pro \u0159\u00edzen\u00ed OLED panel\u016f. Zaji\u0161t\u011bno zobrazen\u00ed stavu firmwaru v debugfs.\n<li class=\"l\"> V DRM ovlada\u010di vmwgfx pro virtu\u00e1ln\u00ed syst\u00e9my VMware byla p\u0159id\u00e1na mo\u017enost pou\u017eit\u00ed OpenGL 4 v hostuj\u00edc\u00edch syst\u00e9mech (d\u0159\u00edve byla podporov\u00e1na OpenGL 3.3).\n<li class=\"l\"> Byl p\u0159id\u00e1n nov\u00fd DRM ovlada\u010d tidss pro zobrazovac\u00ed syst\u00e9m platformy TI Keystone.\n<li class=\"l\"> Byly p\u0159id\u00e1ny ovlada\u010de pro LCD panely: Feixin K101 IM2BA02, Samsung s6e88a0-ams452ef01, Novatek NT35510, Elida KD35T133, EDT, NewEast Optoelectronics WJFH116008A, Rocktech RK101II01D-CT, Frida FRD350H54004.\n<li class=\"l\"> V syst\u00e9mu \u0159\u00edzen\u00ed nap\u00e1jen\u00ed <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/linus\/16292bed9c56a20715d942fd5d9e025f01fa65fe\">byla p\u0159id\u00e1na<\/a><\/noindex> podpora platformy Intel Jasper Lake (JSL) na b\u00e1zi Atom.\n<li class=\"l\"> Byla p\u0159id\u00e1na podpora notebooku Pinebook Pro na b\u00e1zi Rockchip RK3399, tabletu Pine64 PineTab a chytr\u00e9ho telefonu <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=52662\">PinePhone<\/a><\/noindex>  na b\u00e1zi Allwinner A64.\n<li class=\"l\"> Byla p\u0159id\u00e1na podpora nov\u00fdch audio kodek\u016f a \u010dip\u016f:<br \/>\n Amlogic AIU, Amlogic T9015, Texas Instruments TLV320ADCX140, Realtek RT5682, ALC245, Broadcom BCM63XX I2S, Maxim MAX98360A, Presonus Studio 1810c, MOTU MicroBook IIc.<\/p>\n<li class=\"l\"> P\u0159id\u00e1na podpora ARM platforem a platforem Qualcomm Snapdragon 865 (SM8250), IPQ6018, NXP i.MX8M Plus, Kontron \u201esl28\u201c, 11 variant desky i.MX6 TechNexion Pico, t\u0159i nov\u00e9 varianty Toradex Colibri, Samsung S7710 Galaxy Xcover 2 na b\u00e1zi ST-Ericsson u8500, DH Electronics DHCOM SoM a PDK2, Renesas M3ULCB, Hoperun HiHope, Linutronix Testbox v2, PocketBook Touch Lux 3.\n<\/ul>\n<\/ul>\n<p><noindex><a rel=\"nofollow\" name=\"link\"><\/a><\/noindex><\/p>\n<p>Zdroj: <a \ncontent=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=53062\">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.7. \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: \u043d\u043e\u0432\u0430\u044f \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0424\u0421 exFAT, \u043c\u043e\u0434\u0443\u043b\u044c bareudp \u0434\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f UDP-\u0442\u0443\u043d\u043d\u0435\u043b\u0435\u0439, \u0437\u0430\u0449\u0438\u0442\u0430 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438 \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0435\u0439 \u0434\u043b\u044f ARM64, \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043f\u0440\u0438\u043a\u0440\u0435\u043f\u043b\u0435\u043d\u0438\u044f BPF-\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c \u043a LSM-\u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430\u043c, \u043d\u043e\u0432\u0430\u044f \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f Curve25519, \u0434\u0435\u0442\u0435\u043a\u0442\u043e\u0440 &#171;split-lock&#187;, \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u044c BPF \u0441 PREEMPT_RT, \u0441\u043d\u044f\u0442\u0438\u0435 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f \u043d\u0430 80-\u0441\u0438\u043c\u0432\u043e\u043b\u044c\u043d\u044b\u0439 \u0440\u0430\u0437\u043c\u0435\u0440 \u0441\u0442\u0440\u043e\u043a\u0438 \u0432 \u043a\u043e\u0434\u0435, \u0443\u0447\u0451\u0442 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0435\u0439 [&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-83515","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - 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\/cs\/blog\/news\/reliz-yadra-linux-5-7\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"cs_CZ\" \/>\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.7 | 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\/cs\/blog\/news\/reliz-yadra-linux-5-7\" \/>\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-06-01T11:41:56+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-06-01T11:41:56+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47 Vyd\u00e1n\u00ed j\u00e1dra Linux 5.7 | ProHoster","description":"Po dvou m\u011bs\u00edc\u00edch v\u00fdvoje p\u0159edstavil Linus Torvalds vyd\u00e1n\u00ed j\u00e1dra Linux.","canonical_url":"https:\/\/prohoster.info\/cs\/blog\/news\/reliz-yadra-linux-5-7","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"cs_CZ","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.7 | 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\/cs\/blog\/news\/reliz-yadra-linux-5-7","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-06-01T11:41:56+00:00","article:modified_time":"2020-06-01T11:41:56+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"83515","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 15:16:22","updated":"2022-10-03 19:48:18","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts\/83515","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/comments?post=83515"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts\/83515\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/media?parent=83515"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/categories?post=83515"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/tags?post=83515"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}