Discussion:
What are the current available browser options for debian-ppc64?
Add Reply
DistroHopper39B Business
2023-11-20 00:50:01 UTC
Reply
Permalink
SeaLion (https://github.com/wicknix/SeaLion) is the best choice for
PowerPC.

On Sun, Nov 19, 2023 at 7:46 PM Ken Cunningham <
I am aware of a few projects out there working to try to keep a repackaged
TenFourFox going that have *.deb archives available, and I think there are
some official channels for a few different browsers inside debian (Firefox,
Epiphany).
Does anyone have or know about a browser they use on debian ppc64 they
would feel comfortable to recommend?
Does it involve any installation trickery? If so, some short notes on how
to get it installed would be appreciated.
Thanks,
Ken
Ken Cunningham
2023-11-20 02:00:02 UTC
Reply
Permalink
Yes, that one works pretty well, better than I expected it would.

Thank you!


To get it to launch, I had to make a symlink, as it’s built against libffi6 but that version is not available any more on any of my apt sources it appears.


ie in:

/usr/lib/powerpc64-linux-gnu

I did this, which is no doubt sinful:

ln -s libffi.so.8 libffi.so.6



Ken
SeaLion (https://github.com/wicknix/SeaLion <https://github.com/wicknix/SeaLion>) is the best choice for PowerPC.
I am aware of a few projects out there working to try to keep a repackaged TenFourFox going that have *.deb archives available, and I think there are some official channels for a few different browsers inside debian (Firefox, Epiphany).
Does anyone have or know about a browser they use on debian ppc64 they would feel comfortable to recommend?
Does it involve any installation trickery? If so, some short notes on how to get it installed would be appreciated.
Thanks,
Ken
Jeroen Diederen
2023-11-20 03:50:01 UTC
Reply
Permalink
Hi Ken,

I have it in the MintPPC64 repo for you if you like. There is also
arcticfox for you.
In /etc/apt/sources.list add the following line:
deb http://u58733p55594.web0093.zxcs-klant.nl/xeno74 ./

Do the following:
wget http://u58733p55594.web0093.zxcs-klant.nl/repo/key/public.gpg.key
gpg --no-default-keyring --keyring ./temp-keyring.gpg --import
public.gpg.key
gpg --keyring ./temp-keyring.gpg --no-default-keyring --export -a >
mintppc.asc
rm temp-keyring.gpg
sudo mv mintppc.asc /etc/apt/keyrings

Regards,
Jeroen
Post by Ken Cunningham
Yes, that one works pretty well, better than I expected it would.
Thank you!
To get it to launch, I had to make a symlink, as it’s built against
libffi6 but that version is not available any more on any of my apt
sources it appears.…
/usr/lib/powerpc64-linux-gnu
ln -s libffi.so.8 libffi.so.6
Ken
On Nov 19, 2023, at 4:48 PM, DistroHopper39B Business
SeaLion (https://github.com/wicknix/SeaLion) is the best choice for
PowerPC.
On Sun, Nov 19, 2023 at 7:46 PM Ken Cunningham
I am aware of a few projects out there working to try to keep a
repackaged TenFourFox going that have *.deb archives available,
and I think there are some official channels for a few different
browsers inside debian (Firefox, Epiphany).
Does anyone have or know about a browser they use on debian ppc64
they would feel comfortable to recommend?
Does it involve any installation trickery? If so, some short notes
on how to get it installed would be appreciated.
Thanks,
Ken
Riccardo Mottola
2023-11-20 08:00:01 UTC
Reply
Permalink
Hi Ken,
I am aware of a few projects out there working to try to keep a repackaged TenFourFox going that have *.deb archives available, and I think there are some official channels for a few different browsers inside debian (Firefox, Epiphany).
I don't know what the situation of TFF on Linux is. From what I remember
it had some pretty advanced areas, but when I check its code others were
left behind. It is very well tweaked for big-endian though.

SeaLion is from what I know a pretty straight Firefox port, I don't know
if it has specific PPC fixes, one should ask Matt/wicknix.

Firefox recently compiles and is available again, but did not work for
me or, in the case it did, was excruciatingly slow even drawing its own
interface and had glitches. THe issue is that skia explicitely does not
support BigEndian anymore and was not interested in patches.
Also, there are some graphic things which were broken since Firefox 45
and never fixed on big-endian.
The proposed patch (by Cameron) was not accepted back then. TenFourFox
and ArcticFox incorporate it though.

Contributors are always well accepted :) There are issues to work on. :)
Does anyone have or know about a browser they use on debian ppc64 they would feel comfortable to recommend?
Of course I use ArcticFox on PPC. Since version 43.0 it works again on PPC.
It is "only" AF though, don't expect Firefox 118 compatibility. No
github or facebook...
But e.g. Wikipedia works well with the new theme and I hope 43.1 will
bring some nice things with.
Does it involve any installation trickery? If so, some short notes on how to get it installed would be appreciated.
ArcticFox does involve no trickery, neither building nor installing. It
builds with a current GCC and binaries can just be untarred and loaded.
I do not provide deb packages, they were contributed in the past though.

Riccardo
Jeroen Diederen
2023-11-20 10:00:01 UTC
Reply
Permalink
Hi Adrian,

Firefox does not work.

Regards,
Jeroen
Does anyone have or know about a browser they use on debian
ppc64 they would feel comfortable to recommend?
Firefox is available and up to date for ppc64.
https://buildd.debian.org/status/package.php?p=firefox&suite=sid
Did you try to install and run it?
Adrian
John Paul Adrian Glaubitz
2023-11-20 10:10:02 UTC
Reply
Permalink
Hello!
Post by Jeroen Diederen
Firefox does not work.
Did you try the latest version 119?

If there is a patch which fixes the crash on big-endian targets, we could include it in the Debian package or I could try to get it merged upstream.

Adrian
Ken Cunningham
2023-11-20 19:00:01 UTC
Reply
Permalink
Post by John Paul Adrian Glaubitz
Hello!
Post by Jeroen Diederen
Firefox does not work.
Did you try the latest version 119?
If there is a patch which fixes the crash on big-endian targets, we could include it in the Debian package or I could try to get it merged upstream.
Adrian
The one I have installed is:

firefox/unstable,now 119.0.1-1 ppc64

and it has a segmentation fault when you launch it.

It would be really great if that worked. Perhaps I will skill up and see if I can do something to help fix it. I worked on TenFourFox for a few months with Riccardo and Cameron a few years ago and we made progress there, so I'm slightly familiar with the old code base, at least.

Ken
Jeffrey Walton
2023-11-20 20:40:01 UTC
Reply
Permalink
On Mon, Nov 20, 2023 at 1:56 PM Ken Cunningham
Post by Ken Cunningham
Post by John Paul Adrian Glaubitz
Post by Jeroen Diederen
Firefox does not work.
Did you try the latest version 119?
If there is a patch which fixes the crash on big-endian targets, we could include it in the Debian package or I could try to get it merged upstream.
firefox/unstable,now 119.0.1-1 ppc64
and it has a segmentation fault when you launch it.
Out of curiosity... would that happen to be a G4 or a non-Altivec machine?

Jeff
Ken Cunningham
2023-11-20 23:40:01 UTC
Reply
Permalink
Anyways, this particular crash a known upstream bug in Firefox [2]. I wonder whether
it might be fixed by this particular patch [3].
https://people.debian.org/~glaubitz/firefox-ppc64/
Could anyone test this and report back, please?
Adrian
--
.''`. John Paul Adrian Glaubitz
: :' : Debian Developer
`. `' Physicist
`- GPG: 62FF 8A75 84E0 2956 9546 0006 7426 3B37 F5B5 F913
on my system I had another segfault, in libxul.

hopefully others had more luck. sure be nice to get a current browser!

Ken
Ken Cunningham
2023-11-21 06:50:01 UTC
Reply
Permalink
Post by Jeffrey Walton
On Mon, Nov 20, 2023 at 1:56 PM Ken Cunningham
Post by Ken Cunningham
Post by John Paul Adrian Glaubitz
Post by Jeroen Diederen
Firefox does not work.
Did you try the latest version 119?
If there is a patch which fixes the crash on big-endian targets, we could include it in the Debian package or I could try to get it merged upstream.
firefox/unstable,now 119.0.1-1 ppc64
and it has a segmentation fault when you launch it.
Out of curiosity... would that happen to be a G4 or a non-Altivec machine?
Jeff
A Dual-G5 with 3.5G ram, designator PowerMac7,3

Ken
Jan Montag
2024-11-18 15:10:01 UTC
Reply
Permalink
Hello,

since I just bought a Powermac G5 (powermac11.2) Dual 2 GHz, I'm
running Debian 12 SID on it. I also keep trying to compile or install a
current browser. Unfortunately this doesn't work for reasons I don't
understand. How has this progressed? The current version of Firefox is
132.0.0.2 and still produces the memory access error on my ppc64 Mac.
Segmentation fault. Is there anything new to report here? I can
definitely try something out with guidance. But I'm not a programmer or
even a hacker.

Best regards,
Jan
Post by Jeffrey Walton
On Mon, Nov 20, 2023 at 1:56 PM Ken Cunningham
Post by Ken Cunningham
Post by John Paul Adrian Glaubitz
On Nov 20, 2023, at 10:56 AM, Jeroen Diederen
Firefox does not work.
Did you try the latest version 119?
If there is a patch which fixes the crash on big-endian targets, we
could include it in the Debian package or I could try to get it
merged upstream.
firefox/unstable,now 119.0.1-1 ppc64
and it has a segmentation fault when you launch it.
Out of curiosity... would that happen to be a G4 or a non-Altivec machine?
Jeff
John Paul Adrian Glaubitz
2024-11-18 15:40:01 UTC
Reply
Permalink
Hi Jan,
Post by Jan Montag
since I just bought a Powermac G5 (powermac11.2) Dual 2 GHz, I'm
running Debian 12 SID on it. I also keep trying to compile or install a
current browser. Unfortunately this doesn't work for reasons I don't
understand. How has this progressed? The current version of Firefox is
132.0.0.2 and still produces the memory access error on my ppc64 Mac.
Segmentation fault. Is there anything new to report here? I can
definitely try something out with guidance. But I'm not a programmer or
even a hacker.
The problem is that Firefox is currently not fully compatible with big-endian
systems like your PowerMac G5. There are supposedly patches which address these
issues, notably on Solaris SPARC.

However, I simply did not have the time yet to go through Oracle's patches [1]
one by one and verify which of these patches fix the segfault. However, the
backtrace of the segfault might give us an idea which of the patches fixes the
crash since symbols (e.g. function names) of the problematic code should show
both in the backtrace as well as any of the patches from Oracle.

Please keep in mind that I'm all doing this in my free time and I'm not getting
paid for anything, so I really have to balance the time I'm spending on various
issues.

Adrian
Post by Jan Montag
[1] https://github.com/oracle/solaris-userland/tree/master/components/desktop/firefox/patches
--
.''`. John Paul Adrian Glaubitz
: :' : Debian Developer
`. `' Physicist
`- GPG: 62FF 8A75 84E0 2956 9546 0006 7426 3B37 F5B5 F913
Jan Montag
2024-11-18 16:50:01 UTC
Reply
Permalink
Hello John,

thank you very much for your quick feedback. My question
was not intended as criticism, you shouldn't misunderstand that. But
since the topic was already a year old, I was interested to see if
there were any new findings. SeaLion is an exciting thing and it works.
Otherwise, the Powermac G5 is actually no longer the most up-to-date
computer, but I love working on it. Most of the Time in terminal apps.

Keep up the good work.

Simcerely,
Jan

Am Mon, 18 Nov 2024 16:39:10 +0100
Post by John Paul Adrian Glaubitz
Hi Jan,
Post by Jan Montag
since I just bought a Powermac G5 (powermac11.2) Dual 2 GHz, I'm
running Debian 12 SID on it. I also keep trying to compile or
install a current browser. Unfortunately this doesn't work for
reasons I don't understand. How has this progressed? The current
version of Firefox is 132.0.0.2 and still produces the memory
access error on my ppc64 Mac. Segmentation fault. Is there anything
new to report here? I can definitely try something out with
guidance. But I'm not a programmer or even a hacker.
The problem is that Firefox is currently not fully compatible with
big-endian systems like your PowerMac G5. There are supposedly
patches which address these issues, notably on Solaris SPARC.
However, I simply did not have the time yet to go through Oracle's
patches [1] one by one and verify which of these patches fix the
segfault. However, the backtrace of the segfault might give us an
idea which of the patches fixes the crash since symbols (e.g.
function names) of the problematic code should show both in the
backtrace as well as any of the patches from Oracle.
Please keep in mind that I'm all doing this in my free time and I'm
not getting paid for anything, so I really have to balance the time
I'm spending on various issues.
Adrian
Post by Jan Montag
[1] https://github.com/oracle/solaris-userland/tree/master/components/desktop/firefox/patches
Riccardo Mottola
2024-11-19 10:30:02 UTC
Reply
Permalink
Hi,
[1]https://github.com/oracle/solaris-userland/tree/master/components/desktop/firefox/patches
interesting set... I recognize one:

https://github.com/oracle/solaris-userland/blob/master/components/desktop/firefox/patches/firefox-53-sparc-gfx-atomicops.patch

I have applied this one in ArcticFox. It won't cause crashes, just bad
colors.

If you check discussion on bugzilla, it is one examples where "mozilla
hates big endian support". An older bug that upstream doesn't wan't
properly to fix. Don't fullu understand it, since apparently it is extra
done to support BE. I suppose there are swapping problems

Riccardo
Jan Montag
2024-11-30 08:40:01 UTC
Reply
Permalink
Hi Adrian,

I am with you,
I tried to apply the patches provided by solaris, I tried to compile but
on the Powermac itself it lasts three days to compile with the end of
did'nt successfully compiled. I do understand now the problem of not
having the time or not having the hardware or to be frustrated because
nothing works.

Meanwhile I tried to crosscompile that thing for powerpc64 on my macbook
pro m1 pro so it should go faster, but I always have problems with (I
think) big endian things.

Another option I thought could be to emulate a power8 system with a lot
of cores and to install also debian 12 ppc64 on this and compile there…

I also think about power consumption of the POwermac G5 when he compiles
3 days for nothing with both cores at 100%.

Til this day I never had success to compile Firefox successfully even once.

I know that even famous Rene Rebe is not able to compile because things
are broken.

Jan
Post by John Paul Adrian Glaubitz
Hi Jan,
[…]
The problem is that Firefox is currently not fully compatible with big-endian
systems like your PowerMac G5. There are supposedly patches which address these
issues, notably on Solaris SPARC.
However, I simply did not have the time yet to go through Oracle's patches [1]
one by one and verify which of these patches fix the segfault. However, the
backtrace of the segfault might give us an idea which of the patches fixes the
crash since symbols (e.g. function names) of the problematic code should show
both in the backtrace as well as any of the patches from Oracle.
Please keep in mind that I'm all doing this in my free time and I'm not getting
paid for anything, so I really have to balance the time I'm spending on various
issues.
Adrian
Post by Jan Montag
[1] https://github.com/oracle/solaris-userland/tree/master/components/desktop/firefox/patches
--
Herzlichst Jan Montag
via vintage computing
John Paul Adrian Glaubitz
2024-11-30 16:30:01 UTC
Reply
Permalink
Hi,
I don't recommend using an old PowerMac for building anything as big as
Firefox. Rather, I'd recommend either requesting an instance running
Debian ppc64 (big-endian) on the OpenPOWER platform [1] or getting an
account with the GCC Compile Farm [2].
Forgot the references:

- [1] https://osuosl.org/services/powerdev/
- [2] https://gcc.gnu.org/wiki/CompileFarm

Adrian
--
.''`. John Paul Adrian Glaubitz
: :' : Debian Developer
`. `' Physicist
`- GPG: 62FF 8A75 84E0 2956 9546 0006 7426 3B37 F5B5 F913
Ken Cunningham
2024-11-30 22:10:01 UTC
Reply
Permalink
If anyone goes through all the steps to get to the point where they could try building Firefox on one of these builders through to completion, and perhaps downloading it to their local machine for testing, I would very much appreciate a walkthrough of all the steps involved.

I realize I could sort it out, but doing these kinds of things always takes a lot of time to get organized, so if anyone cares to share the step-by-step process, it would be great.

Ken
Post by John Paul Adrian Glaubitz
Hi,
I don't recommend using an old PowerMac for building anything as big as
Firefox. Rather, I'd recommend either requesting an instance running
Debian ppc64 (big-endian) on the OpenPOWER platform [1] or getting an
account with the GCC Compile Farm [2].
- [1] https://osuosl.org/services/powerdev/
- [2] https://gcc.gnu.org/wiki/CompileFarm
Adrian
--
.''`. John Paul Adrian Glaubitz
: :' : Debian Developer
`. `' Physicist
`- GPG: 62FF 8A75 84E0 2956 9546 0006 7426 3B37 F5B5 F913
Jan Montag
2024-12-01 14:30:01 UTC
Reply
Permalink
Hi Ken
Post by Ken Cunningham
I realize I could sort it out, but doing these kinds of things always takes a lot of time to get organized, so if anyone cares to share the step-by-step process, it would be great.
I am really interested, too.
--
Herzlichst Jan Montag
via vintage computing
John Paul Adrian Glaubitz
2024-12-02 09:30:01 UTC
Reply
Permalink
Hello,
Post by Jan Montag
Post by Ken Cunningham
I realize I could sort it out, but doing these kinds of things always
takes a lot of time to get organized, so if anyone cares to share the
step-by-step process, it would be great.
I am really interested, too.
There isn't really any magic to it. Mozilla documents the build instructions
upstream:

- https://firefox-source-docs.mozilla.org/setup/linux_build.html

Also, take a look at Debian's build script for Firefox:

- https://salsa.debian.org/mozilla-team/firefox/-/blob/release/master/debian/rules?ref_type=heads

Or the one from openSUSE:

- https://build.opensuse.org/projects/mozilla:Factory/packages/MozillaFirefox/files/MozillaFirefox.spec?expand=1

Adrian
--
.''`. John Paul Adrian Glaubitz
: :' : Debian Developer
`. `' Physicist
`- GPG: 62FF 8A75 84E0 2956 9546 0006 7426 3B37 F5B5 F913
John Paul Adrian Glaubitz
2024-12-02 09:10:02 UTC
Reply
Permalink
Post by Ken Cunningham
If anyone goes through all the steps to get to the point where they could
try building Firefox on one of these builders through to completion, and
perhaps downloading it to their local machine for testing, I would very
much appreciate a walkthrough of all the steps involved.
Build instructions for Firefox can be found on the Firefox homepage:

- https://firefox-source-docs.mozilla.org/setup/linux_build.html

I can't really give you a course on how to use build environments though,
so you'd have to give it a try yourself and use some Google-fu or the help
of the mailing list when you get stuck.
Post by Ken Cunningham
I realize I could sort it out, but doing these kinds of things always takes
a lot of time to get organized, so if anyone cares to share the step-by-step
process, it would be great.
Not really. It's always a matter of installing the build dependencies and looking
up the upstream documentation or Debian's build scripts for the package in question
on how it's done.

Adrian
--
.''`. John Paul Adrian Glaubitz
: :' : Debian Developer
`. `' Physicist
`- GPG: 62FF 8A75 84E0 2956 9546 0006 7426 3B37 F5B5 F913
John Paul Adrian Glaubitz
2024-11-30 16:30:01 UTC
Reply
Permalink
Hi Jan,
Post by Jan Montag
I am with you,
I tried to apply the patches provided by solaris, I tried to compile but
on the Powermac itself it lasts three days to compile with the end of
did'nt successfully compiled. I do understand now the problem of not
having the time or not having the hardware or to be frustrated because
nothing works.
I don't recommend using an old PowerMac for building anything as big as
Firefox. Rather, I'd recommend either requesting an instance running
Debian ppc64 (big-endian) on the OpenPOWER platform [1] or getting an
account with the GCC Compile Farm [2].

Both are free for FOSS developers.
Post by Jan Montag
Meanwhile I tried to crosscompile that thing for powerpc64 on my macbook
pro m1 pro so it should go faster, but I always have problems with (I
think) big endian things.
I'd suggest making sure first that the code builds fine with the patches
applied. You can do that natively on x86_64 or M1.
Post by Jan Montag
Another option I thought could be to emulate a power8 system with a lot
of cores and to install also debian 12 ppc64 on this and compile there…
I don't recommend that, it's just too slow.
Post by Jan Montag
I also think about power consumption of the POwermac G5 when he compiles
3 days for nothing with both cores at 100%.
Yeah, not really recommend.
Post by Jan Montag
Til this day I never had success to compile Firefox successfully even once.
Firefox builds just fine on ppc64:

- https://buildd.debian.org/status/fetch.php?pkg=firefox&arch=ppc64&ver=133.0-1&stamp=1732700057&raw=0
Post by Jan Montag
I know that even famous Rene Rebe is not able to compile because things
are broken.
Again, it builds fine in Debian ;-).

