![]() |
Модераторы: xvr |
![]() ![]() ![]() |
|
MAKCim |
|
|||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 84 Всего: 207 |
программа падает c SIGABRT при вызове malloc
что за программа не имеет значения - проблема точно локализована - что-то с malloc, причем malloc вызывается в цикле, и падает после 2-ух успешных вызовов вот что glibc пишет
в чем может быть дело? Это сообщение отредактировал(а) MAKCim - 28.9.2006, 17:27 -------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
|||
|
||||
kirjanov |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 326 Регистрация: 22.1.2006 Где: Dark wood of erro r Репутация: 3 Всего: 15 |
Этот сигнал сгенерирован, когда недопустимый указатель применяется. Подобно SIGSEGV, этот сигнал - обычно результат применения неинициализированного указателя.
|
|||
|
||||
MAKCim |
|
|||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 84 Всего: 207 |
Да я знаю что это за сигнал и когда он генерируется Вопрос в другом. В чем может быть причина, что вылетает библиотечная функция? -------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
|||
|
||||
smalcom |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 494 Регистрация: 16.10.2004 Где: Dnepr Репутация: нет Всего: 7 |
>>В чем может быть причина, что вылетает библиотечная функция?
может магнитная активность солнца, может изза самостоятельной пересборки glibc или еще какого пакета который косвенно на это влияет. А может прога из нескольких тредов -------------------- What DA F...??? |
|||
|
||||
MAKCim |
|
||||||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 84 Всего: 207 |
![]()
нет
к моменту вызова поток один -------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
||||||
|
|||||||
smalcom |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 494 Регистрация: 16.10.2004 Где: Dnepr Репутация: нет Всего: 7 |
приду домой попробую покопать. если не сложно приблизетельно плюс минус две три строки от малока надо увидеть
-------------------- What DA F...??? |
|||
|
||||
MAKCim |
|
||||||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 84 Всего: 207 |
да в принципе все стандартно
-------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
||||||
|
|||||||
smalcom |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 494 Регистрация: 16.10.2004 Где: Dnepr Репутация: нет Всего: 7 |
скомпилил я у ся сей кусок все тип-топ. причина может быть в некоректной работе sizeof или его входных параметров, могу пока порекомендовать поиграть с MALLOC_CHECK_ и кусок кода сделать чуть иначе штобы видеть плотнее что происходит.
Это сообщение отредактировал(а) smalcom - 29.9.2006, 20:40 -------------------- What DA F...??? |
|||
|
||||
smalcom |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 494 Регистрация: 16.10.2004 Где: Dnepr Репутация: нет Всего: 7 |
я так понял все писяно на сях в коих я не очень попробуй на плюсах хотя интересней разобраца в сути проблемы
-------------------- What DA F...??? |
|||
|
||||
kirjanov |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 326 Регистрация: 22.1.2006 Где: Dark wood of erro r Репутация: 3 Всего: 15 |
MAKCim,
поставь бряк на адрес и глянь дизассемблированный код функции. |
|||
|
||||
MAKCim |
|
|||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 84 Всего: 207 |
Спасибо всем за участие - проблема сама собой решилась
Самое интересное, что якобы глючный код я не трогал, а слегка изменил совсем другой участок программы Вот все как взаимосвязано оказывается ![]() -------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
|||
|
||||
smalcom |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 494 Регистрация: 16.10.2004 Где: Dnepr Репутация: нет Всего: 7 |
>>> Да я знаю что это за сигнал и когда он генерируется <<<
Накричал тут значит >>> проблема точно локализована - что-то с malloc <<< наехал на glibc(как програмист под винду ей-богу - раз моя прога не работает значит вонь is sux) P.S. хоть бы сказал в чем дело было, а вдруг завтра я или еще кто тупо опять сидит перед дебаггером кроет матом glibc задалбывает форумы и знакомых по аське палит кучу трафика, а ведь можно всего было избежать. Ща погибнет весь автобус -------------------- What DA F...??? |
|||
|
||||
MAKCim |
|
||||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 84 Всего: 207 |
Понимаешь в чем дело, ошибка то вылетала именно в malloc-е Это было четко видно по логам и в gdb, так что наезды не беспочвенны (может, даже скорее всего, malloc валился из-за косвенных, не относящихся к самой glibc, причин - но внешне все сводилось к ошибке в malloc-е) Прежде чем сюда писать я досконально все проверил, не из-за кривизны ли моих рук все валится
Я и сам не знаю, тот кусок, который исправил, не влиял на кусок кода, который падал Так что сказать ничего не могу...пока Это сообщение отредактировал(а) MAKCim - 30.9.2006, 14:56 -------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
||||
|
|||||
regis |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 232 Регистрация: 12.12.2005 Где: Москва, Россия Репутация: нет Всего: 7 |
Судя по всему, запорчены были заголовки блоков памяти кучи, о чем malloc прямо и сообщает. Ошибка, конечно, не в malloc, а где-то в другом месте программы. Стоит проверить все критичные операции записи через указатели, если не поможет -- использовать для отладки что-нибудь вроде ElectricFence.
--------------------
В. В чем разница между hardware и software?О. В отличие от второго, по первому можно двинуть кулаком или пнуть ногой. |
|||
|
||||
MAKCim |
|
|||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 84 Всего: 207 |
Боюсь времени нет, тем более все работает Хотя было бы интересно -------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
|||
|
||||
dmiceman |
|
|||
Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 9.9.2006 Репутация: нет Всего: нет |
о да! обожаю такие ошибки! помнится во времена когда ничего вроде efence небыло, отлавливал я такого рода багу неделю. не помню уже -- отловил или нет :-) рождается такая бага обычно совсем другом месте программы, совсем в другом исходнике, минут за пять до славливания сигнала. и тихо ждет своего часа. это может быть что угодно -- от переполнения на один байт, от непоставленного нолика в конце строки после strncpy(), все что угодно. даже совсем не обязательно в твоем коде.
но! времена меняются. попробуй просто прогнать прожку под valgrind -- десять к одному он тебе все расскажет и на блюдечке принесет. |
|||
|
||||
![]() ![]() ![]() |
Правила форума "С/С++: Программирование под Unix/Linux" | |
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, xvr. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Программирование под Unix/Linux | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |