On Wed, 30 Jul 2025 at 01:42, Richard Henderson <richard.hender...@linaro.org> wrote: > > Move the workaround out of linux-user/elfload.c, so that > we don't have to replicate it in many places. Place it > immediately after the include of <signal.h>, which draws > in the relevant symbols. > > Signed-off-by: Richard Henderson <richard.hender...@linaro.org> > --- > include/qemu/osdep.h | 8 ++++++++ > linux-user/elfload.c | 7 ------- > 2 files changed, 8 insertions(+), 7 deletions(-) > > diff --git a/include/qemu/osdep.h b/include/qemu/osdep.h > index 96fe51bc39..be3460b32f 100644 > --- a/include/qemu/osdep.h > +++ b/include/qemu/osdep.h > @@ -133,6 +133,14 @@ QEMU_EXTERN_C int daemon(int, int); > #include <setjmp.h> > #include <signal.h> > > +/* > + * Avoid conflict with linux/arch/powerpc/include/uapi/asm/elf.h, included > + * from <asm/sigcontext.h>, but we might as well do this unconditionally. > + */ > +#undef ELF_CLASS > +#undef ELF_DATA > +#undef ELF_ARCH > +
This should allow us also to remove the hw/core/loader.c #ifdef ELF_CLASS #undef ELF_CLASS #endif (added in commit 3efa9a672e4a in 2009 with a commit message and other PPC related changes suggesting it was for the same ppc include problem). > -#ifdef _ARCH_PPC64 > -#undef ARCH_DLINFO > -#undef ELF_CLASS > -#undef ELF_DATA > -#undef ELF_ARCH > -#endif Your osdep.h change is missing ARCH_DLINFO -- did our uses of that symbol get renamed to something else in an earlier patch? thanks -- PMM