Adrian
--
.''`. John Paul Adrian Glaubitz
: :' : Debian Developer
`. `' Physicist
`- GPG: 62FF 8A75 84E0 2956 9546 0006 7426 3B37 F5B5 F913
Jan Montag
2024-12-01 14:30:01 UTC
Reply
Permalink
Hi Adrian,

thank you very much for that clarification. I wanted to try to build it
on own hardware, I thought it might be a good idea because it's then
real-world.

I want to say that Rene Rebe also built Firefox but it doesnt run on T2
afaik.

Thank you for the links in the second post, I give them a try because it
sounds clever ^^

Thank you,
Jan
Post by John Paul Adrian Glaubitz
Hi Jan,
I don't recommend using an old PowerMac for building anything as big as
Firefox. Rather, I'd recommend either requesting an instance running
Debian ppc64 (big-endian) on the OpenPOWER platform [1] or getting an
account with the GCC Compile Farm [2].
Both are free for FOSS developers.
I'd suggest making sure first that the code builds fine with the patches
applied. You can do that natively on x86_64 or M1.
Post by Jan Montag
Another option I thought could be to emulate a power8 system with a lot
of cores and to install also debian 12 ppc64 on this and compile there…
I don't recommend that, it's just too slow.
Post by Jan Montag
I also think about power consumption of the POwermac G5 when he compiles
3 days for nothing with both cores at 100%.
--
Herzlichst Jan Montag
via vintage computing
Riccardo Mottola
2024-11-19 10:20:01 UTC
Reply
Permalink
Hi,
Post by Jan Montag
since I just bought a Powermac G5 (powermac11.2) Dual 2 GHz, I'm
running Debian 12 SID on it. I also keep trying to compile or install a
current browser. Unfortunately this doesn't work for reasons I don't
understand. How has this progressed? The current version of Firefox is
132.0.0.2 and still produces the memory access error on my ppc64 Mac.
Segmentation fault. Is there anything new to report here? I can
definitely try something out with guidance. But I'm not a programmer or
even a hacker.
Firefox is an uphill battle.. although it promises of course best
compatibility.

I wonder who the status of midori is.

Otherwise you need to go beyond Debian packages: ArcticFox, BrassMonkey,
SeaLion.

Riccardo
Lionel Élie Mamane
2024-11-19 13:40:01 UTC
Reply
Permalink
I also keep trying to compile or install a current
browser. Unfortunately this doesn't work for reasons I don't
understand. How has this progressed? The current version of Firefox
is 132.0.0.2 and still produces the memory access error on my ppc64
Mac.
FYI for Firefox on ppc64el there is these patches for Firefox
https://www.talospace.com/2024/11/updated-baseline-jit-openpower-patches.html
which do not make it work "completely" but make some progress.

"Probably" as John Paul Adrian Glaubitz wrote, big-endian will require
even more patches/work.
Johannes Brakensiek
2023-11-21 21:20:01 UTC
Reply
Permalink
Hi Adrian,

Am Dienstag, dem 21.11.2023 um 21:20 +0100 schrieb John Paul Adrian
Please test this build which include the image decoder big-endian fix
https://people.debian.org/~glaubitz/firefox-ppc64/test002/
Adrian
thanks for providing the binary. It still segfaults. Could you provide
debug symbols as well, please? I'd send a backtrace.

Johannes
k***@tuta.io
2023-11-22 09:20:01 UTC
Reply
Permalink
Hi,
I caught this today thru gdb and Firefox 120.0-1 on my dual G5:

