Разработки проекта PuppyRus > Программирование и компиляция

Диагностика "Ошибка сегментирования" (Segmentation fault). Пример

(1/2) > >>

sfs:
запускаем отладчик gdb:

--- [ Читать далее ] ---
sudo gdb -q

Подключаемся к программе:

(gdb) attach ваш_pid

После подключения программа станет на паузу, продолжаем ее выполнение командой:

(gdb) continue

segfault

Затем вам осталось только вызвать ошибку:

segfault1

И набрать команду, которая выведет стек последних вызовов:

(gdb) backtrace

Вывод этой команды и нужно отправлять разработчикам. Чтобы отключиться от программы и выйти наберите:

(gdb) detach
(gdb) quit

Дальше остается отправить отчет и ждать исправления ошибки
--- Конец цитаты ---

При открытии https://wiki.archlinux.org/ и некоторых других сайтов в palemoon basilisk получаю : Ошибка сегментирования
firefox - падает только вкладка
chrome - без проблем
В PRA6408 не проявляется

Железо

--- [ Читать далее ] ---

--- Код ---
CPU~Dual core Intel Celeron G540 (-MCP-) speed/max~1596/2500 MHz Kernel~4.15.4-pf x86_64 Up~38 min Mem~2732.3/7893.5MB HDD~240.1GB(87.7% used) Procs~168 Client~Shell inxi~2.3.56 
Graphics:  Card: Intel 2nd Generation Core Integrated Graphics Controller
           Display Server: X.Org 1.20.4 drivers: modesetting (unloaded: fbdev,vesa)
           Resolution: 1920x1080@60.00hz
           OpenGL: renderer: Mesa DRI Intel Sandybridge Desktop version: 3.3 Mesa 18.3.6
--- Конец кода ---

--- Конец цитаты ---

Пробовал :
Ядра 415 и 51
с mesa и без
Убивал профиль браузера
Подгонял nss из деб репы
Брал palemoon для дебиана
Ничего не помогло

В antix в виртуалке - все ок
У кого-то еще проявляется? Или у меня железо веселое... Уже с ядром на нем был эксклюзив и сетевуха умерла

krasnyh:
Наверно это выглядит забавно, но эти браузеры падают из-за тайского текста на странице.  :) Для примера можно открыть любой сайт, где он присутствует.
(Проверять в LFD10.)

gdb
Скрин.

sfs:
Да. Добавление libthai-data_0.1.28-2_all libthai0_0.1.28-2_amd64 решает проблему
Спасибо+

krasnyh:

--- Цитата: krasnyh от 13 Ноябрь 2021, 13:59:29 ---
--- Цитата: Pro от 12 Ноябрь 2021, 13:43:45 ---[  280.119405] pool-pup-volume[8319]: segfault at 40 ip 00007f53274adfc0 sp 00007f532630ad98 error 4 in libpupvm.so.0.0.0[7f53274a2000+12000]
--- Конец цитаты ---
В простых случаях, причину можно самостоятельно отловить с gdb. Например, ситуация когда падали браузеры из-за отсутствия библиотек для тайского текста. :)


Но есть и случаи, когда находишь виновника segfault (gdb указал на /usr/lib/libgtk-3.so.0), и что с ним дальше делать... Компилить с нуля, но там проект уже давно заброшен. 

--- Цитата: krasnyh от 22 Октябрь 2021, 19:17:38 ---2. Не работает скриншот:

--- Код ---
live@roll2110 ~ % vera-screenshot -e

[1]    14174 segmentation fault (core dumped)  vera-screenshot -e

--- Конец кода ---

--- Конец цитаты ---

--- [+] лог gdb ---

--- Код ---
Thread 1 "vera-screenshot" received signal SIGSEGV, Segmentation fault.
0x00007ffff7bfe300 in ?? () from /usr/lib/libgtk-3.so.0
(gdb) bt
#0  0x00007ffff7bfe300 in  () at /usr/lib/libgtk-3.so.0
#1  0x00007ffff79484c6 in  () at /usr/lib/libgtk-3.so.0
#2  0x00007ffff7528fdf in  () at /usr/lib/libgobject-2.0.so.0
#3  0x00007ffff7529430 in  () at /usr/lib/libgobject-2.0.so.0
#4  0x00007ffff752a79b in g_object_new_valist () at /usr/lib/libgobject-2.0.so.0
#5  0x00007ffff752acfa in g_object_new () at /usr/lib/libgobject-2.0.so.0
#6  0x0000555555406453 in  ()
#7  0x0000555555406ab9 in  ()
#8  0x00007ffff73a4a84 in  () at /usr/lib/libglib-2.0.so.0
#9  0x00007ffff73a43e5 in g_main_context_dispatch () at /usr/lib/libglib-2.0.so.0
#10 0x00007ffff73f8749 in  () at /usr/lib/libglib-2.0.so.0
#11 0x00007ffff73a3a63 in g_main_loop_run () at /usr/lib/libglib-2.0.so.0
#12 0x00007ffff7ad7c0f in gtk_main () at /usr/lib/libgtk-3.so.0
#13 0x0000555555403fe6 in  ()
#14 0x00007ffff6c2ce4e in __libc_start_call_main () at /usr/lib/libc.so.6
#15 0x00007ffff6c2cefc in __libc_start_main_impl () at /usr/lib/libc.so.6
#16 0x00005555554044ba in  ()

--- Конец кода ---

--- Конец цитаты ---

--- Конец цитаты ---


Вообщем,
1. загрузился с флешки с prar2110 в вирте, со всеми обновами.
2. подключил все что можно - DEVX, pkg-2110, gdb, pra6407extra/vera-screenshot, icu и выполнил pacman -Syy.
3. определил пакеты либ, указанные в "лог gdb" с pacman -F.
4. переустановил то, что не было указано как "[установлен]",  pacman -S gtk3 glibc tracker3 --overwrite \*

Итог, vera-screenshot -e запустился и нормально отработал, выделив и сохранив скрин. Предварительная причина segfault, левые установленные gtk3, glibc (может и не причем) и tracker3-fake-2021.03-5.

krasnyh:

--- Цитата: krasnyh от 13 Ноябрь 2021, 15:56:12 ---Предварительная причина segfault, левые установленные gtk3, glibc (может и не причем) и tracker3-fake-2021.03-5
--- Конец цитаты ---
Достаточно переустановить gtk3, удалив gtk3-ubuntu-light и tracker3, удалив tracker3-fake-2021.03-5.

Навигация

[0] Главная страница сообщений

[#] Следующая страница

Перейти к полной версии