NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: lib/58154: aarch64: firefox-124.0.2 crashes very frequently on NetBSD/aarch64 10.0, likely related to thread-local storage



> Date: Mon, 1 Jul 2024 17:55:27 +0200
> From: Tobias Nygren <tnn%NetBSD.org@localhost>
> 
> On Tue, 14 May 2024 12:05:01 +0000 (UTC)
> PHO <pho%cielonegro.org@localhost> wrote:
> 
> >  https://github.com/NetBSD/src/commit/e50ac3613df8e5365faebd39e0d7983f31446204
> >  https://github.com/NetBSD/src/commit/ee895c8f3880c6542c1c7db4c7f77235cfac88d1
> >  https://github.com/NetBSD/src/commit/b00640999a436897bc5be86efac4943056d255a6
> >  
> >  Can anybody review these? The second one is the bugfix. With these 
> >  patches Firefox completely stopped crashing even without my workaround.
> 
> These patches also stop kicad from segfaulting.
> I think we should commit them, with a netbsd-10 pullup.
> Changes look good to me.

The changes look good to me, but do you have an example that will at
least exercise the branch?  I.e., a program that exercises the case
tlsdesc->td_tlsindex > DTV_MAX_INDEX(dtv)?

I would like to commit an automatic test so that, even if it doesn't
deterministically crash while we have the bug, we keep the code path
exercised in-tree.


The first commit
https://github.com/NetBSD/src/commit/e50ac3613df8e5365faebd39e0d7983f31446204
is fine without any tests, go ahead and commit that now.

The third commit
https://github.com/NetBSD/src/commit/b00640999a436897bc5be86efac4943056d255a6
sounds fine, but is there a reference for the interpretation of the
DTV_MAX_INDEX quantity?  Like a page number that you can cite in the
Drepper ELF TLS doc https://akkadia.org/drepper/tls.pdf?  If so, can
you add a citation as a comment here?


Home | Main Index | Thread Index | Old Index