Re: [PATCH V9 20/20] riscv: compat: Add COMPAT Kbuild skeletal support
From: Heiko Stübner <heiko@sntech.de>
Date: 2022-05-25 19:38:07
Also in:
linux-arch, linux-arm-kernel, linux-mips, linux-riscv, linux-s390, lkml, sparclinux
Am Mittwoch, 25. Mai 2022, 18:08:22 CEST schrieb Guo Ren:
Thx Heiko & Guenter, On Wed, May 25, 2022 at 7:10 PM Heiko Stübner [off-list ref] wrote:quoted
Am Mittwoch, 25. Mai 2022, 12:57:30 CEST schrieb Heiko Stübner:quoted
Am Mittwoch, 25. Mai 2022, 00:06:46 CEST schrieb Guenter Roeck:quoted
On Wed, May 25, 2022 at 01:46:38AM +0800, Guo Ren wrote: [ ... ]quoted
quoted
The problem is come from "__dls3's vdso decode part in musl's ldso/dynlink.c". The ehdr->e_phnum & ehdr->e_phentsize are wrong. I think the root cause is from musl's implementation with the wrong elf parser. I would fix that soon.Not elf parser, it's "aux vector just past environ[]". I think I could solve this, but anyone who could help dig in is welcome.I am not sure I understand what you are saying here. Point is that my root file system, generated with musl a year or so ago, crashes with your patch set applied. That is a regression, even if there is a bug in musl.Thx for the report, it's a valuable regression for riscv-compat.quoted
quoted
Also as I said in the other part of the thread, the rootfs seems innocent, as my completely-standard Debian riscv64 rootfs is also affected. The merged version seems to be v12 [0] - not sure how we this discussion ended up in v9, but I just tested this revision in two variants: - v5.17 + this v9 -> works nicelyI take that back ... now going back to that build I somehow also run into that issue here ... will investigate more.Yeah, it's my fault. I've fixed up it, please have a try: https://lore.kernel.org/linux-riscv/20220525160404.2930984-1-guoren@kernel.org/T/#u (local)
very cool that you found the issue. I've tested your patch and it seems to fix the issue for me. Thanks for figuring out the cause Heiko
quoted
quoted
- v5.18-rc6 + this v9 (rebased onto it) -> breaks the boot The only rebase-conflict was with the introduction of restartable sequences and removal of the tracehook include, but turning CONFIG_RSEQ off doesn't seem to affect the breakage. So it looks like something changed between 5.17 and 5.18 that causes the issue. Heiko [0] https://lore.kernel.org/all/20220405071314.3225832-1-guoren@kernel.org/ (local)