Portál AbcLinuxu, 2. května 2025 10:25
Aktuální verze jádra: 3.7. Citáty týdne: projekt Bufferbloat, Al Viro. Citáty týdne: speciální vydání na téme FALLOC_FL_NO_HIDE_STALE. Začleňovací okno verze 3.8, část první.
10. prosince vydal Linus jádro verze 3.7. Vydání se nakonec protáhlo, ačkoliv bylo začleňovací okno jinak vcelku přímočaré a žádné z -rc nebylo ani moc velké. Ale už to máme za sebou, což znamená, že začleňovací okno skončí na Štědrý den. Že se to „protáhlo“ je ovšem relativní; se svými 72 dny je tento cyklus jen o několik dnů delší, než je průměr. Mezi hlavní novinky v této verzi patří podpora 64bitového ARM, vyšší bezpečnost díky omezení přístupu supervizora, podpora SMB 2.1, serverová strana podpory TCP fast open, podepsané jaderné moduly a ještě více. Podrobnosti najdete na příslušné stránce KernelNewbies.
Stabilní aktualizace: verze 3.0.55 a 3.4.22, obsahující chybu při sestavování, vyšly 5. prosince. Poněkud větší aktualizace 3.2.35 vyšla 7. prosince. Verze 3.0.56, 3.4.23 a 3.6.10 vyšly 10. prosince. Žádné aktualizace se v současné době nerevidují.
V moderním hardwaru se vyrojily všelijaké „offload“ enginy, které jsou v současnosti mnohdy ve výchozím nastavení bohužel povoleny, což obvykle napáchá více škody než užitku, často hlavně na velkých serverových strojí v datacentrech – jen ne u exterémních fanatiků do benchmarků. Vypínejte je. Na toto téma brzy napíšeme více. Autoři tohoto „chytrého“ hardwaru jsou méně „chytří“, než si myslí.
-- Projekt Bufferbloat k doporučeným postupů benchmarkování CoDel
Při vstupu do režimu jádra se nejprve ukládá stav CPU. Obvykle (a toto slovo začnete nenávidět dřív, než dočtete do konce textu) je uložený ve struktuře pt_regs, ale může to být i složitější. Pro naše použití to berte jako abstraktní uložený stav, ponechme stranou, jak je vyjádřen.
-- Lekce od Ala Vira na téma obsluhy signálů
if (správce si myslí, že jeho patch je správný) { patch nepotřebuje revidování } else { /* správce si myslí, že patch je špatně */ /* XXX: proč by člověk považoval vlastní patch za špatný? */ patch potřebuje revidování }
-- Dave Chinner
Revidování je součást toho, jak jako komunita fungujeme, a měli bychom vymyslet, jak náš proces revidování opravíme, aby byly výsledky rozumné, jinak tento proces ztratí naši důvěru a bude obtížnější přesvědčit lidi, aby revidováním trávili čas, když je jejich výstup nakonec ignorován.
-- Ric Wheeler
Každý, kdo tvrdí, že náš „proces“ vyžaduje, aby podobné věci procházely mailing listem a procházely dlouhým revidováním a diskutováním, PROSTĚ LŽE.
Protože to není pravda. Diskutujeme o velkých věcech a ano, revidování chceme, ale skutečností je, že většina malých zjevných patchů revidováním *neprochází*, prostě se to jen opraví. Všichni to víte, tak proč teď ksakru tvrdíte, že se toto nějak zázračně odlišuje?
To je důvod, proč mi tato diskuze tolik připomíná diskuzi na téma wakelock (zámky probouzení) a proč jsme došli ke stejnému rozhodnutí jako lidi od Androidu s tím rozdílem, že my jsme nad tím ztratili mnohem víc času – prostě tu zatracenou věc nechám jako patch mimo hlavní strom, dokud se nenajde dost lidí, kteří prohlásí, že ho používají a potřebují pro své systémy a použití. Ušetří mi to spoustu času.
-- Ted Ts'o
Začleňovací okno verze 3.8 vypadá zajímavě. Teoreticky se uzavírá hned před Vánoci, ačkoliv Linus vyhrožoval, že začne oslavovat dříve. Navzdory dost možná zkrácenému oknu se podle správce linux-next Stephena Rothwella nachází v linux-next více commitů než kdy předtím. Takže očekávejte, že v relativně krátké době bude do hlavní řady proudit hodně změn.
V době psaní tohoto textu Linus začlenil nějakých 3800 neslučovacích změn. Mezi nejvýznamnější změny viditelné pro uživatele patří:
Změny viditelné vývojářům jádra zahrnují:
Začleňovací okno verze 3.8 sotva začalo; na přetažení do hlavní řady ještě čeká spousta subsystémů. O dalších novinkách si povíme zase příště.
if (správce si myslí, že jeho patch je správný) { patch nepotřebuje revidování } else { /* správce si myslí, že patch je špatně */ /* XXX: proč by člověk považoval vlastní patch za špatný? */ patch potřebuje revidování }hmm, na to máme přece jednoduché pravidlo:
revizi dělá vždy někdo jiný, než ten, kdo psal kód
cmpxchg
a xadd
), ta komplikuje život dost výrazně.
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.