LINUX.ORG.RU

Сегфолтится Firefox-15.0.1

 ,


0

2

Gentoo x86-64, Firefox 15.0.1, флаги:

avalon / # emerge -pv firefox

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild   R    ] www-client/firefox-15.0.1  USE="alsa custom-optimization dbus ipc jit pgo startup-notification webm -bindist -custom-cflags -debug -gstreamer -libnotify -minimal (-selinux) -system-sqlite -wifi" LINGUAS="ru -af -ak -ar -as -ast -be -bg -bn_BD -bn_IN -br -bs -ca -cs -csb -cy -da -de -el -en_GB -en_ZA -eo -es_AR -es_CL -es_ES -es_MX -et -eu -fa -fi -fr -fy_NL -ga_IE -gd -gl -gu_IN -he -hi_IN -hr -hu -hy_AM -id -is -it -ja -kk -km -kn -ko -ku -lg -lt -lv -mai -mk -ml -mr -nb_NO -nl -nn_NO -nso -or -pa_IN -pl -pt_BR -pt_PT -rm -ro -si -sk -sl -son -sq -sr -sv_SE -ta -ta_LK -te -th -tr -uk -vi -zh_CN -zh_TW -zu" 0 kB

Total: 1 package (1 reinstall), Size of downloads: 0 kB

C(XX)FLAGS:

CFLAGS="-march=native -O3 -pipe -Wno-all"
CXXFLAGS="-march=native -O3 -pipe -Wno-all"

Сегфолтится при попытке ввести что-либо в адресную строку. strace заканчивается на этом:

futex(0x7f8f2e235048, FUTEX_WAKE_PRIVATE, 1) = 0
poll([{fd=4, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=4, revents=POLLOUT}])
writev(4, [{"\24\0\6\0\216\n\200\0\230\1\0\0\6\0\0\0\0\0\0\0\4\0\0\0", 24}, {NULL, 0}, {"", 0}], 3) = 24
poll([{fd=4, events=POLLIN}], 1, -1)    = 1 ([{fd=4, revents=POLLIN}])
recvfrom(4, "\1\0\3563\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", 4096, 0, NULL, NULL) = 32
recvfrom(4, 0x7f8f1d607074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
recvfrom(4, 0x7f8f1d607074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
--- SIGSEGV {si_signo=SIGSEGV, si_code=SEGV_MAPERR, si_addr=0x7} ---
unlink("/home/frag/.mozilla/firefox/pz8l39pd.default/lock") = 0
rt_sigaction(SIGSEGV, {SIG_DFL, [], SA_RESTORER, 0x7f8f2df38bf0}, NULL, 8) = 0
rt_sigprocmask(SIG_UNBLOCK, [SEGV], NULL, 8) = 0
tgkill(3691, 3691, SIGSEGV)             = 0
--- SIGSEGV {si_signo=SIGSEGV, si_code=SI_TKILL, si_pid=3691, si_uid=1000} ---
+++ killed by SIGSEGV +++
Ошибка сегментирования

Что делать?

Для начала, поменять -O3 на -O2 для firefox.

fads ★★ ()

Собрать со splitdebug, запустить через gdb, получить backtrace, отправить разработчикам.

anonymous ()

Он может падать от задействования AVX?

Kindly_Cat ()

sqlite собрать без -O3, он это не любит

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

А для начала поменять -O3 на -O2, ага.

anonymous ()
Ответ на: комментарий от xorik

Система собрана с -O2, это я для огнелиса включил -O3, хотел попробовать как оно будет.

Kindly_Cat ()
Ответ на: комментарий от Kindly_Cat

О как. Генту года полтора не гонял, не знал.

mkam ()

-O3

Ну ты понел. Если ты это выставил в /etc/make.conf вместо /etc/portage/env и случайно перебрал еще какие-то пакеты - не удивляйся

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

выставлено -O3. Глобально.

ну тогда, повторюсь, не удивляйся

Pinkbyte ★★★★★ ()
Последнее исправление: Pinkbyte (всего исправлений: 1)
Ответ на: комментарий от Kindly_Cat

Так я и не спорю. Просто -O3 глобально - это трудноуловимые приключения на жопу. Они могут проявиться на каком-то определенном софте, а могут не проявиться вообще. В общем - лотерея

Pinkbyte ★★★★★ ()

Что-то я нифига не понял. В флагах выставил -O2, а в выводе emerge всё равно мелькают -O3. WTF?

Kindly_Cat ()
Ответ на: комментарий от Kindly_Cat

А пересобрать мир после изменения флога не пробовал? emerge показывает с чем собиралость а не что прописано.

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