URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 8382
[ Назад ]

Исходное сообщение
"backtrace в mips"

Отправлено sluge , 05-Авг-09 11:19 
привет всем
сейчас я работаю на mips машине, ядро 2.4. Оказалось что в отладчике gdb не работает команда bt, кто нибудь знает как заставить ее работать?

Содержание

Сообщения в этом обсуждении
"backtrace в mips"
Отправлено svn , 05-Авг-09 12:07 
>gdb не работает команда bt

Давай подробностей, у меня чакра в атсрал закрылась ))


"backtrace в mips"
Отправлено sluge , 05-Авг-09 13:13 
>>gdb не работает команда bt
>
>Давай подробностей, у меня чакра в атсрал закрылась ))

какие подробности? при команде bt выдается два нуля в столбец и все


"backtrace в mips"
Отправлено svn , 05-Авг-09 15:07 
>при команде bt выдается два нуля в столбец и все

Вот видишь, уже команда bt работает, но резльтат не выдаёт. (сравни с первоначальным предложением)

Программа собрана с отладкой?
Ты не из обработчике сигнала пытаешься стек смотреть?

Если оба раза да - значит стек затёрт и испорчен.


"backtrace в mips"
Отправлено sluge , 05-Авг-09 15:35 
если нули выдает это значит что команда не работает

собираю с дебажными символами, сигналы не использую. видимо это фишка платформы :(


"backtrace в mips"
Отправлено svn , 05-Авг-09 17:23 
>если нули выдает это значит что команда не работает

Не работает, это "bt:  command not found"

>сигналы не использую.

Они тебя забыли спросить, используешь ты их или нет ))

В какой момент ты выполняешь команду bt ?

> видимо это фишка платформы :(

Хватить бредить и поклоняться перуну. Нормальная платформа. Стек везде одинаковый.


"backtrace в mips"
Отправлено sluge , 05-Авг-09 18:51 
если command not found-это значит команды вообще нет. между вообще нет и не работает есть разница, ненаходишь?

bt после gdb myapp -c core.xxx

если бы был везде одинковый-работало бы


"backtrace в mips"
Отправлено svn , 05-Авг-09 22:09 
>bt после gdb myapp -c core.xxx

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


"backtrace в mips"
Отправлено sluge , 06-Авг-09 07:28 
сказано же-я не задаю обработчиков сигналов

"backtrace в mips"
Отправлено svn , 06-Авг-09 08:57 
>сказано же-я не задаю обработчиков сигналов

Это твои проблемы. Но если ты обращаешься к неправильной памяти, программа получает и обрабатывает SIGSEGV или подобный сигнал, и создаётся дамп.

Скорее всего дело обстоит так.

1. Ты портишь стек.
2. Программа не может выйти из функции (переходит по мусору) и ловит SEGV делает дамп.

gdb аналогично не видит в мусоре никакого стека.

Это может быть везде, а не только на mips.