Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 13 Apr 2025 09:41:10 -0700
From:      Mark Millard <marklmi@yahoo.com>
To:        Andrew Haley <aph-open@littlepinkcloud.com>
Cc:        freebsd-arm@freebsd.org, marietto2008@gmail.com
Subject:   Re: Firefox crashes all the time on the RaspBerry Pi Zero 2W
Message-ID:  <357901C9-10F1-4041-9BB2-CFE3FF863A82@yahoo.com>
In-Reply-To: <e1daada1-e947-4398-9c74-efd1136e7d5c@littlepinkcloud.com>
References:  <CA%2B1FSig7cE2_qP2GvbjTV34rDqucto-w5o4Ymyou9fVQ21WO=g@mail.gmail.com> <492f6f91-9ce2-497f-9ac1-2c6c7315790b@FreeBSD.org> <e1daada1-e947-4398-9c74-efd1136e7d5c@littlepinkcloud.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Apr 13, 2025, at 04:20, Andrew Haley <aph-open@littlepinkcloud.com> =
wrote:

> On 13/04/2025 11:51, Ronald Klop wrote:
>> Op 29-03-2025 om 23:31 schreef Mario Marietto:
>>> Hello to everyone.
>>>=20
>>> I've installed FreeBSD 14.2 on my Raspberry Pi Zero 2W.
>>> The problem that I'm having is that Firefox crashes all the time. =
The errors that it gives are :
>>>=20
>> The warnings  Firefox is printing might be misleading. The most =
concrete thing it says is "Segmentation fault (core dumped)". So you =
could look up the core dump and use a debugger to check what is going =
on. As Firefox is a big piece of software this might not be trivial.
>=20
> Is this a 64-bit build?
>=20
> Some early revisions of the Cortex-A53 have an erratum (835769) =
whereby
> it is possible for a 64-bit multiply-accumulate instruction in
> AArch64 state to generate an incorrect result.  The details are quite
> complex and hard to determine statically, since branches in the code
> may exist in some circumstances, but all cases end with a memory
> (load, store, or prefetch) instruction followed immediately by the
> multiply-accumulate operation.
>=20
> Cortex-A53_MPCore_Software_Developers_Errata_Notice_21.pdf
> https://gcc.gnu.org/legacy-ml/gcc-patches/2014-10/msg00906.html
>=20
> To work on these computers, all software must be compiled with the
> -mfix-cortex-a53-835769 compiler option.
>=20
> We have seen this crash in the wild.
>=20

On a Zero 2 W? That was released in 2021-Oct. The RPi3B was
released in 2016-Feb. The errata with 835769 was published
in the 2014-Oct-08 ARM-EPM-048406 v14 document.

There is also 843419 from the 2015-Feb-20 ARM-EPM-048406 v16
document. And there are others.

Looking at what FreeBSD reports for the r0p? revision would
be relevant to what REVIDR register bits might report about
the status of such errata for a Cortex-A53.

r0p0:
REVIDR[0] 810919 CatB Clearing of the global exclusive monitor can fail =
to set the event register=20
REVIDR[1] 812869 CatA Instruction stream might be corrupted=20

r0p1:
REVIDR[2] 821523 CatA Hazarding snoop request might cause deadlock=20
REVIDR[6] 829070 CatA Speculative data reads might be performed to =
Device memory=20

r0p2:
REVIDR[2] 821523 CatA Hazarding snoop request might cause deadlock=20
REVIDR[4] 823273 CatA Rare Load or store which fails condition code =
check might cause data corruption
REVIDR[5] 823819 CatB A snoop request to a core coincident with =
retention entry might cause deadlock
REVIDR[6] 829070 CatA Speculative data reads might be performed to =
Device memory
REVIDR[7] 835769 CatA AArch64 multiply-accumulate instruction might =
produce incorrect result

r0p3:
REVIDR[6] 829070 CatA Speculative data reads might be performed to =
Device memory=20
REVIDR[7] 835769 CatA AArch64 multiply-accumulate instruction might =
produce incorrect result=20

r0p4:
REVIDR[7] 835769 CatA AArch64 multiply-accumulate instruction might =
produce incorrect result=20
REVIDR[8] 843419 CatA A load or store might access an incorrect address
REVIDR[9] 859374 CatC AArch64 memory streaming performance might be =
lower than expected when using a 64KB translation granule

Does anything report the Cortex-A53 REVIDR value as well?


=3D=3D=3D
Mark Millard
marklmi at yahoo.com




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?357901C9-10F1-4041-9BB2-CFE3FF863A82>