Podpora Windows 10 končí 14. října 2025. Připravovaná kampaň Konec desítek (End of 10) může uživatelům pomoci s přechodem na Linux.
Již tuto středu proběhne 50. Virtuální Bastlírna, tedy dle římského číslování L. Bude L značit velikost, tedy více diskutujících než obvykle, či délku, neboť díky svátku lze diskutovat dlouho do noci? Bude i příští Virtuální Bastlírna virtuální nebo reálná? Nejen to se dozvíte, když dorazíte na diskuzní večer o elektronice, softwaru, ale technice obecně, který si můžete představit jako virtuální posezení u piva spojené s učenou
… více »Český statistický úřad rozšiřuje Statistický geoportál o Datový portál GIS s otevřenými geografickými daty. Ten umožňuje stahování datových sad podle potřeb uživatelů i jejich prohlížení v mapě a přináší nové možnosti v oblasti analýzy a využití statistických dat.
Kevin Lin zkouší využívat chytré brýle Mentra při hraní na piano. Vytváří aplikaci AugmentedChords, pomocí které si do brýlí posílá notový zápis (YouTube). Uvnitř brýlí běží AugmentOS (GitHub), tj. open source operační systém pro chytré brýle.
Jarní konference EurOpen.cz 2025 proběhne 26. až 28. května v Brandýse nad Labem. Věnována je programovacím jazykům, vývoji softwaru a programovacím technikám.
Na čem aktuálně pracují vývojáři GNOME a KDE Plasma? Pravidelný přehled novinek v Týden v GNOME a Týden v KDE Plasma.
Před 25 lety zaplavil celý svět virus ILOVEYOU. Virus se šířil e-mailem, jenž nesl přílohu s názvem I Love You. Příjemci, zvědavému, kdo se do něj zamiloval, pak program spuštěný otevřením přílohy načetl z adresáře e-mailové adresy a na ně pak „milostný vzkaz“ poslal dál. Škody vznikaly jak zahlcením e-mailových serverů, tak i druhou činností viru, kterou bylo přemazání souborů uložených v napadeném počítači.
Byla vydána nová major verze 5.0.0 svobodného multiplatformního nástroje BleachBit (GitHub, Wikipedie) určeného především k efektivnímu čištění disku od nepotřebných souborů.
Na čem pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za duben (YouTube).
Vývojové jádro 3.17-rc4 vyšlo dne 7. září (oznámení). po týdnu, který byl, alespoň ke konci, podle Linuse „celkem normální“. Linus k tomu řekl:
Celkem normální docela ujde a já si nestěžuju. Neděje se nic zvlášť velkého ani hrozného – na chvíli nás vyděsila hloupá chyba ve vrstvě kompatibility, ale zdá se, že šlo jen o planý poplach, který vyústil spíš v přidání nějakého komentáře než ve změny ve zdrojovém kódu.
Stabilní aktualizace: 5. září byly vydány verze 3.16.2 (oznámení), 3.14.18 (oznámení) a 3.10.54 (oznámení). Nedodělky v implementaci oprav jsou momentálně údajně velké, v dohledné době tedy čekejte víc (větších) aktualizací.
- .set_mux = pcs_sex_mux,
+ .set_mux = pcs_set_mux,
Linus Walleij (odkaz) opravil „freudovské přeřeknutí“ (díky Jonu Mastersovi)
Před pár lety se vývojáři jádra krátce pokoušeli převést veškeré zjišťování zařízení na asynchronní činnost. To vedlo ke komplikacím, které byly natolik obtížně řešitelné, aby byly tyto snahy označeny za neperspektivní a všechny změny byly vráceny. Nyní se asynchronní zjišťování vrátilo na pořad jednání. Tato myšlenka se nesetkává s obecně pozitivním přijetím, ale problém, který se snaží řešit, je skutečný. A poněkud podivný.
Všechno začalo v listopadu 2013, kdy Tetsuo Handa napsal opravu, která umožňuje násilně ukončit funkci jádra kthread_create(), která vytváří a spouští vlákno jádra (tedy, že je ukončena signálem SIGKILL). Před touto změnou byl jakýkoli proces spuštěný ve funkci kthread_create() dočasně imunní k signálu SIGKILL, konkrétně nereagoval, pokud ukončovací proces OOM (vyčerpání paměti) vyhodnotil, že je toto ukončení nutné. I když se dá nesouhlasit s heuristikou, podle které tento proces vybírá své oběti, jen málo vývojářů se domnívá, že by tyto oběti, když už jsou vybrané, měly v systému zůstávat po libovolnou dobu. S Tetsuovou změnou není proces, který způsobil vytvoření vlákna jádra, dále imunní před výpady ukončovacího procesu OOM.
Tato oprava způsobila, že některé systému nebylo možné spustit. Spousta ovladačů úložných systémů vyžaduje k dokončení procesu zjišťování polí úložišť vlákna jádra. Tento postup zjišťování si může vyžádat velký objem práce, takže může běžet třeba i minutu. Podle všeho nemá systemd-udev neomezenou trpělivost; při načítání modulu zařízení spustí 30sekundový časovač (zkrácený z loňských 3 minut) a při překročení tohoto limitu proces načítání ukončí (signálem SIGKILL). Proces zjišťující pole úložišť je tedy ukončen, sestavení pole selže a systém se nespustí. Před Tetsuovou změnou byl tento signál při zjišťování ignorován; po ní se stal fatální. Tento problém se může dotknout i dalších typů ovladačů, které musejí stahoval velké firmwary.
Výsledná diskuse se rozprostřela v několika diskusních fórech a systémech sledování chyb, takže ji bylo obtížné sledovat. Vývojáři jádra podle všeho sdíleli názor, že napevno nastavený 30sekundový limit v systemd-udev není dobrý nápad a že problém by se měl řešit zde. Vývojáři systemd se domnívají, že modul, který se načítá déle než 30 sekund, je zkrátka chybný a měl by se opravit. Tetsuo navrhl, že funkce kthread_create() by měla na signál SIGKILL reagovat se zpožděním 10 sekund, pokud příslušný signál pochází odjinud než ze správy OOM. Ani jeden z těchto návrhů nebyl obecně přijat ani nevedl k řešení problému.
Existuje samozřejmě možnost prostého prodloužení časového limitu v konfiguračních souborech, jak to udělali vývojáři mapovače zařízení v reakci na obdobný problém. Tento přístup ale nikdo nepovažuje za příliš elegantní.
Tento problém lze řešit ještě jinak – ovladače zařízení by se při spouštění mohly prostě registrovat a provádět činnosti, které lze rychle dokončit. Všechny časově náročné úlohy by se předávaly do samostatného vlákna spuštěného asynchronně, po načtení modulů a ukončení aktivity systemd-udev. Tento způsob asynchronní inicializace by navíc zlepšil dobu spouštění, protože by během pomalého zjišťování mohly probíhat další činnosti.
V tom ohledu zveřejnil Luis Rodriguez sadu oprav, které do jádra ovladačů přidávají asynchronní zjišťování. Tyto opravy přidávají pole (async_probe) do struktury struct device_driver; pokud má toto pole hodnotu true, zjišťování zařízení bude probíhat asynchronně prostřednictvím pracovní fronty. Byly upraveny tři ovladače (pata_marvell, cxgb4 a mptsas) tak, aby požadovaly nový asynchronní přístup. Existuje také varianta Tetsuovy opravy s 10sekundovým zpožděním, která je primárně určena k zápisu upozornění do systémového žurnálu v případě, že správa OOM vydá signál SIGKILL funkci kthread_create(); má pomoci identifikovat další ovladače, které je nutné převést na asynchronní režim.
Tejun Heo, který také spravuje vrstvu ATA, pro tento přístup není. Nakonec má námitky ke dvěma problémům:
Druhý problém je kontroverznější. Moderní distribuce časovou posloupnost připojování zařízení k systému neřeší, proto někteří vývojáři namítají, že v téhle oblasti by už k žádným problémům docházet nemělo. Ale staré správcovské skripty se mohou zablokovat i na delší čas. Takže riziko narušení reálně fungujících systémů takovou změnou je skutečné, i když není jasné, kola systémů se může dotknout.
Některé reálně používané systémy už jsou samozřejmě narušené nyní, proto by se s tím mělo něco dělat. Nejpravděpodobnějším výsledkem bude nějaké asynchronní zjišťování prováděné v uživatelském prostoru; pokud to uživatelský prostor nebude explicitně vyžadovat, toto chování by se nemělo měnit. Pravděpodobným uplatněním tohoto přístupu je globální příznak, který asynchronní zjišťování zapne, s jednou výjimkou. Existuje velká pravděpodobnost, že libovolný kód v jádru volající funkci request_module() očekává, že zařízení požadovaného modulu bude k dispozici po dokončení volání. Proto moduly načítané tímto způsobem by se – alespoň prozatím – měly načítat synchronně.
U distribucí, kde správu polí úložišť řeší skripty dodané v distribuci, by měl být přepínač „použít asynchronní zjišťování“ standardně vždycky zapnutý. Ostatní budou vyžadovat nějaký manuální zásah. Není to nejlepší možné řešení, ale mohlo by být nejvhodnější v nejbližší budoucnosti.
Nástroje: Tisk bez diskuse
Tiskni
Sdílej:
Výsledná diskuse se rozprostřela po několika seznamech a sledování chyb
Ty "seznamy" mají být mailing listy? A nemohlo by to být aspoň něco jako "systémy (pro) sledování chyb", aby k pochopení věty nebyl potřeba překlad zpátky do angličtiny?
.set_mux = pcs_sex_mux,
A tohle šlo zkompilovat?
Podle všeho nemá systemd-udev neomezenou trpělivost; při načítání modulu zařízení spustí 30sekundový časovač (zkrácený z loňských 3 minut)...
V zásadě dneska spousta servisek (třeba Samba) při svém startu (init skriptem) považuje za samozřejmé, že jsou v okamžiku startu servisky mountnuté všechny svazky, které serviska potřebuje ke své práci.Zrovna tohle je v systemd světě řešitelné velmi jednoduše: přidáš do unit souboru dotyčné služby tvrdou závislost na daném zařízení a je to.
Zrovna tohle je v systemd světě řešitelné velmi jednodušeTakze, az si to precita Lenart, bude uz len otazkou casu, kedy systemd integruje kernel. (Nakolko je velmi nepravdepodobne, ze by kernel integroval systemd.) A naschval sa nevyjadrujem, ci to bude dobre, alebo zle... Zacinat so systemd v jadernych novinach je zaruceny flamewar. Skoda, ze sa nepocitaju komentar "hits"
Celkem normální docela ujde