On Wed, 27 May 2026 at 16:42, Richard Henderson
<[email protected]> wrote:
>
> On 5/25/26 16:03, Helge Deller wrote:
> > From: Helge Deller <[email protected]>
> >
> > Static built ARM binaries for Cortex-m55 may have been linked to have
> > their load address at address 0.
>
> This is a problem.  We also use 0 for "unassigned" a-la ET_DYN.
>
> Perhaps ideally we'd pass around a separate flag for ET_EXEC vs ET_DYN, but 
> ET_EXEC with 0
> is not a valid binary precisely because it attempts to map at the zero page.
>
> Honestly, I think this is user error.  While we support some m-profile 
> binaries in
> linux-user mode which the Linux kernel does not, for the explicit benefit of 
> the GCC
> testsuite, there are limits.

But if the user explicitly passes a guest-base address on their
QEMU command line, we run the binary happily. If we refused
to run the binary at all that would be one thing (and not
unreasonable, as you say). But it does seem to me like a
problem in our "pick a guest-base" logic that we fail to
identify one that would work fine for this particular binary.

thanks
-- PMM

Reply via email to