Portál AbcLinuxu, 25. května 2024 20:45

Jaderné noviny – 8. 9. 2017

10. 10. 2017 | Redakce
Články - Jaderné noviny – 8. 9. 2017  

Stav vydání jádra. Cook: Bezpečnostní záležitosti v Linuxu 4.13. Citát týdne: lguest nám bude chybět. Přehledově: Omezovače rychlosti CPU a vzdálená zpětná volání a Změna notifikátoru MMU na poslední chvíli.

Stav vývoje jádra

Jádro 4.13 je venku, vyšlo 3. září. Stěžejní vlastnosti tohoto vydání zahrnují tvrzení jádra pomocí randomizace rozvržení struktur v paměti, nativní podporu protokolu TLS, lepší odkládání velkých stránek, vylepšenou obsluhu chyb při zpětném zápisu, lepší podporu asynchronního I/O, lepší správu napájení díky predikci následujících přerušení, eliminaci nástrojů DocBook ke generování formátované dokumentace a další. V oznámení je explicitně zmíněna ještě jedna změna: „Příslušná změna spočívá v prostém přepnutí výchozího chování cifs: již nebude výchozí SMB 1.0 (které byste opravdu používat neměli: vygooglete si ‚stop using SMB1‘ nebo něco podobného), nýbrž výchozí volbou pro připojení cifs bude modernější SMB 3.0.“

Začleňovací okno 4.14 bylo otevřeno. V době psaní tohoto článku bylo začleněno na 6 200 sad změn.

Stabilní aktualizace: 4.9.47, 4.4.86 a 3.18.69 byly vydány 2. září. 7. září je pak následovaly aktualizace 4.12.11, 4.9.48, 4.4.87 a 3.18.70.

Greg Kroah-Hartman zopakoval, že 4.14 (pravděpodobně) bude příštím jádrem s dlouhodobou podporou.

Cook: Bezpečnostní záležitosti v Linuxu 4.13

Kees Cook vyzdvihuje změny v jádře 4.13 týkající se bezpečnosti. „Daniel Micay vytvořil variantu FORTIFY_SOURCE z glibc, tedy novou ochranu při překladu a za běhu, která slouží k vyhledávání přetečení v častých funkcích pro manipulaci s řetězci (např. strcpy, strcmp) a pamětí (např. memcpy, memcmp). Myšlenka spočívá v tom, že překladač už zná velikost řady bufferovaných argumentů, a tak může zahrnout kontrolu přetečení bufferu. Když jsou všechny velikosti známy už při překladu, překladač tím pádem může ukončit sestavení selháním, místo aby pokračoval s prokazatelným přetečením. Když jsou známy jen některé velikosti (např. cíl je znám už při překladu, ale zdroj jen za běhu), přidají se kontroly za běhu, aby odchytily všechny možné případy, ve kterých může dojít k přetečení. Díky tomu bylo odhaleno několik míst, kde docházelo k menším únikům, a s Danielem jsme opatřili příslušné opravy.“

Citát týdne

Lguest je dobrodružství, jehož Hrdinou jsi ty, čtenáři. Těžko si vzpomínám na jiné projekty o 5000 řádek, které by nabízely takové možnosti a zároveň náhledy do budoucnosti. Je to vzrušující chvíle na to, ponořit se do kódu! Ale pozor! Je to náročná cesta na několik hodin, ne-li víc. A jak víme, všichni správní Hrdinové jsou vedeni Vznešeným Cílem. Proto každý, kdo projde celou tuto dokumentaci, má u mě Pivo (nebo ekvivalent).

lguest nám bude chybět

Omezovače rychlosti CPU a vzdálená zpětná volání

CPU frequency governors and remote callbacks. Viresh Kumar. 4. září 2017

Do jádra 4.14 se dostane důležitá optimalizace, která by měla pomoci budoucím zařízením reagovat s menší latencí, ale zároveň šetřit energii.

Jaderné omezovače rychlosti CPU (CPU frequency governors) dříve byly pouze reaktivní – regulovaly výkon na základě aktivity v minulosti – a řídily jednotlivé procesory v systému nezávisle. Později přibyla možnost spolupráce s plánovačem, a tedy proaktivní chování, ale pouze při změně lokální fronty procesů. Novinkou je spolupráce mezi CPU (pokud to architektura umožňuje), aby byly uspokojeny úlohy, které vyžadují co nejmenší latenci, např. vykreslování uživatelské rozhraní Androidu.

Článek na Linux Weekly News.

Změna notifikátoru MMU na poslední chvíli

A last-minute MMU notifier change. Jonathan Corbet. 5. září 2017

Popis problémů s API, které málem zdržely vydání Linuxu 4.13.

Jednotka pro správu paměti (memory-management unit, MMU) se stará o překlad mezi virtuálními a fyzickými adresami, oprávnění pro přístup k paměti, přítomnost fyzických stránek v paměti atd. Dříve byla dobře abstrahovaná a vývojáři se nemuseli starat o podrobnosti v ní ukryté. To se ale změnilo s rozšířením virtualizace, výpočtů na GPU aj.

Proto v jádře 2.6.27 přibyl notifikační mechanismus MMU, který umožnil libovolnému subsystému vyžádat si od MMU zprávu o změně stránek procesu. Praktická implementace spočívala v upozornění, že byla zneplatněna buď konkrétní stránka, nebo rozsah paměti.

V kandidátovi na vydání 4.13 byla objevena chyba, která vedla k pádu systému, na němž bylo provozováno KVM. Problém spočíval v záměně zpětných volání upozorňujících na neplatnost stránky, resp. rozsahu paměti. Prvnímu je totiž umožněno se uspat (sleep), druhému nikoliv – přitom uspání není povoleno, když je zabrán spinlock, a tak použití notifikace na zneplatnění stránky vede k riziku souběhu (race condition).

To vyústilo ve snahu zcela se zbavit notifikace umožňující uspání, a opravdu se tak stalo na poslední chvíli před vydáním 4.13. Moduly, které na toto zpětné volání spoléhají, tím pádem musejí být přepsány, aby fungovaly s novým jádrem.

Článek na Linux Weekly News.

Odkazy a zdroje

LWN.net

Další články z této rubriky

Jaderné noviny – přehled za duben 2024
Jaderné noviny – přehled za březen 2024
Jaderné noviny – přehled za únor 2024
Jaderné noviny – přehled za leden 2024
Jaderné noviny – přehled za prosinec 2023

Diskuse k tomuto článku

11.10.2017 09:16 Jaja
Rozbalit Rozbalit vše Re: Jaderné noviny – 8. 9. 2017
Odpovědět | Sbalit | Link | Blokovat | Admin
Nedoporučuje se používat SMB 1.0. Ale SMB 3.0 neumí Unix extensions (nebo alespoň mě nechodí).
Chtěl bych vidět v seznamu souborů reálného vlastníka a reálná přístupová práva, což mi bez zmíněných Unix extensions nejde.
Jde to u SMB 3.0 nějak nastavit?
11.10.2017 20:35 pc2005 | skóre: 38 | blog: GardenOfEdenConfiguration | liberec
Rozbalit Rozbalit vše Re: Jaderné noviny – 8. 9. 2017
Odpovědět | Sbalit | Link | Blokovat | Admin
CIFS, jedinej FS kterej ohlašuje i zavirovaný soubor:
#define STATUS_VIRUS_INFECTED __constant_cpu_to_le32(0xC0000906)
Intel meltdown a = arr[x[0]&1]; karma | 帮帮我,我被锁在中国房

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.