Thread 1 "firefox" received signal SIGSEGV, Segmentation fault.
i32_load8_u (addr=2016478208, mem=<optimized out>) at rlbox.wasm.c:146
146 rlbox.wasm.c: No such file or directory.

Regards,
Kris
--
Wysyłano z Tuta, ciesz się bezpiecznymi i wolnymi od reklam wiadomościami e-mail:
https://tuta.com
Hi!
Post by Johannes Brakensiek
Am Dienstag, dem 21.11.2023 um 21:20 +0100 schrieb John Paul Adrian
Please test this build which include the image decoder big-endian fix
https://people.debian.org/~glaubitz/firefox-ppc64/test002/
Adrian
thanks for providing the binary. It still segfaults. Could you provide
debug symbols as well, please? I'd send a backtrace.
Here you go: https://box.fu-berlin.de/s/RAPxkDspfHBzG48
I am starting to fear that we're seeing a new bug here on ppc64 for which
there is no patch yet.
FWIW, if we manage to fix Firefox on ppc64, I do actually have some sort of
commit access for Firefox to get patches landed.
Adrian
--
.''`. John Paul Adrian Glaubitz
: :' : Debian Developer
`. `' Physicist
`- GPG: 62FF 8A75 84E0 2956 9546 0006 7426 3B37 F5B5 F913
Johannes Brakensiek
2023-11-23 08:10:01 UTC
Reply
Permalink
Hi,

Am Mittwoch, dem 22.11.2023 um 10:18 +0100 schrieb
Post by Ken Cunningham
Thread 1 "firefox" received signal SIGSEGV, Segmentation fault.
i32_load8_u (addr=2016478208, mem=<optimized out>) at
rlbox.wasm.c:146
146 rlbox.wasm.c: No such file or directory.
I did not retest it yet. But if that's still the issue, it's the same I
reported on 23-09-11 to this list for the regular ports package.
Crashdump was attached.

Johannes
Johannes Brakensiek
2023-11-23 08:10:01 UTC
Reply
Permalink
Am Donnerstag, dem 23.11.2023 um 09:01 +0100 schrieb Johannes
Post by Johannes Brakensiek
Crashdump was attached.
Backtrace, to be more precise.

Johannes
k***@tuta.io
2023-11-23 22:50:01 UTC
Reply
Permalink
Deeper debugging is beyond my skills. I don't know if this helps but the "bt" command gave me this:
(gdb) bt
#0  i32_load8_u (addr=2016478208, mem=<optimized out>) at rlbox.wasm.c:146
#1  w2c_rlbox_streqci (var_p0=***@entry=262000, var_p1=2016478208, instance=<optimized out>) at rlbox.wasm.c:1499
#2  0x00007fffe91969a8 in w2c_rlbox_getEncodingIndex (var_p0=<optimized out>, instance=<optimized out>) at rlbox.wasm.c:66968
#3  w2c_rlbox_getEncodingIndex (var_p0=262000, instance=0x7fffcaf62000) at rlbox.wasm.c:1415
#4  w2c_rlbox_MOZ_XmlInitEncodingNS_0 (instance=0x7fffcaf62000, var_p0=445988, var_p1=445984, var_p2=262000) at rlbox.wasm.c:3041
#5  0x00007fffe91e3d1c in w2c_rlbox_initializeEncoding (instance=***@entry=0x7fffcaf62000, var_p0=***@entry=445840) at rlbox.wasm.c:48995
#6  0x00007fffe92a8468 in w2c_rlbox_prologInitProcessor (instance=0x7fffcaf62000, var_p0=445840, var_p1=453024, var_p2=518560, var_p3=262140) at rlbox.wasm.c:46003
#7  0x00007fffe92b9144 in w2c_rlbox_MOZ_XML_Parse_0 (var_p3=0, var_p2=65536, var_p1=453024, var_p0=445840, instance=0x7fffcaf62000) at rlbox.wasm.c:50018
#8  w2c_rlbox_MOZ_XML_Parse (instance=0x7fffcaf62000, var_p0=445840, var_p1=453024, var_p2=65536, var_p3=0) at rlbox.wasm.c:21307
#9  0x00007fffea016ab0 in rlbox::rlbox_wasm2c_sandbox::impl_invoke_with_func_ptr<XML_Status (XML_ParserStruct*, char const*, int, int), XML_Status (unsigned int, unsigned int, int, int), unsigned int, unsigned int, unsigned int, bool>(XML_Status (*)(unsigned int, unsigned int, int, int), unsigned int&&, unsigned int&&, unsigned int&&, bool&&) (func_ptr=<optimized out>, this=0x7fffcaf62000) at ./build-browser/dist/include/mozilla/rlbox/rlbox_wasm2c_sandbox.hpp:763
#10 rlbox::rlbox_sandbox<rlbox::rlbox_wasm2c_sandbox>::INTERNAL_invoke_with_func_ptr<XML_Status (XML_ParserStruct*, char const*, int, int), rlbox::tainted<XML_ParserStruct*, rlbox::rlbox_wasm2c_sandbox>&, rlbox::tainted<char const*, rlbox::rlbox_wasm2c_sandbox>, unsigned long, bool>(char const*, void*, rlbox::tainted<XML_ParserStruct*, rlbox::rlbox_wasm2c_sandbox>&, rlbox::tainted<char const*, rlbox::rlbox_wasm2c_sandbox>&&, unsigned long&&, bool&&) (func_name=<optimized out>, 
    func_ptr=<optimized out>, this=<optimized out>) at ./build-browser/dist/include/mozilla/rlbox/rlbox_sandbox.hpp:790
#11 nsExpatDriver::ParseChunk (this=0x7fffdaee1d80, aBuffer=<optimized out>, aLength=***@entry=32768, aIsFinal=***@entry=nsExpatDriver::ChunkOrBufferIsFinal::FinalChunk, aConsumed=0x7fffffffc58c, aLastLineLength=0x7fffffffc590)
    at ./parser/htmlparser/nsExpatDriver.cpp:1248
