LINUX.ORG.RU

скрипт убит SIGSEGV, как искать причину?


0

1

я создавал топик про питон-скрипт, но до сути добраться не смог, поэтому создам ещё раз и поставлю вопрос иначе.

Вот у вас есть приложение. Скомпиленное или скрипт - думаю неважно. По неизвестной причине оно вылетает в середине своей работы.

Причем, если оно делает лишь часть функционала, то все ОК, а иначе - вылет.

Задача - найти корявый код, который порождает ошибку сегментации (как я это понял)

1. запускаем скрипт, а потом «strace -p PID -o output.txt» Когда скрипт умирает, видим там:

+++ killed by SIGSEGV +++

2. Запускаем в gdb, это дает нам такой бектрейс - http://pastebin.com/KG8zKPdU

По бектрейсу видно, что он вроде как создает новый поток:

#580 0x080d9716 in t_bootstrap (boot_raw=0x86800a0) at ./Modules/_threadmodule.c:990 #581 0xb7fc5925 in start_thread () from /lib/libpthread.so.0 #582 0xb7ef107e in clone () from /lib/libc.so.6

На деле же, на том этапе исполнения не может ничего создаваться. Вопросы такие:

1. Точно ли вылет при создании треда? Или нельзя судить по этим строкам?

2. Есть ли ещё способы как-то цивильно увидеть где рушится код? Может у питона есть нормальные консольные отладчики?

★★★

Последнее исправление: sergey-novikov (всего исправлений: 2)

Питон не должен рушиться. Тебе лучше рассказать об этом на их форуме/багтрекере

Zorn
()

И дай свой код, название/версию своей ОС, версию питона ну и ещё чего посчитаешь нужным

Zorn
()

2. Есть ли ещё способы как-то цивильно увидеть где рушится код? Может у питона есть нормальные консольные отладчики?

pdb не пробовал?

Norgat ★★★★★
()

скрипт убит SIGSEGV, как искать причину?

Нанять частного детектива или подождать, пока разберется полиция.

buddhist ★★★★★
()
Ответ на: комментарий от true_admin

И там были даны конкретные рекомендации. Ты им последовал?

конечно
только я не смог найти причину по бектрейсу, полученному в gdb

sergey-novikov ★★★
() автор топика
Ответ на: комментарий от sergey-novikov

1. Прогони через valgrind. Кстати, что у тебя за дистр и питон?

2. Покажи нам код

true_admin ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.