On Wednesday 16 December 2015 00:42:35 Yury Norov wrote: > > #ifdef CONFIG_COMPAT > -#define COMPAT_ELF_HWCAP (compat_elf_hwcap) > -#define COMPAT_ELF_HWCAP2 (compat_elf_hwcap2) > extern unsigned int compat_elf_hwcap, compat_elf_hwcap2; > +#define COMPAT_ELF_HWCAP \ > + (is_a32_compat_task() \ > + ? compat_elf_hwcap \ > + : elf_hwcap) > + > +#define COMPAT_ELF_HWCAP2 \ > + (is_a32_compat_task() \ > + ? compat_elf_hwcap2 \ > + : 0) > + > #endif > >
I'm trying to understand how this is used. Are you compiling fs/compat_binfmt_elf.c twice to handle both 32-bit ELF types? Would it be easier to use a separate arch/arm64/kernel/binfmt_elf32.c as a copy of fs/compat_binfmt_elf.c, with all the right macros defined for ilp32 mode in there? Arnd -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/