Portál AbcLinuxu, 10. května 2025 23:10
Jaderné noviny 161
Články
-
Jaderné noviny 161
Americké zákony znepříjemňují život vývojářům jádra. Jde používat quota na
žurnálovacích souborových systémech? Pokusy o odstranění BKL pokračují. Konečně
funkční core dump pro multithreaded programy.
Do konference přišlo 801 emailů od 362 vývojářů, nejvíce psali Alan Cox,
Andrew Morton a Zwane Mwaikambo.
DMCA dopadá na vývojáře kernelu, 5 dopisů
David Rees nebyl schopen najít Changelog pro jádro 2.2.20. Alan Cox odpověděl,
že pro občany jiných států než USA je tento dokument k dispozici na adrese
http://www.thefreeworld.net.
Rasmus Bag Hansen se podivoval nad tím, jak je možné, že patch je v USA legální,
zatímco jeho popis nikoliv. Mike Fedyk na to měl vysvětlení: v podstatě jde o to,
že politici patchi nerozumí, zatímco shrnutí dokáží přečíst. A navíc v mnoha
případech oprava bezpečnostní díry neukazuje způsob, jakým by se dala zneužít,
zatímco bezpečnostní zpráva ano.
Vymýcení velkého kernelového zámku, 3 dopisy
Během pokusů o nahrazení velké kernelového zámku BKL [big kernel Lock] méně
drastickými způsoby zamykání, Dave Hansen zaslal patch a dodal, že tento patch
přesouvá disassociate_ctty nahoru a uvolní BKL, jakmile je hotov. Zeptal se, zda
je to čisté řešení, nebo některé z těch exit_*() metod potřebují tty.
Tento patch redukoval čas držení BKL v metodě do_exit() stokrát. Původně byl čas
200 mikrosekund, nyní je 1,5 mikrosekundy. Nicméně, tyto hodnoty byly počítány
na NUMA-Q stroji, takže reprezentují nejhorší případ.
Linus Torvalds odpověděl, že by preferoval přesunutí BKL do funkcí, které jej
skutečně potřebují a odstranění ho z funkcí do_exit(). Je to obvzláště vhodné z
toho důvodu, že si nejsem jist, zda sem_exit() jej vůbec ještě potřebuje. Pokud
ne, prostě ho odstraňme odtud.
disassociate_tty je stejný případ, v budoucnu stejně opravíme tty vrstvu, tak
udělejme z BKL interní věc. Dave souhlasil a zaslal nový patch.
Quota na žurnálovacích souborových systémech, 3 dopisy
Ken Brownfield velmi toužil po žurnálování na jeho 2TB disku, ale potřeboval
podporu quot a nebyl si jist, zda budou fungovat s ext3 nebo ReiserFS.
Luigi Genoni odpověděl, že používá ReiserFS a quota tool 3.04 na
slackware-current a nemá žádné problémy (jádro 2.4.18). A Andreas Dilger dodal,
že pokud budeš používat jádra od RedHatu nebo jiné -ac kernely, získáš podporu
32bitových UID pro quotu.
Core dump pro multithreaded programy, 18 dopisů
Vamsi Krishna S. z IBM oznámil, že spolu s Markem Grossem z Intelu
vytvořili patch pro podporu multithreaded core dumpů. Patch je určen pro jádro
2.4.17 a je třeba jej povolit pomocí nové sysctl core_dumps_threads (0 = off,
1 = on).
Dump začne od prvního vlákna, které zachytí signál. Vlákna jsou vybrána po
průchodu celým seznamem úloh [task list], což je jediný spolehlivý způsob do
doby, než všechny uživatelské programy začnou používat skupiny vláken
poskytované kernelem (CLONE_THREAD). Během dumpu je pozastavena činnost
ostatních vláken nastavením cpus_allowed na nulu
.
GDB 5.1 dokáže zpracovat takto vyprodukované core dumpy, ale pouze na Red Hat 7.2
a navíc musí být knihovna /lib/i686/libpthread.so skryta. Vypadá to, že na IA32
na RedHatu existují dvě libpthread.so knihovny. Pokud je nahrána knihovna
/lib/i686/libpthread.so, post mortem debug nebude fungovat. Skryjte ji, aby se
během startu debugování nahrála /lib/libpthread.so a debugger bude fungovat
správně s core dumpem. Je to pro nás záhada, proč se tak děje.
Tento článek vychází ze seriálu Kernel Traffic (
http://kt.zork.net) a je zveřejněn pod licenci GPL
verze 2.
Další články z této rubriky
Diskuse k tomuto článku
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.