On 06/29/2009 06:18 PM, Walther Maldonado wrote:
Good day,
Today when attempting to compile and install the KVM module (kernel 2.6.30), inserting the module would error with a number of unresolved symbols such as preempt_notifier_register() not found.
Some code-browsing revealed that, even though the kvm KConfig setting "KVM" does select PREEMPT_NOTIFIERS, in include/linux/preempt.h, said define will not cause the expected functions to be defined unless CONFIG_PREEMPT is also selected.
Not in my copy of v2.6.30. preempt.h only guards the preempt notifier
symbols with CONFIG_PREEMPT_NOTIFIER.
I built sched.o with CONFIG_PREEMPT_NONE=y and see:
[avi@cleopatra linux-2.6 (v2.6.30)]$ nm kernel/sched.o | grep
preempt_notifier
00000000c559bf4c A __crc_preempt_notifier_register
000000008be61cbb A __crc_preempt_notifier_unregister
0000000000000028 r __kcrctab_preempt_notifier_register
0000000000000020 r __kcrctab_preempt_notifier_unregister
0000000000000232 r __kstrtab_preempt_notifier_register
0000000000000216 r __kstrtab_preempt_notifier_unregister
0000000000000050 r __ksymtab_preempt_notifier_register
0000000000000040 r __ksymtab_preempt_notifier_unregister
0000000000000c77 T preempt_notifier_register
0000000000000caf T preempt_notifier_unregister
Perhaps you have a stale kernel installed? Try reinstalling the kernel
and modules and rebooting.
--
error compiling committee.c: too many arguments to function
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html