On 2021/10/21 14:24, Song Gao wrote: > Hi, Xuerui > > On 10/18/2021 11:49 PM, WANG Xuerui wrote: >> Hi Song, >> >> On 10/18/21 20:47, Song Gao wrote: >>> Signed-off-by: Song Gao <gaos...@loongson.cn> >>> Signed-off-by: Xiaojuan Yang <yangxiaoj...@loongson.cn> >>> Reviewed-by: Richard Henderson <richard.hender...@linaro.org> >>> --- >>> scripts/qemu-binfmt-conf.sh | 6 +++++- >>> 1 file changed, 5 insertions(+), 1 deletion(-) >>> >>> diff --git a/scripts/qemu-binfmt-conf.sh b/scripts/qemu-binfmt-conf.sh >>> index 7de996d..5575bdd 100755 >>> --- a/scripts/qemu-binfmt-conf.sh >>> +++ b/scripts/qemu-binfmt-conf.sh >>> @@ -4,7 +4,7 @@ >>> qemu_target_list="i386 i486 alpha arm armeb sparc sparc32plus sparc64 \ >>> ppc ppc64 ppc64le m68k mips mipsel mipsn32 mipsn32el mips64 mips64el \ >>> sh4 sh4eb s390x aarch64 aarch64_be hppa riscv32 riscv64 xtensa xtensaeb \ >>> -microblaze microblazeel or1k x86_64 hexagon" >>> +microblaze microblazeel or1k x86_64 hexagon loongarch64" >>> >>> i386_magic='\x7fELF\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x03\x00' >>> >>> i386_mask='\xff\xff\xff\xff\xff\xfe\xfe\x00\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff' >>> @@ -140,6 +140,10 @@ >>> hexagon_magic='\x7fELF\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x >>> >>> hexagon_mask='\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff' >>> hexagon_family=hexagon >>> >>> +loongarch64_magic='\x7fELF\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x02\x01' >>> +loongarch64_mask='\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff' >> Here the EI_OSABI (7th, 0-based offset) byte is ignored which is okay (we >> want at least ELFOSABI_SYSV=0 and ELFOSABI_GNU=3 but not others, mask of >> this byte could be "\xfc" to exclude values > 3). >> > The EI_OSABI can not be modified. If we support FreeBSD and OpenBSD in the > future.
Then the respective changes would belong to a different place than here, i.e. "binfmt" which is IIRC Linux-only? We can't support running BSD binaries on top of Linux with user-only emulation AFAIK. But again, leaving this as-is should pose minimal risk. Even if we only accept 0~3 at binfmt_misc matching time, we would still let through 1 and 2, so that's not enough and wouldn't make any difference. So while I don't think you're right wrt the reason you stated, I'd still agree with not touching this EI_OSABI mask byte.