Hi,

On Tue, Jan 28, 2025 at 02:10:45PM +0900, Mike Hommey wrote:
> On Tue, Jan 28, 2025 at 04:41:26AM +0100, Sebastian Reichel wrote:
> > Package: firefox
> > Version: 134.0.2-2
> > Severity: important
> > X-Debbugs-Cc: Mike Hommey <gland...@debian.org>, Sebastian Reichel 
> > <s...@debian.org>
> > 
> > Hi,
> > 
> > I see a lot of tab crashes with Debian's firefox binary on arm64 based
> > T14s Gen6 Snapdragon. Usually when starting firefox or opening a new tab
> > I am greeted with the tab crash reporter. After a few tries a page is
> > actually rendered, so its not 100% broken. But with 80% crashes it is
> > more or less unusable. The same setup on amd64 runs fine and the crashes
> > also happen in safe mode / without a profile.
> > 
> > Apparently there is no firefox arm64 version in flathub, but I tried the
> > librewolf 134.0.2 fork from there and I haven't seen a single crash with
> > that. This suggests the crashes are somehow specific to the Debian
> > version.
> > 
> > I used minidump-stackwalk as suggested by the firefox project to get
> > a stacktrace for a few of the dmp files generated by firefox and it
> > always seems to be due to SIGILL originating from locked_profiler_start
> > as in the following output from minidump-stackwalk.
> 
> The SIGILL is actually happening in libgcc_s.so.1, and the faulting
> instructions is autia1716. I'm not sure how much Firefox is at fault
> here.

I saw that it points to libgcc_s.so.1, but wasn't sure if that is
due to firefox calling into libgcc with bad arguments. Since it
obviously at least affects firefox I opened the bug report here,
but we can reassign of course.

What I can say is that the crashes also happens with libgcc-s1
15-20250114-1 from experimental.

I also had a look at the build flags for flathub's librewolf. It
has been build with clang 18 instead of clang 19. Also quite a few
of the security flags are missing. For C++ (as the code jumping to
libgcc-s is platform.cpp) I mainly see -fstack-protector-strong,
-fstack-clash-protection and -mbranch-protection=standard missing
in the flathub build. It is also using libgcc_s.so.1 from GCC14
(but not Debian's copy). To gain some more data I replaced flathub's
libgcc_s.so.1 copy with Debian's and librewolf keeps working.

> The "good" news, at least, is that I can reproduce in a VM on a mac.

VM as in "I cannot reproduce when running natively; the VM is needed
to reproduce" or as in "I need the VM because I'm not running
Linux/Debian natively on the MAC"?

Greetings,

-- Sebastian

Reply via email to