Thread (76 messages) 76 messages, 8 authors, 2014-07-22
STALE4450d

Revision v7 of 7 in this series.

Revisions (7)
  1. v7 [diff vs current]
  2. v7 [diff vs current]
  3. v7 current
  4. v7 [diff vs current]
  5. v7 [diff vs current]
  6. v7 [diff vs current]
  7. v11 [diff vs current]

[PATCH v7 0/9] ARM: VDSO

From: Russell King - ARM Linux <hidden>
Date: 2014-06-28 09:42:19

On Fri, Jun 27, 2014 at 12:01:12PM -0500, Nathan Lynch wrote:
Since removing -lgcc from the link (one of the changes from v6 to v7), I
believe the VDSO is not asking more of the toolchain or build
environment than the rest of the kernel does.  I have definitely built
it without a target libc.  Apart from the host program's use of
too-recent ELF constants (now fixed), I would appreciate help
identifying any remaining sources of fragility.
There's still something wrong:

fs/binfmt_elf.c: In function 'create_elf_tables':
fs/binfmt_elf.c:231:35: error: 'AT_SYSINFO_EHDR' undeclared (first use in this function)
fs/binfmt_elf.c:231:35: note: each undeclared identifier is reported only once for each function it appears in

The problem is the fscking generated includes.  This is going to be a
right pain - Arnd, is there anything which can be done about this?

What's happening is if you try and rebuild a kernel with these patches
applied, you already have an arch/arm/include/generated/asm/auxvec.h
which points at the empty asm-generic version.  This remains after
these patches are applied, so the new include of asm/auxvec.h in
asm/elf.h picks up on the empty version, not the newly introduced
version.

So, the way to get this to build with the minimum of disruption is to
first manually remove arch/arm/include/generated/asm/auxvec.h in the
build tree before running make.

This isn't a vdso problem - it's a kbuild problem, one obviously caused
by not thinking through properly the implications of generating include
files and how to deal with changes in the future like this very scenario.
I think I'd rather get rid of this generated include crap and instead
have explicit include files instead in the kernel tree - that way we
/know/ what the situation is at all times, and make has the proper idea
about the dependencies at all times.

-- 
FTTC broadband for 0.8mile line: now at 9.7Mbps down 460kbps up... slowly
improving, and getting towards what was expected from it.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help