Bug 37211 - Падает при старте
Summary: Падает при старте
Status: CLOSED WORKSFORME
Alias: None
Product: Branch p9
Classification: Distributions
Component: seamonkey (show other bugs)
Version: не указана
Hardware: arm Linux
: P3 normal
Assignee: qa-team@altlinux.org
QA Contact: qa-p9@altlinux.org
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2019-09-11 17:43 MSK by Denis Sergeevich
Modified: 2023-06-22 16:09 MSK (History)
2 users (show)

See Also:


Attachments
Фикс падения на armh (474 bytes, patch)
2019-12-12 17:53 MSK, Denis Sergeevich
no flags Details | Diff
seamonkey.spec (23.62 KB, text/x-rpm-spec)
2019-12-12 17:55 MSK, Denis Sergeevich
no flags Details
backtrace.txt (1.46 KB, text/plain)
2019-12-28 17:31 MSK, Denis Sergeevich
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Denis Sergeevich 2019-09-11 17:43:16 MSK
$ seamonkey
Assertion failure: !joinable(), at /usr/src/RPM/BUILD/seamonkey-2.49.4/mozilla/js/src/threading/Thread.h:122
/usr/bin/seamonkey: строка 5:  2310 Ошибка сегментирования                   /usr/lib/seamonkey/seamonkey-bin ${1:+"$@"}

То же самое в safe-mode

Подобное было в thunderbird 52, но сейчас в 60-ом полёт нормальный, уж не знаю, как может быть связано.
Comment 1 Oleg Zenin 2019-11-08 12:37:44 MSK
(В ответ на комментарий №0)

С пустым профилем тоже падает?
Comment 2 Denis Sergeevich 2019-12-08 14:02:24 MSK
(В ответ на комментарий №1)
> (В ответ на комментарий №0)
> 
> С пустым профилем тоже падает?

Да, падает.

Снёс ~/.mozilla/seamonkey

После неудачного старта файлы в каталогах:
$ ls ~/.mozilla/seamonkey/
5x11frvd.default  profiles.ini

$ ls ~/.mozilla/seamonkey/5x11frvd.default/
compatibility.ini  times.json
Comment 3 Oleg Zenin 2019-12-09 18:50:27 MSK
Здесь пишут, что это воспроизводится при сборке gcc-6 c флагами по умолчанию:

https://bugzilla.mozilla.org/show_bug.cgi?id=1337263:

> - It doesn't happen with GCC 5 with default build flags.
> - It happens with GCC 6 with default build flags
> - It doesn't happen with GCC 6 with MOZ_OPTIMIZE_FLAGS="-O3 -fno-schedule-insns" in js/src/old-configure.in
Comment 4 Denis Sergeevich 2019-12-12 17:53:45 MSK
Created attachment 8467 [details]
Фикс падения на armh
Comment 5 Denis Sergeevich 2019-12-12 17:55:54 MSK
Created attachment 8468 [details]
seamonkey.spec
Comment 6 Denis Sergeevich 2019-12-12 17:59:19 MSK
1. Делаю пересборку в текущем окружении p9 (gcc8, флаги по умолчанию) - через минуту-две всё-равно падает, но уже не пишет, где именно.

2. Пытаюсь запилить патч с исправленными параметрами, но с ним сборка ломается вот с таким сообщением:

make[2]: Entering directory '/usr/src/RPM/BUILD/seamonkey-2.49.4/objdir'
STOP!  /usr/src/RPM/BUILD/seamonkey-2.49.4/mozilla/old-configure.in has changed, and your configure is out of date.
Please rerun autoconf and re-configure your build directory.

Куда ещё копнуть, понять не могу.

