SIGKILL unbekannten ursprungs
-
Ich habe mir einen kleinen httpserver gebastelt. Und es funktioniert auch alles sehr gut. Nur bekomm ich nach einiger Zeit (ca. 5-10h) ein SIGKILL. Weder gdb noch valgrind geben mir nähere informationen dazu. Laut valgrind gibt es auch keine memory leaks. strace gibt mir folgenden output:
accept(3, {sa_family=AF_INET, sin_port=htons(64549), sin_addr=inet_addr("120.28.178.174")}, [16]) = 7 clone(child_stack=0x7fade753eff0, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID, parent_tidptr=0x7fade753f9d0, tls=0x7fade753f700, child_tidptr=0x7fade$ accept(3, {sa_family=AF_INET, sin_port=htons(64551), sin_addr=inet_addr("120.28.178.174")}, [16]) = 5 clone(child_stack=0x7fade4b2cff0, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID, parent_tidptr=0x7fade4b2d9d0, tls=0x7fade4b2d700, child_tidptr=0x7fade$ accept(3, {sa_family=AF_INET, sin_port=htons(51940), sin_addr=inet_addr("87.218.205.209")}, [16]) = 4 clone(child_stack=0x7fade5b2eff0, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID, parent_tidptr=0x7fade5b2f9d0, tls=0x7fade5b2f700, child_tidptr=0x7fade$ accept(3, {sa_family=AF_INET, sin_port=htons(51941), sin_addr=inet_addr("87.218.205.209")}, [16]) = 8 tgkill(31210, 1887, SIGKILL <unfinished ...> +++ killed by SIGKILL +++
Ich nehme mal an der Kernel schickt mir das SIGKILL ich habe aber keine Ahnung wieso.
Hoffe jemand kennt eine möglichkeit die ursache zu finden.
mfg tobZel
-
Findest du irgend welche Hinweise in den Logfiles? Ansonsten könntest du http://www.superfrink.net/code/sig2/siglog.html oder SystemTap ausprobieren.
-
Ich hab nochmal recherchiert und herausgefunden dass pthread_kill intern tgkill() benutzt. Ich hab dann auch in meinem code eine stelle entdeckt, bei der unter umständen pthread_kill mit einer ungültigen ID aufgerufen wird. Hab den fehler jetzt behoben und hoffe dass es daran lag. Ansonsten werde werde ich mal die lösung von deinem zweiten link ausprobieren, da ich in den logs nichts finden konnte.