On Mon, Jan 19, 2009 at 5:23 PM, Avi Kivity <avi@xxxxxxxxxx> wrote:
Sam Ravnborg wrote:
Ok. Don't know why I thought unifdef was supplied with the fullThey are. This bits advertise to userspace what features kvm supports,This is wrong...
both compile- and run-time.
The headers does not change with the kernel configuration and advertising
the
kvm features via a .h file like this is simply plain broken.
configuration.
You cannot assume that the header files are generated with the exact sameThis is just for arch specific defines. I'll move these to asm/kvm.h.
config
as used by the running kernel.
And userspace has in no way access to the CONFIG_ namespace which isWe did, we ship a hacked-up kvm.h (generated by unifdef) with our userspace.
purely kernel-internal.
I cannot see how you have ever seen kcm advertise that for example
KVM_CAP_USER_NMI
equals to 22 because CONFIG_X86 is never (supposed to be) defined in
userspace -
except if you did so yourself by some means.
latest -tip is still giving 'make headers_check' warnings:
usr/include/linux/kvm.h:61: leaks CONFIG_X86 to userspace where it is not valid
usr/include/linux/kvm.h:64: leaks CONFIG_X86 to userspace where it is not valid
usr/include/linux/kvm.h:387: leaks CONFIG_X86 to userspace where it
is not valid
usr/include/linux/kvm.h:391: leaks CONFIG_X86 to userspace where it
is not valid
usr/include/linux/kvm.h:396: leaks CONFIG_X86 to userspace where it
is not valid
So should I resend my patch or you are going to move this stuff