kvm-userspace build break (linux/types.h)

From: Hollis Blanchard
Date: Thu Feb 19 2009 - 16:50:31 EST


A recent kernel merge breaks kvm-userspace build:
make[1]: Entering directory `/root/hollisb/kvm-userspace.git/libkvm'
gcc -m64 -D__x86_64__ -MMD -MF ./.libkvm.d -g -fomit-frame-pointer -Wall -fno-stack-protector -I /root/hollisb/kvm-userspace.git/kernel/include -c -o libkvm.o libkvm.c
In file included from /usr/include/bits/fcntl.h:24,
from /usr/include/fcntl.h:34,
from libkvm.c:30:
/usr/include/sys/types.h:46: error: conflicting types for âloff_tâ
/usr/include/linux/types.h:30: error: previous declaration of âloff_tâ was here
/usr/include/sys/types.h:62: error: conflicting types for âdev_tâ
/usr/include/linux/types.h:13: error: previous declaration of âdev_tâ was here
[...]

I built like so:
./configure
make -C kernel LINUX=/path/to/kvm.git sync
make

The problem appears to be 00bfddaf7f68a6551319b536f052040c370756b0 and
cef3767852a9b1a7ff4a8dfe0969e2d32eb728df, both from Jaswinder Singh
Rajput <jaswinder@xxxxxxxxxxxxx>:
-#include <asm/types.h>
+#include <linux/types.h>

With these changes, libkvm.c ends up
including /usr/include/linux/types.h, instead of the
intended ../kernel/include/linux/types.h.

Avi, suggestions? More "make sync" hacks?

--
Hollis Blanchard
IBM Linux Technology Center

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/