p.s. патч и спек приложил.
Comment 7 Oleg Zenin 2019-12-12 19:22:30 MSK
(In reply to comment #6)
> 1. Делаю пересборку в текущем окружении p9 (gcc8, флаги по умолчанию) - через
> минуту-две всё-равно падает, но уже не пишет, где именно.

Не на выполнении JS? #37449
>
> 2. Пытаюсь запилить патч с исправленными параметрами, но с ним сборка ломается
> вот с таким сообщением:
> 
> make[2]: Entering directory '/usr/src/RPM/BUILD/seamonkey-2.49.4/objdir'
> STOP!  /usr/src/RPM/BUILD/seamonkey-2.49.4/mozilla/old-configure.in has
> changed, and your configure is out of date.
> Please rerun autoconf and re-configure your build directory.

Запуск autoconf в .spec есть, он что-то пишет?
Comment 8 Oleg Zenin 2019-12-12 20:01:20 MSK
P.S.

(In reply to comment #7)
> (In reply to comment #6)
> Запуск autoconf в .spec есть, он что-то пишет?

У меня mozilla/old-configure автоматически перегенеряется из перезаписанного mozilla/old-configure.in самим make -f client.mk build.
Специально вставлять autoconf не надо.
Comment 9 Denis Sergeevich 2019-12-14 15:20:47 MSK
(В ответ на комментарий №7)
> (In reply to comment #6)
> > 1. Делаю пересборку в текущем окружении p9 (gcc8, флаги по умолчанию) - через
> > минуту-две всё-равно падает, но уже не пишет, где именно.
> 
> Не на выполнении JS? #37449

Похоже да. По крайней мере на тесте для воспроизведения бага он падает. 
Пересобрал с использованием gcc4.9, работает чуть дольше, но в итоге падает. Тест также не проходит.
А когда подоспеет обновлённая версия?
Comment 10 Oleg Zenin 2019-12-14 15:33:36 MSK
(In reply to comment #9)
> (В ответ на комментарий №7)
> > (In reply to comment #6)
> > > 1. Делаю пересборку в текущем окружении p9 (gcc8, флаги по умолчанию) - через
> > > минуту-две всё-равно падает, но уже не пишет, где именно.
> > 
> > Не на выполнении JS? #37449
> 
> Похоже да. По крайней мере на тесте для воспроизведения бага он падает. 
> Пересобрал с использованием gcc4.9, работает чуть дольше, но в итоге падает.
> Тест также не проходит.

С js-ProxyObject-New-null-pointer.patch из #37499 тоже падает?
https://bugzilla.altlinux.org/attachment.cgi?id=8442:

--- mozilla/js/src/vm/ProxyObject.cpp   2019-11-15 11:11:26.000515546 +0100
+++ mozilla/js/src/vm/ProxyObject.cpp   2019-11-15 11:13:20.623414171 +0100
@@ -47,7 +47,7 @@
     if (options.singleton()) {
         MOZ_ASSERT(priv.isGCThing() && priv.toGCThing()->isTenured());
         newKind = SingletonObject;
-    } else if ((priv.isGCThing() && priv.toGCThing()->isTenured()) ||
+    } else if ((priv.isGCThing() && (priv.toGCThing() && priv.toGCThing()->isTenured())) || // <- FIXME: is priv.toGCThing() == 0 ever expected when we get here?
                !handler->canNurseryAllocate() ||
                !handler->finalizeInBackground(priv))
     {

> А когда подоспеет обновлённая версия?

На http://www.seamonkey-project.org/ 2.49.5 пока последняя, тоже на базе Firefox/52 (сборка gcc-8/9 на x86_64 обсуждалась в https://bugzilla.altlinux.org/show_bug.cgi?id=37449)
Comment 11 Denis Sergeevich 2019-12-15 10:18:39 MSK
(В ответ на комментарий №10)
> 
> С js-ProxyObject-New-null-pointer.patch из #37499 тоже падает?
> https://bugzilla.altlinux.org/attachment.cgi?id=8442:
Да, на тестовом примере падает. Добавил только этот патч + сборка gcc4.9.
Похоже пора разворачивать систему с debuginfo :)

> > А когда подоспеет обновлённая версия?
> 
> На http://www.seamonkey-project.org/ 2.49.5 пока последняя, тоже на базе
> Firefox/52 (сборка gcc-8/9 на x86_64 обсуждалась в
> https://bugzilla.altlinux.org/show_bug.cgi?id=37449)

Я не написал в начале... Экспериментирую с версией 2.49.4-alt1 - последняя, доступная на packages.altlinux.org. Под новой как раз подразумевал 2.49.5.
Comment 12 Oleg Zenin 2019-12-15 15:08:14 MSK
(In reply to comment #11)
>... Под новой как раз подразумевал 2.49.5.

С патчами из #37449 (https://bugzilla.altlinux.org/attachment.cgi?id=8442)
2.49.5 собирается gcc-8/9 под p9/sisyphus x86_64 и работает у меня без видимых ошибок. 

Имеет смысл собрать 2.49.5 под arm с debuginfo и искать похожий backtrace на https://crash-stats.mozilla.com/

Если есть инструкция, как запустить p9/arm в qemu, могу очень небыстро посмотреть тоже.
Comment 13 Denis Sergeevich 2019-12-15 19:18:08 MSK
(В ответ на комментарий №12)
> (In reply to comment #11)
> >... Под новой как раз подразумевал 2.49.5.
> 
> С патчами из #37449 (https://bugzilla.altlinux.org/attachment.cgi?id=8442)
> 2.49.5 собирается gcc-8/9 под p9/sisyphus x86_64 и работает у меня без видимых
> ошибок. 
> 
> Имеет смысл собрать 2.49.5 под arm с debuginfo и искать похожий backtrace на
> https://crash-stats.mozilla.com/
Ок, для начала тогда стяну исходники с сайта и попробую собрать, а там видно будет.

> Если есть инструкция, как запустить p9/arm в qemu, могу очень небыстро
> посмотреть тоже.
Вроде где-то есть... У меня asus C201 на rk3288, на нём и балуюсь.
Comment 14 Denis Sergeevich 2019-12-17 15:07:32 MSK
Однако 2.49.5 запускается, но падает на тесте из #37449, как и предыдущая сборка.
При случае копну поглубже...
Comment 15 Oleg Zenin 2019-12-17 15:10:11 MSK
(In reply to comment #14)
> Однако 2.49.5 запускается, но падает на тесте из #37449, как и предыдущая сборка.

А если патч из #c10 приложить?
Comment 16 Denis Sergeevich 2019-12-17 15:33:25 MSK
(В ответ на комментарий №15)
> (In reply to comment #14)
> > Однако 2.49.5 запускается, но падает на тесте из #37449, как и предыдущая сборка.
> 
> А если патч из #c10 приложить?

Я взял спек и патчи из #37449. Только чтобы избавится от "your configure is out of date." добавил "rm -f mozilla/configure" перед вызовом configure.
Comment 17 Oleg Zenin 2019-12-17 15:38:45 MSK
(In reply to comment #16)

debuginfo?
Comment 18 Denis Sergeevich 2019-12-17 16:08:17 MSK
(В ответ на комментарий №17)
> (In reply to comment #16)
> 
> debuginfo?

Там по зависимостям для половины системных либ debuginfo надо ставить, а тут пока с местом проблемы...
Comment 19 Denis Sergeevich 2019-12-20 20:16:32 MSK
Добрался до debuginfo, но тут вскрылась какая-то другая проблема, как будто в gdb:

......
[New LWP 28195]
[New LWP 28174]
Reading symbols from /usr/lib/seamonkey/seamonkey-bin...
Reading symbols from /usr/lib/debug/usr/lib/seamonkey/seamonkey-bin.debug...
../../gdb/dwarf2read.c:6263:29: runtime error: reference binding to misaligned address 0x0020e599 for type '<unknown>', which requires 2 byte alignment
0x0020e599: note: pointer points here
......
Comment 20 Oleg Zenin 2019-12-21 14:39:03 MSK
(In reply to comment #19)
> Reading symbols from /usr/lib/debug/usr/lib/seamonkey/seamonkey-bin.debug...
> ../../gdb/dwarf2read.c:6263:29: runtime error: reference binding to misaligned
> address 0x0020e599 for type '<unknown>', which requires 2 byte alignment
> 0x0020e599: note: pointer points here
> ......

Проще оставить до выхода 2.53.1, обещают  beta 1 к 2019-12-24: 
https://bugzilla.mozilla.org/show_bug.cgi?id=1600521
Comment 21 Denis Sergeevich 2019-12-28 17:31:02 MSK
Created attachment 8501 [details]
backtrace.txt

После обновления gdb до 8.3 удалось снять backtrace:

Thread 12 "JS Helper" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xac9f9440 (LWP 10928)]
0xb5cab668 in js::jit::MacroAssemblerARM::ma_mov(js::jit::ImmGCPtr, js::jit::Register) ()
   from /usr/lib/seamonkey/libxul.so
Comment 22 Oleg Zenin 2019-12-28 19:55:44 MSK
(В ответ на комментарий №21)
> 
> 0xb5cab668 in js::jit::MacroAssemblerARM::ma_mov(js::jit::ImmGCPtr,
> js::jit::Register) ()
>    from /usr/lib/seamonkey/libxul.so

ARM-специфическое. Кстати, обещанного под Xmas 2.53.1 таки еще нет.
Comment 23 Монастырский Илья 2023-06-22 16:09:13 MSK
Пакет seamonkey не собран под архитектуру armh

Проверил на x86_64 - ошибка не воспроизводится