From mboxrd@z Thu Jan 1 00:00:00 1970 From: Hollis Blanchard Date: Wed, 30 Jan 2008 01:04:13 +0000 Subject: Re: [kvm-ppc-devel] [kvm-devel] [PATCH] Use Message-Id: <1201655053.5709.2.camel@basalt> List-Id: References: <6a2f4869cf5da00fa0cc.1201563754@basalt> <479FB535.5080302@redhat.com> In-Reply-To: <479FB535.5080302-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 8bit To: Chris Lalancette Cc: kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org, kvm-ppc-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org, Avi Kivity On Tue, 2008-01-29 at 18:22 -0500, Chris Lalancette wrote: > Hollis Blanchard wrote: > > diff --git a/include/linux/kvm_host.h b/include/linux/kvm_host.h > > --- a/include/linux/kvm_host.h > > +++ b/include/linux/kvm_host.h > > @@ -67,7 +67,9 @@ void kvm_io_bus_register_dev(struct kvm_ > > > > struct kvm_vcpu { > > struct kvm *kvm; > > +#ifdef CONFIG_PREEMPT_NOTIFIERS > > struct preempt_notifier preempt_notifier; > > +#endif > > int vcpu_id; > > struct mutex mutex; > > int cpu; > > Hm, this causes my build to fail on x86_64: > > make -C /lib/modules/2.6.23.8-63.fc8/build M=`pwd` "$@" > make[2]: Entering directory `/usr/src/kernels/2.6.23.8-63.fc8-x86_64' > LD /tmp/kvm-userspace/kernel/built-in.o > CC [M] /tmp/kvm-userspace/kernel/svm.o > CC [M] /tmp/kvm-userspace/kernel/vmx.o > CC [M] /tmp/kvm-userspace/kernel/vmx-debug.o > CC [M] /tmp/kvm-userspace/kernel/kvm_main.o > /tmp/kvm-userspace/kernel/kvm_main.c: In function ‘vcpu_load’: > /tmp/kvm-userspace/kernel/kvm_main.c:82: error: ‘struct kvm_vcpu’ has no member > named ‘preempt_notifier’ > /tmp/kvm-userspace/kernel/kvm_main.c: In function ‘vcpu_put’: > /tmp/kvm-userspace/kernel/kvm_main.c:91: error: ‘struct kvm_vcpu’ has no member > named ‘preempt_notifier’ > /tmp/kvm-userspace/kernel/kvm_main.c: In function ‘kvm_vm_ioctl_create_vcpu’: > /tmp/kvm-userspace/kernel/kvm_main.c:749: error: ‘struct kvm_vcpu’ has no member > named ‘preempt_notifier’ > /tmp/kvm-userspace/kernel/kvm_main.c: In function ‘preempt_notifier_to_vcpu’: > /tmp/kvm-userspace/kernel/kvm_main.c:1284: error: ‘struct kvm_vcpu’ has no > member named ‘preempt_notifier’ > /tmp/kvm-userspace/kernel/kvm_main.c:1284: warning: type defaults to ‘int’ in > declaration of ‘__mptr’ > /tmp/kvm-userspace/kernel/kvm_main.c:1284: warning: initialization from > incompatible pointer type > /tmp/kvm-userspace/kernel/kvm_main.c:1284: error: ‘struct kvm_vcpu’ has no > member named ‘preempt_notifier’ > make[3]: *** [/tmp/kvm-userspace/kernel/kvm_main.o] Error 1 > make[2]: *** [_module_/tmp/kvm-userspace/kernel] Error 2 > make[2]: Leaving directory `/usr/src/kernels/2.6.23.8-63.fc8-x86_64' > make[1]: *** [all] Error 2 > make[1]: Leaving directory `/tmp/kvm-userspace/kernel' > make: *** [kernel] Error 2 > > Reverting this patch makes the build succeed again. > > Chris Lalancette Actually, I think this should do the trick: Always use CONFIG_PREEMPT_NOTIFIERS in the external module hack. Signed-off-by: Hollis Blanchard diff --git a/kernel/hack-module.awk b/kernel/hack-module.awk --- a/kernel/hack-module.awk +++ b/kernel/hack-module.awk @@ -42,6 +42,8 @@ { sub(/linux\/mm_types\.h/, "linux/mm.h") } +/#ifdef CONFIG_PREEMPT_NOTIFIERS/ { $0 = "#if 1" } + { print } /kvm_x86_ops->run/ { -- Hollis Blanchard IBM Linux Technology Center ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ kvm-ppc-devel mailing list kvm-ppc-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-ppc-devel