|
Message-ID: <ZPk+nanF21x/14nA@voyager>
Date: Thu, 7 Sep 2023 05:08:13 +0200
From: Markus Wichmann <nullplan@....net>
To: musl@...ts.openwall.com
Subject: Re: aarch64 sigsetjmp relocation truncation bug, maybe
Am Wed, Sep 06, 2023 at 08:46:32PM -0400 schrieb Peter Williams:
> If I'm understanding correctly, the complaint is that a branch in
> sigsetjmp that invokes setjmp is too far away from the definition of
> setjmp. My very handwavey idea is that maybe for some reason my program
> is causing the linker to want to locate setjmp() and sigsetjmp() really
> far away from each other. If that's right, perhaps it would be possible
> to modify the assembler code to be able to handle such a situation?
I'm guessing the same. Pretty much all architectures have shorter
conditional than unconditional branches. That is why branches to other
files (technically to other sections) should always be unconditional. I
am attaching a simple patch that should help with the situation.
Ciao,
Markus
View attachment "0001-Make-branch-to-external-symbol-unconditional.patch" of type "text/x-diff" (933 bytes)
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.