Re: [PATCH] kvm: user: include arch specific headers from $(KERNELDIR)

Mark McLoughlin
2009-05-14T07:52:35Z

On Wed, 2009-05-13 at 21:57 +0000, Arnd Bergmann wrote:
> On Wednesday 13 May 2009 08:32:21 Mark McLoughlin wrote:
> > Currently we only include $(KERNELDIR)/include in CFLAGS,
> > but we also have $(KERNELDIR)/arch/$(arch)/include or else
> > we'll get mis-matched headers.
> >
>
> I think this is fundamentally wrong. User files should never directly
> access kernel headers,

Just to be more clear on the use case for this patch - it's needed to
allow building kvmtrace against the copy of kvm kernel headers carried
in the qemu-kvm-0.10.4 release tarball.

> because they are postprocessed in various
> ways in order to get files that are valid in user space, e.g. __user
> annotations are removed.
>
> The three possible sources for kernel headers are:
>
> /usr/include
> - system provided headers, may be older than the running kernel
> /lib/modules/$(uname -r)/build/usr/include
> - user space headers for the currently running kernel
> $(KERNELDIR)/usr/include
> - user space headers from a configured kernel tree after 'make headers_install'

Cheers,
Mark.