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

Re: Question on BIGGEST_ALIGNMENT in GCC on NetBSD/m68k





Le 16/06/2025 à 12:07, Geert Uytterhoeven a écrit :
Hi Laurent,

On Mon, 16 Jun 2025 at 11:16, Laurent Vivier <laurent@vivier.eu> wrote:
Le 16/06/2025 à 11:00, John Paul Adrian Glaubitz a écrit :
And there will be a problem with binfmt_misc because we can't rely on
the ELF signature to know which qemu-user to run, the one with 2byte
alignment or the one with 4byte alignment?
What about the ELF note [1] that David Brownlee suggested? Can these be used?

Adrian

[1]https://www.netbsd.org/docs/kernel/elf-notes.html

binfmt_misc doesn't use the sections to select the interpreter, but the
128 first bytes of the file.

I think you need to change the ABI type in the ELF header:
https://fr.wikipedia.org/wiki/Executable_and_Linkable_Format

Interesting....

Does any system actually use ABI (byte 7) = 3 (Linux)?
All of amd64/arm/arm64/ia64/i386/m68k/microblaze/mips(el)/powerpc/risvc/s390/sh/sparc
seem to use 0 (SYSV).

#define ELFOSABI_NONE   0
#define ELFOSABI_LINUX  3

Ah, parisc does. And C6x uses 0x40.


You're right. But to update the ELF header with the information we are using 4 bytes alignment perhaps we should use instead the e_flags entry?

It's architecture dependent and it seems used by MIPS (EF_MIPS_ABI2 ?)... so MIPS is OK, I think the problem is I don't use the correct binfmt_misc mask...

Thanks,
Laurent




Reply to: