On Thu, Jul 21, 2016 at 07:52:43PM -0400, Paul Gortmaker wrote: > A new i386-allmodconfig fail showed up relating to VDSO: > > I tried to reproduce it locally with x86-64 build host and could > not, so I wonder if it is a missing HOSTCC vs. CC since next > coverage is power host... > > VDSO2C arch/x86/entry/vdso/vdso-image-32.c > Error: input is not a shared object > make[4]: *** [arch/x86/entry/vdso/vdso-image-32.c] Error 1 > make[3]: *** [arch/x86/entry/vdso] Error 2 > make[2]: *** [arch/x86/entry] Error 2 This is caused by building on a BE (better-endian) host. See patch. Segher === >From 7f098efa4d184ab1216c6cf8214c44a3abe50a14 Mon Sep 17 00:00:00 2001 Message-Id: <7f098efa4d184ab1216c6cf8214c44a3abe50a14.1475177310.git.segher@xxxxxxxxxxxxxxxxxxx> From: Segher Boessenkool <segher@xxxxxxxxxxxxxxxxxxx> Date: Thu, 29 Sep 2016 11:51:00 +0000 Subject: [PATCH] x86: Fix building on BE We need to call GET_LE to read hdr->e_type. Signed-off-by: Segher Boessenkool <segher@xxxxxxxxxxxxxxxxxxx> --- arch/x86/entry/vdso/vdso2c.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/x86/entry/vdso/vdso2c.h b/arch/x86/entry/vdso/vdso2c.h index 4f74119..3dab75f 100644 --- a/arch/x86/entry/vdso/vdso2c.h +++ b/arch/x86/entry/vdso/vdso2c.h @@ -22,7 +22,7 @@ static void BITSFUNC(go)(void *raw_addr, size_t raw_len, ELF(Phdr) *pt = (ELF(Phdr) *)(raw_addr + GET_LE(&hdr->e_phoff)); - if (hdr->e_type != ET_DYN) + if (GET_LE(&hdr->e_type) != ET_DYN) fail("input is not a shared object\n"); /* Walk the segment table. */ -- 1.9.3 -- To unsubscribe from this list: send the line "unsubscribe linux-next" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html