Re: cdrtools auf FreeBSD frieren das System ein

From: Oliver Fromme <olli(at)lurza.secnetix.de>
Date: Fri, 18 Aug 2006 18:30:26 +0200 (CEST)

Heino Tiedemann wrote:
> Ich habs jetzt gemacht. Kernel läuft mit diesen Optionen
> [...]

OK, sehr gut.

> [...]
> ABER - ich habe immer noch lust, den Kernelbug zu Suchen.

Sehr lobenswert. :)

> Will ich also die CD auf dem einfachenSAMSUNG-DVD-ROM rippen (oder dem
> Brenne im Multisession mode) dann weiss ich nicht weiter. Ich brauche
> eure hilfe:
>
> In dem Moment, in dem ich "cdda2wav dev=2,0,0 -vall -t 8" aufrufe,
> friert das System ein und Zwar EXAKT in dem Moment, wo ich Enter
> Drücke. Man könnte denen, es friert sogar schon ein, bevor ich die
> Tast durchgedrückt habe. ;-)

Wie genau friert es ein? Kann man den Rechner noch übers
Netz anpingen? Kannst Du noch virtuelle Terminals umschal-
ten (Alt-Fx)? Reagieren die Lock-LEDs auf der Tastatur,
wenn Du die entsprechenden Lock-Tasten drückst?

> Wie kann komeich jetzt an Informationen vom Kernel heran?

Machst Du das unter X oder unter Syscons (im Textmodus)?

Wenn ersteres (X), dann kann es sein, dass Du die Panik
und/oder den Kerneldebugger gar nicht zu Gesicht bekommst,
weil Du ja im Graphikmodus bist. Möglicherweise wird ja
ein Kernel-Crashdump geschrieben (flackert die HDD-LED?),
was Du nach dem Reboot auch in /var/crash nachgucken kannst
(sofern Du es korrekt enabled hast). Am besten ist es
aber, wenn Du versuchst, den Bug im Textmodus zu repro-
duzieren, nicht unter X.

Falls Du bereits im Textmodus bist, aber der Rechner friert
trotzdem ohne Panic-Meldung ein, dann ist das schlecht.
Das kann mehrere mögliche Ursachen haben. Du könntest
versuchen, ob Du mit Ctrl-Alt-Esc oder Ctrl-SysRq ("S-Abf"
auf deutschen Kezboards) manuell in den Debugger kommst.
Falls ja, kannst Du am Debugger-Prompt mit "panic" eine
Panik auslösen bzw. mit "call doadump" das Schreiben eines
Crashdumps erzwingen. Den kannst Du dann nach dem Reboot
in kgdb laden und z.B. mit "backtrace" einen Stack-Back-
trace erzeugen. Details siehe Developer-Handbook:
http://www.freebsd.org/doc/en/books/developers-handbook/kerneldebug-gdb.html

Neben "panic" und "call doadump" gibt es noch weitere Dinge,
die Du am Debugger-Prompt eingeben kannst, allerdings ergibt
das nur Sinn, wenn Du eine serielle Console (z.B. zweiter
PC per Nullmodemkabel) angeschlossen hast, mit der Du die
Ausgaben mitloggen kannst, denn Du möchtest das nicht alles
manuell abschreiben. Notfalls wäre abphotographieren mit
einer Digitalkamera noch eine Option, aber so JPEGs sind
doch deutlich unhandlicher in 'nem PR. ;-)

Falls Du eine also eine serielle Console hast, dann musst
Du noch "options BREAK_TO_DEBUGGER" in Deinen Kernel auf-
nehmen, um mit einem Break-Signal in den Kernel-Debugger
zu kommen (wie man so eins erzeugt, hängt von der Terminal-
Software auf dem anderen PC ab, der die serielle Console
darstellt). Alternativ gibt es dann noch die "options
ALT_BREAK_TO_DEBUGGER": Damit kommt man mit einer Sequenz
von drei Tasten in den Debugger: Enter ~ Ctrl-B

Wenn Du soweit gekommen bist, kannst Du folgende Kommandos
am Debugger-Prompt probieren:
 - "show pcpu"
 - "show pcpu X" für jede vorhanden CPU (angefangen bei 0).
 - "ps"
 - "trace" für den momentan laufenden Thread und für jeden
   Thread aus der "show pcpu" Ausgabe, der nicht idle ist.
 - "show lockedvnods"
 - "trace" für jeden unter "show lockedvnods" gelisteten
   Prozess (insbesondere solche, die eine Anzahl "waiters"
   haben).

Falls Du das mit der seriellen Console nicht hinbekommst,
ist das auch nicht schlimm. Die anderen Infos (z.B. der
"backtrace" aus dem kgdb) sind besser als gar nichts.

Gruß
   Olli

-- 
Oliver Fromme,  secnetix GmbH & Co. KG, Marktplatz 29, 85567 Grafing
Dienstleistungen mit Schwerpunkt FreeBSD: http://www.secnetix.de/bsd
Any opinions expressed in this message may be personal to the author
and may not necessarily reflect the opinions of secnetix in any way.
"The ITU has offered the IETF formal alignment with its
corresponding technology, Penguins, but that won't fly."
        -- RFC 2549
To Unsubscribe: send mail to majordomo(at)de.FreeBSD.org
with "unsubscribe de-bsd-questions" in the body of the message
Received on Fri 18 Aug 2006 - 18:32:50 CEST

search this site