#12 0x00007fffea016ebc in nsExpatDriver::ChunkAndParseBuffer (this=***@entry=0x7fffdaee1d80, 
    aBuffer=***@entry=0x7fffdfc80020 u"<?xml version=\"1.0\"?>\n\n<html id=\"main-window\"\n        xmlns:html=\"http://www.w3.org/1999/xhtml\"\n        xmlns:xul=\"http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul\"\n        xmlns=\"http://"..., aLength=***@entry=32768, aIsFinal=***@entry=false, aPassedToExpat=***@entry=0x7fffffffc588, aConsumed=***@entry=0x7fffffffc58c, aLastLineLength=***@entry=0x7fffffffc590)
    at ./parser/htmlparser/nsExpatDriver.cpp:1204
#13 0x00007fffea017300 in nsExpatDriver::ResumeParse (this=0x7fffdaee1d80, aScanner=..., aIsFinalChunk=***@entry=false) at ./parser/htmlparser/nsExpatDriver.cpp:1352
#14 0x00007fffea01db8c in nsParser::ResumeParse (this=***@entry=0x7fffcaa218d0, allowIteration=***@entry=true, aIsFinalChunk=***@entry=false, aCanInterrupt=***@entry=true) at ./parser/htmlparser/nsParser.cpp:715
#15 0x00007fffea01ea70 in nsParser::OnDataAvailable (sourceOffset=<optimized out>, aLength=<optimized out>, pIStream=<optimized out>, request=<optimized out>, this=0x7fffcaa218d0) at ./parser/htmlparser/nsParser.cpp:1027
#16 nsParser::OnDataAvailable (this=0x7fffcaa218d0, request=<optimized out>, pIStream=<optimized out>, sourceOffset=<optimized out>, aLength=<optimized out>) at ./parser/htmlparser/nsParser.cpp:978
#17 0x00007fffe9fdfec8 in .non-virtual thunk to mozilla::parser::PrototypeDocumentParser::OnDataAvailable(nsIRequest*, nsIInputStream*, unsigned long, unsigned int) () at ./parser/prototype/PrototypeDocumentParser.h:42
#18 0x00007fffe9f52f60 in nsDocumentOpenInfo::OnDataAvailable (this=<optimized out>, request=<optimized out>, inStr=<optimized out>, sourceOffset=<optimized out>, count=<optimized out>) at ./uriloader/base/nsURILoader.cpp:202
#19 0x00007fffe9c1d950 in mozilla::net::ParentChannelWrapper::OnDataAvailable (this=<optimized out>, aRequest=<optimized out>, aInputStream=<optimized out>, aOffset=<optimized out>, aCount=<optimized out>) at ./netwerk/ipc/ParentChannelWrapper.h:27
#20 0x00007fffe9ab8450 in mozilla::net::ParentChannelListener::OnDataAvailable (this=0x7fffdf550e80, aRequest=0x7ffff7654520, aInputStream=0x7ffff73d68c0, aOffset=0, aCount=<optimized out>) at ./netwerk/protocol/http/ParentChannelListener.cpp:115
#21 0x00007fffe9f52f60 in nsDocumentOpenInfo::OnDataAvailable (this=<optimized out>, request=<optimized out>, inStr=<optimized out>, sourceOffset=<optimized out>, count=<optimized out>) at ./uriloader/base/nsURILoader.cpp:202
#22 0x00007fffe9edf4e4 in nsJARChannel::OnDataAvailable (this=0x7ffff7654520, req=<optimized out>, stream=0x7ffff73d68c0, offset=0, count=290768) at ./modules/libjar/nsJARChannel.cpp:1312
#23 0x00007fffe958eb28 in nsInputStreamPump::OnStateTransfer (this=***@entry=0x7fffdaee2140) at ./netwerk/base/nsInputStreamPump.cpp:584
#24 0x00007fffe958f0b8 in nsInputStreamPump::OnInputStreamReady (this=0x7fffdaee2140, stream=<optimized out>) at ./netwerk/base/nsInputStreamPump.cpp:411
#25 0x00007fffe93782f4 in CallbackHolder::CallbackHolder(nsIAsyncInputStream*, nsIInputStreamCallback*, unsigned int, nsIEventTarget*)::{lambda()#1}::operator()() const (__closure=<optimized out>) at ./xpcom/io/nsPipe3.cpp:73
#26 NS_NewCancelableRunnableFunction<CallbackHolder::CallbackHolder(nsIAsyncInputStream*, nsIInputStreamCallback*, unsigned int, nsIEventTarget*)::{lambda()#1}>(char const*, CallbackHolder::CallbackHolder(nsIAsyncInputStream*, nsIInputStreamCallback*, unsigned int, nsIEventTarget*)::{lambda()#1}&&)::FuncCancelableRunnable::Run() (this=<optimized out>) at ./build-browser/dist/include/nsThreadUtils.h:667
#27 NS_NewCancelableRunnableFunction<CallbackHolder::CallbackHolder(nsIAsyncInputStream*, nsIInputStreamCallback*, unsigned int, nsIEventTarget*)::{lambda()#1}>(char const*, CallbackHolder::CallbackHolder(nsIAsyncInputStream*, nsIInputStreamCallback*, unsigned int, nsIEventTarget*)::{lambda()#1}&&)::FuncCancelableRunnable::Run() (this=<optimized out>) at ./build-browser/dist/include/nsThreadUtils.h:665
#28 0x00007fffe93d9610 in mozilla::RunnableTask::Run (this=0x7fffcaac8e80) at ./xpcom/threads/TaskController.cpp:549
#29 mozilla::TaskController::DoExecuteNextTaskOnlyMainThreadInternal (this=***@entry=0x7ffff4843000, aProofOfLock=...) at ./xpcom/threads/TaskController.cpp:876
#30 0x00007fffe93da324 in mozilla::TaskController::ExecuteNextTaskOnlyMainThreadInternal (this=***@entry=0x7ffff4843000, aProofOfLock=...) at ./xpcom/threads/TaskController.cpp:699
#31 0x00007fffe93da7f4 in mozilla::TaskController::ProcessPendingMTTask (aMayWait=false, this=0x7ffff4843000) at ./xpcom/threads/TaskController.cpp:485
#32 operator() (__closure=<optimized out>) at ./xpcom/threads/TaskController.cpp:211
#33 mozilla::detail::RunnableFunction<mozilla::TaskController::TaskController()::<lambda()> >::Run(void) (this=<optimized out>) at ./xpcom/threads/nsThreadUtils.h:548
#34 0x00007fffe93f365c in nsThread::ProcessNextEvent (this=0x7ffff76508c0, aMayWait=<optimized out>, aResult=0x7fffffffd247) at ./xpcom/threads/nsThread.cpp:1198
#35 0x00007fffe93f5614 in NS_ProcessNextEvent (aThread=<optimized out>, aMayWait=<optimized out>) at ./xpcom/threads/nsThreadUtils.cpp:480
#36 0x00007fffe9d6c2cc in mozilla::ipc::MessagePump::Run (this=0x7ffff73a7300, aDelegate=0x7ffff7393500) at ./ipc/glue/MessagePump.cpp:85
#37 0x00007fffe9d0b964 in MessageLoop::RunInternal (this=<optimized out>) at ./build-browser/dist/include/mozilla/RefPtr.h:319
#38 MessageLoop::RunHandler (this=<optimized out>) at ./ipc/chromium/src/base/message_loop.cc:363
#39 MessageLoop::Run (this=<optimized out>) at ./ipc/chromium/src/base/message_loop.cc:345
#40 0x00007fffecec36f8 in nsBaseAppShell::Run (this=0x7ffff76e6b80) at ./widget/nsBaseAppShell.cpp:148
#41 0x00007fffee334928 in nsAppStartup::Run (this=0x7fffe6160a60) at ./build-browser/dist/include/nsCOMPtr.h:751
#42 0x00007fffee47d244 in XREMain::XRE_mainRun (this=***@entry=0x7fffffffd828) at ./toolkit/xre/nsAppRunner.cpp:5675
#43 0x00007fffee47e0d8 in XREMain::XRE_main (this=***@entry=0x7fffffffd828, argc=***@entry=1, argv=***@entry=0x7ffffffff038, aConfig=...) at ./toolkit/xre/nsAppRunner.cpp:5884
#44 0x00007fffee47e91c in XRE_main (argc=1, argv=0x7ffffffff038, aConfig=...) at ./toolkit/xre/nsAppRunner.cpp:5940
#45 0x00007fffee4803fc in mozilla::BootstrapImpl::XRE_main (this=<optimized out>, argc=<optimized out>, argv=<optimized out>, aConfig=...) at ./toolkit/xre/Bootstrap.cpp:45
#46 0x00000001000092b0 in do_main (argc=<optimized out>, argv=<optimized out>, envp=***@entry=0x7ffffffff048) at ./browser/app/nsBrowserApp.cpp:227
#47 0x000000010000814c in main (argc=<optimized out>, argv=<optimized out>, envp=0x7ffffffff048) at ./browser/app/nsBrowserApp.cpp:445

