Portál AbcLinuxu, 6. května 2025 23:24
Stav vývoje jádra. Izolace tabulek stránek jádra začleněna. Citáty týdne: The Register a Linus Torvalds. Statistiky vývojového cyklu 4.15.
Současné vývojové jádro je 4.15-rc6, vydané 31. prosince. Tento prepatch obsahuje, kromě jiného, sadu patchů izolace tabulek stránek jádra,, která představuje velkou změnu takto pozdě ve vývojovém cyklu. Linus řekl: „Byl by to velmi klidný týden, nebýt finální podoby záležitostí kolem PTI pro x86, a to se projevilo i ve statistikách změn. Zhruba polovina prací v rc6 představuje aktualizace pro x86. Načasování není ideální, ale vypadá to hezky a čistě.“
4.15-rc5 předtím vyšla 23. prosince.
Stabilní aktualizace: Za dva poslední týdny se objevilo docela dost aktualizací. 4.14.9, 4.9.72, 4.4.108 a 3.18.90 vyšly 25. prosince. 4.14.10 a 4.9.73 následovaly 29. prosince a 4.14.11, 4.9.74, 4.4.109 a 3.18.91 se objevily 3. ledna. Aktualizace 4.14.11 obsahuje patche izolace tabulek stránek jádra.
Stabilní aktualizace 4.9.75 a 4.4.110 byly v době psaní tohoto článku v procesu revidování, vyšly 5. ledna. Tyto aktualizace jsou věnovány izolaci tabulek stránek jádra, ale využívají starší verzi sady patchů, která si drží starý název „KAISER“.
Linus začlenil sadu patchů izolace tabulek stránek jádra do hlavního repozitáře těsně před vydáním 4.15-rc6. Jedná se o zásadní změnu takto pozdě ve vývojovém cyklu, takže si můžeme tipnout, že 4.15 bude muset mít aspoň osm kandidátů na vydání, než bude připravena k vydání.
Představte si jádro jako Boha, který sedí na obláčku a dívá se dolů na Zemi. Je tam, žádný běžný smrtelník jej nemůže vidět, ale může se k němu modlit.
Myslím, že by se měl někdo z Intelu posadit, pořádně se podívat na své procesory a skutečně uznat, že mají vady, namísto psaní PR nesmyslů o tom, že všechno funguje, jak má.
Statistics for the 4.15 kernel. Jonathan Corbet. 3. ledna 2018
Jádro 4.15 bude pravděpodobně v důsledku začlenění patchů izolace tabulek stránek jádra až po -rc5 vyžadovat poměrně dlouhý vývojový cyklus. Ale i tak by již mělo být v téměř finální podobě, až na některé nevyhnutelné opravy chyb. Vývojové statistiky pro toto vydání jádra vypadají dost normálně, ale celkově odhalují nečekaně rušný vývojový cyklus.
Tento vývojový cyklus měl být poměrně klidný – po očekávaném shonu, aby se výsledky práce dostaly do vydání 4.14 s dlouhodobou podporou. Ale zatímco cyklus 4.14 se zastavil na počtu 13 452 neslučovacích sad změn, tento cyklus jich má v době 4.14-rc6 již 14 226, což z něj dělá jeden z nejrušnějších vývojových cyklů v dějinách projektu. Více práce přidala pouze vydání 4.9 (16 214 sad změn) a 4.12 (14 570) a 4.15 možná nakonec v době svého dokončení 4.12 překoná. Zatím do tohoto cyklu přispělo 1 707 vývojářů, kteří 725 tisíc řádek kódu přidali a 407 tisíc řádek odstranili, což znamená čistý růst 318 tisíc řádek kódu.
Nejaktivnější vývojáři tentokrát byli:
Nejaktivnější vývojáři cyklu 4.15 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|
Kees Cook byl nejplodnějším přispěvatelem sad změn v tomto cyklu, pracoval na zabezpečení napříč jádrem, ale většina patchů implementovala změny interního API jaderných časovačů. Colin Ian King přispěl úklidovými patchi různě po celém jádře, Harry Wentland přidal další obrovskou hromadu kódu grafických ovladačů AMD, Ben Skeggs pracoval jako obvykle na ovladači Nouveau a Gustavo Silva se zaměřil na označování případů, kdy dochází k propadu skrz alternativy ve výrazu switch
(jako v tomto patchi).
Ve sloupci „Podle počtu změněných řádek“ se na prvním místě díky grafickým ovladačům AMD na první místě umístil Wentland. Dave Airlie přivedl do grafického subsystému kód AMD Display Core, ale provedl také spoustu úklidových prací, které vedly k odstranění více než 21 tisíc řádek kódu. Takaši Iwa pracoval na subsystému audia, zejména odstranil starý kód Open Sound System, čímž jádro zmenšil o 40 tisíc řádek. Dmytro Laktjuškin a Rex Zhu také přidali více kódu grafického ovladače AMD. Grafické ovladače AMD tím pádem dominovaly změnám v tomto vývojovém cyklu, pokud jde o počet řádek kódu, jak tomu bylo u řady nedávných vývojových cyklů.
Stojí za zmínku, že se v těchto číslech opět v podstatě vůbec nenachází práce ve stromě staging. Zdá se, že jsou pryč dny, kdy práce na staging byly největším tahounem změn v jádře. Ani práce na izolaci tabulek stránek jádra se moc neukazuje, na čemž je vidět, že důležité změny často přicházejí v relativně malých balíčcích.
Práce v cyklu 4.15 podpořilo 231 společností (které se nám podařilo identifikovat), více než kolik jich podpořilo vznik 4.14, ale vzhledem k současným standardům je to stále poměrně málo. Rekord v tomto ohledu drží vydání 4.10, na kterém se podílelo 271 společností. Ty nejaktivnější společnosti v tomto cyklu jsou:
Nejaktivnější zaměstnavatelé cyklu 4.15 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|
Práce na grafikách AMD jsou v těchto číslech jasně vidět, jinak jsou výsledky typické pro poslední vývojové cykly.
Štítky Signed-off-by
přidané k patchům poskytují informace o tom, kdo převzal zodpovědnost za jejich vývoj. Konkrétně, když se podíváme na podpisy připojené vývojáři, kteří ale nejsou autory patche, můžeme vidět, kdo akceptoval patche k začlenění do hlavního repozitáře, tedy nejaktivnější správce. V jádře 4.15 výsledek vypadá takto:
Neautorské štítky Signed-off-by („podepsal“) v cyklu 4.15 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|
Správci jaderných subsystémů se dlouho soustřeďovali v relativně malé skupině firem. Tato situace se pomalu mění, ale stále je pravda, že v cyklu 4.15 byla polovina začleněných změn přijata vývojáři, kteří pracují pro pouze čtyři společnosti.
Nakonec přehled nejaktivnějších oznamovatelů chyb a testerů, tedy alespoň podle štítků Reported-by
a Tested-by
připojených k patchům:
Hlášení a testování chyb v cyklu 4.15 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|
Relativně novým záznamem je zde „syzbot“, což je věc provozovaná Dmitrijem Vjukovem v Google. Syzbot spouští fuzzovací tester syzkaller v automatickém režimu a hlásí (početné) výsledné pády. Jak můžeme vidět na štítcích, tato hlášení vedou ke stálému proudu oprav chyb, což je jedině dobře.
Zpráva, kterou podává poslední tabulka, ale není úplná, protože většina hlášení chyb a (zvláště) testování se nikde neuvádí. Jaderná komunita spoléhá na mnohem více lidí než jen na ty, kteří přímo přispívají kódem – nikdy nebude možné uvést je všechny. Celkově zůstává tato komunita velká, aktivní a rostoucí. První jádro vydané v roce 2018 tomu bude odpovídat.
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.