Nechapu myslenkove pochody nekoho, kdo toto vymysli. Misto toho, aby system vypsal uzitecnou informaci, pomoci ktere si to uzivatel muze opravit, tak vypise zbytecne modro.
Ale prave to je ta pointa - aktualne pri kernel panic nevidite nic, pokud zrovna nejste v terminalu.
Tady ten patch, pri trose stesti, prepne pomoci DRM obrazovku do "textoveho modu" a neco to vypise.
17. 6. 2024, 08:03 editováno autorem komentáře
Systém vypíše užitečnou informaci, ale aby byla jasně odlišená, vypíše ji na modrém pozadí. A přidá k tomu ještě QR kód, aby se ta informace snadno dala přenést jinam.
Je třeba nejdřív zprávičku přečíst a až potom reagovat. Když to uděláte obráceně, můžete si stěžovat na věc, která je v textu vysvětlena. Zatím jde jen o úvodní podporu téhle funkce, která bude postupně rozšiřována.
Ja jsem si ji precetl - je tam jen napsano, ze se tam pozdeji prida QR kod, ktery bude oznacovat chybu, ke ktere doslo. Takze ted tam neni nic a v budoucnu tam nebude nic "human readable".
Jenomže... Ono tam really-human-readable vlastně už dlouho nic není. Nicneříkající trasovací informace, kde ta podstatná část odrolovala do ztracena... Nebo jen černá obrazovka a uživatel bušící do klávesnice.
Kolikrát jsem v diskuzi viděl fotky obrazovky, kde někdo fotil chybu jádra. Vše to bylo na několika fotkách, protože výpis byl dlouhý a stejně nic neříkající.
Zatímco „něco se pokazilo“ je sice human readable, ale taky úplně na to samý, na co začíná human ;-).
Ja nekolik takovych chyb opravil a opravy byly zacleneny do jadra, pripadne doporucil workaround (typu rmmod na ovladac, ktery zpusobi chybu pri suspendu). Pokud to nekomu nic nerika, neni chyba ve vypisu ale v uzivateli.
Jako chápu, že udělat ty chyby lidsky čitelné by bylo složité až nemožné, ale říkat tomu přímo "chyba v uživateli" je trochu ujeté. Bohužel zdaleka ne každý je vývojář kernelu nebo má dostatečné znalosti k tomu, aby alespoň tušil, co mu call trace napovídá.
a jeste debilnejsi qr code.... Ne porad nemam patlafoun:(
Prava behat po servrovne a opisovat stack traces abych to googlil na jinym komplu uz je taky davno minulost...
Když vás baví opisovat údaje z obrazovky na papír, tak si je klidně opisujte. Ale nebraňte lidem, kteří mají čtečku QR kódů, aby si ty údaje přenesli jinam efektivněji.
Když ten výpis nevidíte, nemusí vás trápit. Ale nebraňte v použití toho výpisu těm, kdo ho vidí.
To, že vy něco nevyužijete, fakt není důvod pro to, aby se to neimplementovalo.
I podstatně novější se najdou. Navíc to, že má telefon v sobě "foťák", ještě automaticky neznamená, že má v sobě i aplikaci, která dekóduje ten QR kód a s výsledkem něco rozumného provede.
QR kód je pro BFU, ti smartfouny mají.
Myšlenkový pochod: jádro může být kompilováno bez VT a FB, v tom případě se nyní nemá chyba jaksi kam zobrazit. S BSOD se zobrazí, BFU to vyfotí a vývojáři budou mít informaci o chybě, ne jen "se to zaseklo" a "nejede to".
V 10-rocnom clanku na https://www.phoronix.com/news/MTY1NjI je o tom QR napisane viac. Je tam aj priklad s URL s GET parametrom obsahujucim gzipnuty stacktrace.
Proč ne? Aspoň pochopí, o co jde, i uživatel, který to zná z Windows. Patentovanou tu barvu snad Microsoft nemá.
Modra uklidnuje. Tak asi proto. Ono kdyby byla obrazovka krvave ruda, tak klavesnici roztriskate monitor :)
Kdy jsem naposled zazil kernel-panic? Nemuzu si vzpomenout. Jsem jen 'user', takze jadro nekompiluju, a celkem spokojene si v klidu chrochtam blahem :)
(Kdy jsem naposled zazil BSOD na winech? 2 mesice zpatky, a ten mesic predtim taky. Win 10 zadna slava.)
Taky jedu nekolik stroju, vse si kompiluji sam, BSOD me nepotkava.
Posledni tvrdej kernel panic ani nepamatuji - ani behem vyvoje ovladacu pro vlastni PCIe/DMA hw na bazi FPGA. Obcas to v driveru padlo na nejakou dereferenci, ale nikdy ne tak aby to sejmulo system.
Oproti tomu stejny hw a cast sw spolecna - v prostedi Win jsem schopen dosahnout BSOD ciste jenom z toho co udela aplikace :D Ja vim.. jsem marnej koder.. ale ze win je tak labilni jsem neveril.
NVIDIA-SMI 550.90.07 Driver Version: 550.90.07 CUDA Version: 12.4
A kde je problém? Nepadá. (a podle toho threadu jde spíš o nějakou veselost společně s nějakou úžasnou komponentou systemd, navíc pokud jsem dával pozor, tak to ani nevede k panicu kernelu).
Já měl kernel-panic před týdnem. Ale šlo o moji chybičku v konfiguraci grubu. Vteřina údivu, trochu úlek co se stalo a za vteřinu vyřešeno i bez přemýšlení, stačilo přečíst co to píše. Kdyby mi napsal jen QR, asi by mě dost naštval.
Ta původní černá obrazovka mě štve tím, že se mi nedaří posunout zpátky k tomu co ujelo nahoru a že se nedá jednoduše restartovat nějakou klávesou. Aspoň na tom noťasu to nešlo.
Tak jde nastavit, aby po panic sám restartoval do třeba 30 sekund: kernel.panic=30 v sysctl.conf anebo panic=30 v příkazové řádce jádra.
Sysrq+B by to mělo přestartovat, jestli není zakázáno.
Konfiguraci pro případ kernel panic je potřeba mít nastavenou dopředu – protože až to nastane, je pozdě na nastavování. Většina lidí (včetně mne) na to přijde praktickým pokusem – třeba když sedíte u terminálu „na to přece byla nějaká zkratka s asi 5 klávesami zahrnující SysRq, <vygooglím na jiném zařízení>, proč to nefunguje?, <googlím>, aha, ono to musí být předem zapnuté“ :-) Podobné je to třeba s konfigurací pro případ, že si odříznete přístup na firewallu, nebo záložní kernel v Grubu.