Regards,
Kris
Post by Johannes Brakensiek
Am Donnerstag, dem 23.11.2023 um 09:01 +0100 schrieb Johannes
Post by Johannes Brakensiek
Crashdump was attached.
Backtrace, to be more precise.
Johannes
Ken Cunningham
2023-11-27 01:00:01 UTC
Reply
Permalink
Hi Adrian,

I’m getting stuck building firefox, and as you’re building it already, how do we get past this?

thanks,

Ken



I did this:

$ apt-get build-dep firefox
$ apt source firefox
$ apt install python-is-python3
$ cd firefox-120.0
$ dpkg-buildpackage -us -uc

but I keep getting this:

——

make[1]: Entering directory '/home/cunningh/firefox/firefox-120.0'
MOZ_OBJDIR=debian/objdir MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE=none PYTHONDONTWRITEBYTECODE=y python3 ./mach python python/mozbuild/mozbuild/preprocessor.py --marker % -Fsubstitution -DGRE_VERSION="120" -DPRODUCT_DOWNLOAD_NAME="firefox" -Dbrowser="firefox" -DBROWSER="FIREFOX" -DBrowser="Firefox" -DMOZ_APP_REMOTINGNAME="Firefox" -DUSE_SYSTEM_FFI="1" -DUSE_SYSTEM_LIBEVENT="1" -DUSE_SYSTEM_NSPR="1" -DUSE_SYSTEM_NSS="1" -DUSE_SYSTEM_VPX="1" -DUSE_SYSTEM_ZLIB="1" -DSHORT_SOURCE_CHANNEL="release" -DDIST="trixie" -DTRANSITION="" -DMOZ_FFVPX="" -DMOZ_ENABLE_VAAPI="" -DMOZ_ENABLE_V4L2="" -DCRASH_REPORTER="" -DDEB_HOST_ARCH="ppc64" debian/browser.mozconfig.in -o debian/firefox.mozconfig
MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE=none ./mach python --virtualenv build < /dev/null
Creating global state directory from environment variable: /home/cunningh/firefox/firefox-120.0/debian/.mozbuild
Creating global state directory from environment variable: /home/cunningh/firefox/firefox-120.0/debian/.mozbuild
Creating local state directory: /home/cunningh/firefox/firefox-120.0/debian/.mozbuild/srcdirs/firefox-120.0-576c6d4c4ec6
Site not up-to-date reason: "/home/cunningh/firefox/firefox-120.0/debian/.mozbuild/srcdirs/firefox-120.0-576c6d4c4ec6/_virtualenvs/common" does not exist
Site not up-to-date reason: "/home/cunningh/firefox/firefox-120.0/debian/.mozbuild/srcdirs/firefox-120.0-576c6d4c4ec6/_virtualenvs/common" does not exist
Traceback (most recent call last):
File "/home/cunningh/firefox/firefox-120.0/./mach", line 125, in <module>
main(sys.argv[1:])
File "/home/cunningh/firefox/firefox-120.0/./mach", line 117, in main
mach = check_and_get_mach(os.path.dirname(os.path.realpath(__file__)), args)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/cunningh/firefox/firefox-120.0/./mach", line 37, in check_and_get_mach
return load_mach(dir_path, mach_path, args)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/cunningh/firefox/firefox-120.0/./mach", line 23, in load_mach
return mach_initialize.initialize(dir_path, args)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/cunningh/firefox/firefox-120.0/build/mach_initialize.py", line 199, in initialize
command_site_manager.activate()
File "/home/cunningh/firefox/firefox-120.0/python/mach/mach/site.py", line 603, in activate
self.ensure()
File "/home/cunningh/firefox/firefox-120.0/python/mach/mach/site.py", line 575, in ensure
_create_venv_with_pthfile(
File "/home/cunningh/firefox/firefox-120.0/python/mach/mach/site.py", line 1277, in _create_venv_with_pthfile
os.makedirs(virtualenv_root)
File "<frozen os>", line 225, in makedirs
FileExistsError: [Errno 17] File exists: '/home/cunningh/firefox/firefox-120.0/debian/.mozbuild/srcdirs/firefox-120.0-576c6d4c4ec6/_virtualenvs/common'
make[1]: *** [debian/rules:228: stamps/virtualenv] Error 1
make[1]: *** Waiting for unfinished jobs....
make[1]: Leaving directory '/home/cunningh/firefox/firefox-120.0'
make: *** [debian/rules:343: build] Error 2
dpkg-buildpackage: error: debian/rules build subprocess returned exit status 2

-----------
Ken Cunningham
2023-11-21 13:50:01 UTC
Reply
Permalink
To be honest, I did run it under gdb, and ran the backtrace, but the backtrace was mostly uninterpretable without the debug symbols of course.

So somewhere in libxul was all I could offer.

I’ll see if adding the debug symbols narrows it down a bit.

Ken
Post by John Paul Adrian Glaubitz
Hello!
Post by Ken Cunningham
on my system I had another segfault, in libxul.
A more detailed backtrace would be useful. libxul is basically all of
Firefox, so referring to a crash in libxul is not saying much.
Post by Ken Cunningham
https://box.fu-berlin.de/s/oLNPG2EoPtyC8tb
and then run firefox from gdb.
Post by Ken Cunningham
hopefully others had more luck. sure be nice to get a current browser!
It would be nice if more people could step forward and help me resolve these
issues. Running gdb and testing patches isn't that difficult, for example,
and would help me a lot in the process in shaping Debian Ports architectures.
Adrian
--
.''`. John Paul Adrian Glaubitz
: :' : Debian Developer
`. `' Physicist
`- GPG: 62FF 8A75 84E0 2956 9546 0006 7426 3B37 F5B5 F913
Ken Cunningham
2023-11-21 16:00:02 UTC
Reply
Permalink
Trying to run firefox under gdb with the debug symbols installed appears to result in an out-of-memory situation on my DualG5 with 3.5GB ram, I’m afraid.

Perhaps someone else has a system with more memory, or set up better than mine, that could help.

Ken

-

$ gdb firefox
GNU gdb (Debian 13.2-1) 13.2
Copyright (C) 2023 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "powerpc64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<https://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.

For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from firefox...
Reading symbols from /usr/lib/debug/.build-id/4b/b6e1779513b3b7402680ba3c0652341bfc3155.debug...
(gdb) run
Starting program: /usr/bin/firefox
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/powerpc64-linux-gnu/libthread_db.so.1".
Killed
-


tail of dmesg:

[ 858.582364] [ 1641] 1000 1641 56530 44030 493568 9100 0 gdb
[ 858.582372] [ 1645] 1000 1645 3750 64 49152 192 0 firefox
[ 858.582379] oom-kill:constraint=CONSTRAINT_NONE,nodemask=(null),cpuset=/,mems_allowed=0,global_oom,task_memcg=/user.slice/user-1000.slice/session-2.scope,task=gdb,pid=1641,uid=1000
[ 858.582447] Out of memory: Killed process 1641 (gdb) total-vm:3617920kB, anon-rss:2817920kB, file-rss:0kB, shmem-rss:0kB, UID:1000 pgtables:482kB oom_score_adj:0
Ken Cunningham
2023-11-21 16:40:01 UTC
Reply
Permalink
I added an 8GB swapfile, and (slowly) got this backtrace:

# cat error.txt
Thread 1 "firefox" received signal SIGSEGV, Segmentation fault.
i32_load8_u (addr=2014643200, mem=<optimized out>) at rlbox.wasm.c:146
146 rlbox.wasm.c: No such file or directory.
(gdb) bt
#0 i32_load8_u (addr=2014643200, mem=<optimized out>) at rlbox.wasm.c:146
#1 w2c_rlbox_streqci
(var_p0=***@entry=262000, var_p1=2014643200, instance=<optimized out>)
at rlbox.wasm.c:774
#2 0x00007fffe9195c48 in w2c_rlbox_getEncodingIndex
(var_p0=<optimized out>, instance=<optimized out>) at rlbox.wasm.c:66243
#3 w2c_rlbox_getEncodingIndex (var_p0=262000, instance=0x7fffd992c000)
at rlbox.wasm.c:690
#4 w2c_rlbox_MOZ_XmlInitEncodingNS_0
(instance=0x7fffd992c000, var_p0=438820, var_p1=438816, var_p2=262000)
at rlbox.wasm.c:2316
#5 0x00007fffe91e305c in w2c_rlbox_initializeEncoding
(instance=***@entry=0x7fffd992c000, var_p0=***@entry=438672)
at rlbox.wasm.c:48270
#6 0x00007fffe92a77a8 in w2c_rlbox_prologInitProcessor
(instance=0x7fffd992c000, var_p0=438672, var_p1=445856, var_p2=511392, var_p3=262140) at rlbox.wasm.c:45278
#7 0x00007fffe92b82e4 in w2c_rlbox_MOZ_XML_Parse_0
(var_p3=0, var_p2=65536, var_p1=445856, var_p0=438672, instance=0x7fffd992c000) at rlbox.wasm.c:49293
#8 w2c_rlbox_MOZ_XML_Parse
(instance=0x7fffd992c000, var_p0=438672, var_p1=445856, var_p2=65536, var_p3=0) at rlbox.wasm.c:20709
--Type <RET> for more, q to quit, c to continue without paging--
#9 0x00007fffea00fd50 in rlbox::rlbox_wasm2c_sandbox::impl_invoke_with_func_ptr<XML_Status (XML_ParserStruct*, char const*, int, int), XML_Status (unsigned int, unsigned int, int, int), unsigned int, unsigned int, unsigned int, bool>(XML_Status (*)(unsigned int, unsigned int, int, int), unsigned int&&, unsigned int&&, unsigned int&&, bool&&) (func_ptr=<optimized out>, this=0x7fffd992c000)
at ./build-browser/dist/include/mozilla/rlbox/rlbox_wasm2c_sandbox.hpp:763
#10 rlbox::rlbox_sandbox<rlbox::rlbox_wasm2c_sandbox>::INTERNAL_invoke_with_func_ptr<XML_Status (XML_ParserStruct*, char const*, int, int), rlbox::tainted<XML_ParserStruct*, rlbox::rlbox_wasm2c_sandbox>&, rlbox::tainted<char const*, rlbox::rlbox_wasm2c_sandbox>, unsigned long, bool>(char const*, void*, rlbox::tainted<XML_ParserStruct*, rlbox::rlbox_wasm2c_sandbox>&, rlbox::tainted<char const*, rlbox::rlbox_wasm2c_sandbox>&&, unsigned long&&, bool&&) (func_name=<optimized out>, func_ptr=<optimized out>, this=<optimized out>)
at ./build-browser/dist/include/mozilla/rlbox/rlbox_sandbox.hpp:790
#11 nsExpatDriver::ParseChunk(char16_t const*, unsigned int, nsExpatDriver::ChunkOrBufferIsFinal, unsigned int*, unsigned long*)
(this=0x7ffff4856400, aBuffer=<optimized out>, aLength=***@entry=32768, aIsFinal=***@entry=nsExpatDriver::ChunkOrBufferIsFinal::FinalChunk, aConsumed=0x7fffffffc50c, aLastLineLength=0x7fffffffc510) at ./parser/htmlparser/nsExpatDriver.cpp:1248
#12 0x00007fffea01015c in nsExpatDriver::ChunkAndParseBuffer(char16_t const*, unsigned int, bool, unsigned int*, unsigned int*, unsigned long*)
(this=***@entry=0x7ffff4856400, aBuffer=***@entry=0x7fffd8f90020 u"<?xml version=\"1.0\"?>\n\n<!-- The \"global.css\" stylesheet is imported first to allow other stylesheets to\n override rules using selectors with the same specificity. This applies to\n both \"conten"..., aLength=***@entry=32768, aIsFinal=***@entry=false, aPassedToExpat=***@entry=0x7fffffffc508, aConsumed=***@entry=0x7fffffffc50c, aLastLineLength=***@entry=0x7fffffffc510) at ./parser/htmlparser/nsExpatDriver.cpp:1204
#13 0x00007fffea0105a0 in nsExpatDriver::ResumeParse(nsScanner&, bool)
(this=0x7ffff4856400, aScanner=..., aIsFinalChunk=***@entry=false) at ./parser/htmlparser/nsExpatDriver.cpp:1352
#14 0x00007fffea016e3c in nsParser::ResumeParse(bool, bool, bool)
(this=***@entry=0x7fffd99a2260, allowIteration=***@entry=true, aIsFinalChunk=***@entry=false, aCanInterrupt=***@entry=true) at ./parser/htmlparser/nsParser.cpp:715
#15 0x00007fffea017d20 in nsParser::OnDataAvailable(nsIRequest*, nsIInputStream*, unsigned long, unsigned int)
(sourceOffset=<optimized out>, aLength=<optimized out>, pIStream=<optimized out>, request=<optimized out>, this=0x7fffd99a2260)
at ./parser/htmlparser/nsParser.cpp:1027
#16 nsParser::OnDataAvailable(nsIRequest*, nsIInputStream*, unsigned long, unsigned int)
(this=0x7fffd99a2260, request=<optimized out>, pIStream=<optimized out>, sourceOffset=<optimized out>, aLength=<optimized out>)
at ./parser/htmlparser/nsParser.cpp:978
#17 0x00007fffe9fd90a8 in .non-virtual thunk to mozilla::parser::PrototypeDocumentParser::OnDataAvailable(nsIRequest*, nsIInputStream*, unsigned long, unsigned int) () at ./parser/prototype/PrototypeDocumentParser.h:42
#18 0x00007fffe9f4bf30 in nsDocumentOpenInfo::OnDataAvailable(nsIRequest*, nsIInputStream*, unsigned long, unsigned int)
--Type <RET> for more, q to quit, c to continue without paging--c
(this=<optimized out>, request=<optimized out>, inStr=<optimized out>, sourceOffset=<optimized out>, count=<optimized out>)
at ./uriloader/base/nsURILoader.cpp:202
#19 0x00007fffe9c18610 in mozilla::net::ParentChannelWrapper::OnDataAvailable(nsIRequest*, nsIInputStream*, unsigned long, unsigned int)
(this=<optimized out>, aRequest=<optimized out>, aInputStream=<optimized out>, aOffset=<optimized out>, aCount=<optimized out>)
at ./netwerk/ipc/ParentChannelWrapper.h:27
#20 0x00007fffe9ab4550 in mozilla::net::ParentChannelListener::OnDataAvailable(nsIRequest*, nsIInputStream*, unsigned long, unsigned int)
(this=0x7fffdfce9d00, aRequest=0x7ffff48b4dc0, aInputStream=0x7ffff73c93e0, aOffset=0, aCount=<optimized out>)
at ./netwerk/protocol/http/ParentChannelListener.cpp:115
#21 0x00007fffe9f4bf30 in nsDocumentOpenInfo::OnDataAvailable(nsIRequest*, nsIInputStream*, unsigned long, unsigned int)
(this=<optimized out>, request=<optimized out>, inStr=<optimized out>, sourceOffset=<optimized out>, count=<optimized out>)
at ./uriloader/base/nsURILoader.cpp:202
#22 0x00007fffe9ed83d4 in nsJARChannel::OnDataAvailable(nsIRequest*, nsIInputStream*, unsigned long, unsigned int)
(this=0x7ffff48b4dc0, req=<optimized out>, stream=0x7ffff73c93e0, offset=0, count=288947) at ./modules/libjar/nsJARChannel.cpp:1312
#23 0x00007fffe958f858 in nsInputStreamPump::OnStateTransfer() (this=***@entry=0x7ffff4852080) at ./netwerk/base/nsInputStreamPump.cpp:584
#24 0x00007fffe958fde8 in nsInputStreamPump::OnInputStreamReady(nsIAsyncInputStream*) (this=0x7ffff4852080, stream=<optimized out>)
at ./netwerk/base/nsInputStreamPump.cpp:411
#25 0x00007fffe9377314 in CallbackHolder::CallbackHolder(nsIAsyncInputStream*, nsIInputStreamCallback*, unsigned int, nsIEventTarget*)::{lambda()#1}::operator()() const (__closure=<optimized out>) at ./xpcom/io/nsPipe3.cpp:73
#26 NS_NewCancelableRunnableFunction<CallbackHolder::CallbackHolder(nsIAsyncInputStream*, nsIInputStreamCallback*, unsigned int, nsIEventTarget*)::{lambda()#1}>(char const*, CallbackHolder::CallbackHolder(nsIAsyncInputStream*, nsIInputStreamCallback*, unsigned int, nsIEventTarget*)::{lambda()#1}&&)::FuncCancelableRunnable::Run() (this=<optimized out>) at ./build-browser/dist/include/nsThreadUtils.h:667
#27 NS_NewCancelableRunnableFunction<CallbackHolder::CallbackHolder(nsIAsyncInputStream*, nsIInputStreamCallback*, unsigned int, nsIEventTarget*)::{lambda()#1}>(char const*, CallbackHolder::CallbackHolder(nsIAsyncInputStream*, nsIInputStreamCallback*, unsigned int, nsIEventTarget*)::{lambda()#1}&&)::FuncCancelableRunnable::Run() (this=<optimized out>) at ./build-browser/dist/include/nsThreadUtils.h:665
#28 0x00007fffe93d8440 in mozilla::RunnableTask::Run() (this=0x7fffe6925000) at ./xpcom/threads/TaskController.cpp:559
#29 mozilla::TaskController::DoExecuteNextTaskOnlyMainThreadInternal(mozilla::detail::BaseAutoLock<mozilla::Mutex&> const&)
(this=***@entry=0x7ffff4841a00, aProofOfLock=...) at ./xpcom/threads/TaskController.cpp:886
#30 0x00007fffe93d9144 in mozilla::TaskController::ExecuteNextTaskOnlyMainThreadInternal(mozilla::detail::BaseAutoLock<mozilla::Mutex&> const&) (this=***@entry=0x7ffff4841a00, aProofOfLock=...) at ./xpcom/threads/TaskController.cpp:709
#31 0x00007fffe93d9614 in mozilla::TaskController::ProcessPendingMTTask(bool) (aMayWait=false, this=0x7ffff4841a00)
at ./xpcom/threads/TaskController.cpp:495
#32 operator() (__closure=<optimized out>) at ./xpcom/threads/TaskController.cpp:218
#33 mozilla::detail::RunnableFunction<mozilla::TaskController::TaskController()::<lambda()> >::Run(void) (this=<optimized out>)
at ./xpcom/threads/nsThreadUtils.h:548
#34 0x00007fffe93f284c in nsThread::ProcessNextEvent(bool, bool*) (this=0x7ffff48b0300, aMayWait=<optimized out>, aResult=0x7fffffffd1b7)
at ./xpcom/threads/nsThread.cpp:1199
#35 0x00007fffe93f5954 in NS_ProcessNextEvent(nsIThread*, bool) (aThread=<optimized out>, aMayWait=<optimized out>)
at ./xpcom/threads/nsThreadUtils.cpp:480
#36 0x00007fffe9d6736c in mozilla::ipc::MessagePump::Run(base::MessagePump::Delegate*) (this=0x7fffe8554700, aDelegate=0x7ffff7381c80)
at ./ipc/glue/MessagePump.cpp:85
#37 0x00007fffe9d070e4 in MessageLoop::RunInternal() (this=<optimized out>) at ./build-browser/dist/include/mozilla/RefPtr.h:319
#38 MessageLoop::RunHandler() (this=<optimized out>) at ./ipc/chromium/src/base/message_loop.cc:363
#39 MessageLoop::Run() (this=<optimized out>) at ./ipc/chromium/src/base/message_loop.cc:345
#40 0x00007fffececdfa8 in nsBaseAppShell::Run() (this=0x7fffe85db780) at ./widget/nsBaseAppShell.cpp:148
#41 0x00007fffee34a918 in nsAppStartup::Run() (this=0x7fffe8584840) at ./build-browser/dist/include/nsCOMPtr.h:747
#42 0x00007fffee491114 in XREMain::XRE_mainRun() (this=***@entry=0x7fffffffd798) at ./toolkit/xre/nsAppRunner.cpp:5683
#43 0x00007fffee491fa8 in XREMain::XRE_main(int, char**, mozilla::BootstrapConfig const&)
(this=***@entry=0x7fffffffd798, argc=***@entry=1, argv=***@entry=0x7fffffffefa8, aConfig=...) at ./toolkit/xre/nsAppRunner.cpp:5884
#44 0x00007fffee4927ec in XRE_main(int, char**, mozilla::BootstrapConfig const&) (argc=1, argv=0x7fffffffefa8, aConfig=...)
at ./toolkit/xre/nsAppRunner.cpp:5940
#45 0x00007fffee4942cc in mozilla::BootstrapImpl::XRE_main(int, char**, mozilla::BootstrapConfig const&)
(this=<optimized out>, argc=<optimized out>, argv=<optimized out>, aConfig=<optimized out>) at ./toolkit/xre/Bootstrap.cpp:45
#46 0x00000001000092b0 in do_main(int, char**, char**) (argc=<optimized out>, argv=<optimized out>, envp=***@entry=0x7fffffffefb8)
at ./browser/app/nsBrowserApp.cpp:227
#47 0x000000010000814c in main(int, char**, char**) (argc=<optimized out>, argv=<optimized out>, envp=0x7fffffffefb8)
at ./browser/app/nsBrowserApp.cpp:445
(gdb)
Loading...