w33dburner
Ist gelegentlich hier
- Registriert
- 16. April 2009
- Beiträge
- 85
- Reaktionspunkte
- 326
- Punkte
- 73
@OnkelAtze Die Last ist ordentlich, was für eine cachesize ist da zu der Zeit denn am Start? Ist die Last auch ohne Debug-Log so hoch?
Hier eine kurze Anleitung, wie man einen Backtrace erstellt, mit dem man die Ursache ermitteln kann.
Wenn ihr diesen dann postet, kann jemand evtl. was damit anfangen und die Ursache ausmachen/beheben.
Installiert euch "gdb"
Debian/Ubuntu und Derivate:
Baut eure OSCam und nehmt die oscam*.debug als binary (die größere!) und verwendet diese.
Erstellt euch eine Datei namens "run", im Ordner wo die OSCam-Binary liegt, mit folgendem Inhalt:
Ersetzt "/path-to-your-oscam-config/" mit dem entsprechenden Pfad zu eurem OSCam-Config-Ordner.
Weitere Startparameter können dahinter angehangen werden.
Startet nun OSCam:
Nun seht ihr die Ausgabe von startenen Threads usw.
Wenn OSCam nun mit einem segfault aussteigt erscheint etwas in der Art:
Und weitere Zeilen.
nun in der gdb-shell "bt" eingeben:
Die Zeilen in den letzten beiden Code-Blöcken sind die relevanten um sich der Sache annehmen zu können.
Hier eine kurze Anleitung, wie man einen Backtrace erstellt, mit dem man die Ursache ermitteln kann.
Wenn ihr diesen dann postet, kann jemand evtl. was damit anfangen und die Ursache ausmachen/beheben.
Installiert euch "gdb"
Debian/Ubuntu und Derivate:
Code:
sudo apt install gdb
Baut eure OSCam und nehmt die oscam*.debug als binary (die größere!) und verwendet diese.
Erstellt euch eine Datei namens "run", im Ordner wo die OSCam-Binary liegt, mit folgendem Inhalt:
Code:
handle SIGPIPE nostop noprint pass
handle SIG62 nostop noprint pass
run -d1 -r0 -c/path-to-your-oscam-config/
Ersetzt "/path-to-your-oscam-config/" mit dem entsprechenden Pfad zu eurem OSCam-Config-Ordner.
Weitere Startparameter können dahinter angehangen werden.
Startet nun OSCam:
Code:
gdb oscam -x run
Nun seht ihr die Ausgabe von startenen Threads usw.
Wenn OSCam nun mit einem segfault aussteigt erscheint etwas in der Art:
Code:
Program received signal SIGSEGV, Segmentation fault.
...
...
Und weitere Zeilen.
nun in der gdb-shell "bt" eingeben:
Code:
(gdb) bt
#0 0x.......
#1...
#n...
(gdb)
Die Zeilen in den letzten beiden Code-Blöcken sind die relevanten um sich der Sache annehmen zu können.