* [ANNOUNCE] kvm-70 release
@ 2008-06-17 3:14 Avi Kivity
2008-06-17 8:22 ` Marc Bevand
2008-06-17 12:07 ` Farkas Levente
0 siblings, 2 replies; 13+ messages in thread
From: Avi Kivity @ 2008-06-17 3:14 UTC (permalink / raw)
To: kvm
This release was cooking for far too long, and as a result there are
plenty of changes. Windows XP SMP performance is much improved for AMD
hosts or Intel hosts without FlexPriority (performance with FlexPriority
should already be very good). There are many smp and timekeeping fixes
included. mmio coalescing and async virtio-block should improve mmio
performance. SLES 10 is supported as host.
Have fun reading the changelog. There _will_ be a test.
Changes from kvm-69:
- improve virtio net performance (Anthony Liguori)
- enable pci slot identification for OS X (Alexander Graf)
- fix guest reset (Jan Kiszka)
- code cleanups (Jan Kiszka)
- fix userspace compilation on older kernels (Chris Wright)
- support running on 2.6.16 hosts (Andrea Arcangeli)
- including SLES 10
- generate mptable even for uniprocessor guests
- helps esx get further along
- fix corrupted breakpoints (Jerone Young)
- on_vcpu() mechanism to execute a function on a vcpu thread
- fix 'info registers' monitor command
- fix vcpu register access livelock when a vcpu is spinning
- fix stopping on debug events (Jan Kiszka)
- fix livelocks in guest debugger (Jan Kiszka)
- add mtrr support
- helps esx limp a bit more
- fix incorrect pmtimer overflow interrupt generation
- add 'push imm' instruction to testsuite
- fix on_vcpu() during guest debug (Jan Kiszka)
- document boot option for drive flag (Carlo Marcelo Arenas Belon)
- coalesced mmio support (Laurent Vivier)
- should speed up some workloads
- allow kprobes to coexist with preempt notifier emulation (Andrea
Arcangeli)
- allow virtio devices to reset themselves (Marcelo Tosatti)
- asynchronous virtio storage device (Marcelo Tosatti)
- should improve performance
- fix deadlock waiting for I/O completion
- merge qemu-svn
- remove dependency on gcc 3
- vnc client segfault fix
- fix vnc problems on resize
- qemu-nbd tool
- fix libkvm memory slot destruction api (Ben-Ami Yassour)
- enable tpr optimization for smp
- should drastically speed up Windows XP SMP guests
- big-endian kvmtrace support (Li Tan)
- remove unneeded variable (Glauber Costa)
- convert acpi tables to use the C preprocessor for less repetition
- external module compatibility for NMI (Alexander Graf)
- fix live migration with new on_vcpu() calls
- fix false flooding when a pte points to a page table
- improves 2.4 pae guests with CONFIG_HIGHPTE
- enable NMI support on Intel (Sheng Yang)
- fix zero extension during mmio on ia64 (Jes Sorensen)
- fix hypercall return value on AMD
- fixes running CONFIG_KVM_GUEST guests
- s390: use yield() instead of schedule() (Christian Borntraeger)
- s390: fix locking order problem (Christian Borntraeger)
- s390: handle machine checks while guest is running (Christian Borntraeger)
- s390: fix interrupt delivery (Carsen Otte)
- s390: send program check on access error (Carsen Otte)
- s390: fix race when idling (Carsen Otte)
- ppc: add lwzx/stwz instruction emulation (Hollis Blanchard)
- ppc: code cleanup (Hollis Blanchard)
- ppc: report bad gfns (Hollis Blanchard)
- optimize pio path slightly
- improve segment register ordering
- migrate pit timer on vcpu migration (Marcelo Tosatti)
- emulate jmp far instruction (Guillaume Thouvenin)
- emulate mov reg, imm instruction (Guillaume Thouvenin)
- emulate mov reg, sreg instruction (Guillaume Thouvenin)
- optimize mmu page prefetching
- emulate push imm instruction
- avoid mmu page prefetching on AMD
- allow VMware Server to take over vmx when unloading the module (Eli
Collins)
- avoid spinning during large guest teardown
- fix ioapic interrupt sharing (Marcelo Tosatti)
- fix crash on resume from suspend to ram (Andrea Arcangeli)
- fix race between timer migration and vcpu migration (Marcelo Tosatti)
- close timer injection race when entering guest mode (Marcelo Tosatti)
- fix reverse map corruption with large pages (Marcelo Tosatti)
- fix large page pte updates on non-pae guests (Marcelo Tosatti)
- avoid timer injection if timer already pending (Marcelo Tosatti)
- avoid linear rip calculation if not reporting (Glauber Costa)
- fix host oops on guest userspace access to guest page table
- improve emulation failure reporting
- emulate nop and xchg reg, acc (Mohammed Gamal)
- handle undecoded rex.b when r/m = 5
- simplify r/m and sib decoding
- simplify relative rip decoding
- avoid segment adjust for lea instruction
Notes:
If you use the modules bundled with kvm-70, you can use any version
of Linux from 2.6.17 upwards. You may also use kvm-70 userspace with
the kvm modules provided by Linux 2.6.22 or above. Some features may
only be available in newer releases.
http://kvm.qumranet.com
^ permalink raw reply [flat|nested] 13+ messages in thread* Re: [ANNOUNCE] kvm-70 release 2008-06-17 3:14 [ANNOUNCE] kvm-70 release Avi Kivity @ 2008-06-17 8:22 ` Marc Bevand 2008-06-18 14:16 ` Avi Kivity 2008-06-17 12:07 ` Farkas Levente 1 sibling, 1 reply; 13+ messages in thread From: Marc Bevand @ 2008-06-17 8:22 UTC (permalink / raw) To: kvm Avi Kivity <avi <at> qumranet.com> writes: > > This release was cooking for far too long, and as a result there are > plenty of changes. Excellent news ! Quick question: when will you merge the recent qemu-img.c changes (qemu svn rev 4672) ? -marc ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [ANNOUNCE] kvm-70 release 2008-06-17 8:22 ` Marc Bevand @ 2008-06-18 14:16 ` Avi Kivity 0 siblings, 0 replies; 13+ messages in thread From: Avi Kivity @ 2008-06-18 14:16 UTC (permalink / raw) To: Marc Bevand; +Cc: kvm Marc Bevand wrote: > Avi Kivity <avi <at> qumranet.com> writes: > >> This release was cooking for far too long, and as a result there are >> plenty of changes. >> > > Excellent news ! > > Quick question: when will you merge the recent qemu-img.c changes > (qemu svn rev 4672) ? > > I'll try to do this soon. -- I have a truly marvellous patch that fixes the bug which this signature is too narrow to contain. ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [ANNOUNCE] kvm-70 release 2008-06-17 3:14 [ANNOUNCE] kvm-70 release Avi Kivity 2008-06-17 8:22 ` Marc Bevand @ 2008-06-17 12:07 ` Farkas Levente 2008-06-18 14:15 ` Avi Kivity 2008-06-18 14:16 ` Farkas Levente 1 sibling, 2 replies; 13+ messages in thread From: Farkas Levente @ 2008-06-17 12:07 UTC (permalink / raw) To: Avi Kivity, kvm Avi Kivity wrote: > This release was cooking for far too long, and as a result there are > plenty of changes. Windows XP SMP performance is much improved for AMD > hosts or Intel hosts without FlexPriority (performance with FlexPriority > should already be very good). There are many smp and timekeeping fixes > included. mmio coalescing and async virtio-block should improve mmio > performance. SLES 10 is supported as host. on our centos-5 host we run our guests (as you suggested) with clocksource=acpi_pm does it still required with this release? -- Levente "Si vis pacem para bellum!" ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [ANNOUNCE] kvm-70 release 2008-06-17 12:07 ` Farkas Levente @ 2008-06-18 14:15 ` Avi Kivity 2008-06-18 14:16 ` Farkas Levente 1 sibling, 0 replies; 13+ messages in thread From: Avi Kivity @ 2008-06-18 14:15 UTC (permalink / raw) To: Farkas Levente; +Cc: kvm Farkas Levente wrote: > Avi Kivity wrote: >> This release was cooking for far too long, and as a result there are >> plenty of changes. Windows XP SMP performance is much improved for >> AMD hosts or Intel hosts without FlexPriority (performance with >> FlexPriority should already be very good). There are many smp and >> timekeeping fixes included. mmio coalescing and async virtio-block >> should improve mmio performance. SLES 10 is supported as host. > > on our centos-5 host we run our guests (as you suggested) with > clocksource=acpi_pm does it still required with this release? > I'd stick with acpi_pm, especially on AMD (which is what you're running on IIRC). -- I have a truly marvellous patch that fixes the bug which this signature is too narrow to contain. ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [ANNOUNCE] kvm-70 release 2008-06-17 12:07 ` Farkas Levente 2008-06-18 14:15 ` Avi Kivity @ 2008-06-18 14:16 ` Farkas Levente 2008-06-18 16:35 ` Charles Duffy 2008-06-20 17:55 ` Avi Kivity 1 sibling, 2 replies; 13+ messages in thread From: Farkas Levente @ 2008-06-18 14:16 UTC (permalink / raw) To: Avi Kivity, kvm Farkas Levente wrote: > Avi Kivity wrote: >> This release was cooking for far too long, and as a result there are >> plenty of changes. Windows XP SMP performance is much improved for >> AMD hosts or Intel hosts without FlexPriority (performance with >> FlexPriority should already be very good). There are many smp and >> timekeeping fixes included. mmio coalescing and async virtio-block >> should improve mmio performance. SLES 10 is supported as host. > > on our centos-5 host we run our guests (as you suggested) with > clocksource=acpi_pm does it still required with this release? > kvm-70 do not compile on centos-5 kernel-2.6.18-53.1.21.el5, there are 2 warning (which would be nice to fix anyway), but the real problems is here: -------------------------------------------------------------- WARNING: /home/robot/rpm/BUILD/kvm-kmod-70/_kmod_build_/kernel/kvm-intel.o - Section mismatch: reference to .init.text: from .text.fixup after '' (at offset 0x97) WARNING: "kallsyms_lookup_name" [/home/robot/rpm/BUILD/kvm-kmod-70/_kmod_build_/kernel/kvm.ko] undefined! -------------------------------------------------------------- this's the full buildlog: -------------------------------------------------------------- make KDIR=/usr/src/kernels/2.6.18-53.1.21.el5-x86_64 make -C /usr/src/kernels/2.6.18-53.1.21.el5-x86_64 M=`pwd` \ LINUXINCLUDE="-I`pwd`/include -Iinclude -I`pwd`/include-compat \ -include include/linux/autoconf.h \ -include `pwd`/external-module-compat.h" make[1]: Entering directory `/usr/src/kernels/2.6.18-53.1.21.el5-x86_64' LD /home/robot/rpm/BUILD/kvm-kmod-70/_kmod_build_/kernel/built-in.o CC [M] /home/robot/rpm/BUILD/kvm-kmod-70/_kmod_build_/kernel/svm.o CC [M] /home/robot/rpm/BUILD/kvm-kmod-70/_kmod_build_/kernel/external-module-compat.o CC [M] /home/robot/rpm/BUILD/kvm-kmod-70/_kmod_build_/kernel/vmx.o CC [M] /home/robot/rpm/BUILD/kvm-kmod-70/_kmod_build_/kernel/vmx-debug.o CC [M] /home/robot/rpm/BUILD/kvm-kmod-70/_kmod_build_/kernel/kvm_main.o CC [M] /home/robot/rpm/BUILD/kvm-kmod-70/_kmod_build_/kernel/x86.o CC [M] /home/robot/rpm/BUILD/kvm-kmod-70/_kmod_build_/kernel/mmu.o CC [M] /home/robot/rpm/BUILD/kvm-kmod-70/_kmod_build_/kernel/x86_emulate.o CC [M] /home/robot/rpm/BUILD/kvm-kmod-70/_kmod_build_/kernel/anon_inodes.o CC [M] /home/robot/rpm/BUILD/kvm-kmod-70/_kmod_build_/kernel/irq.o CC [M] /home/robot/rpm/BUILD/kvm-kmod-70/_kmod_build_/kernel/i8259.o CC [M] /home/robot/rpm/BUILD/kvm-kmod-70/_kmod_build_/kernel/lapic.o /home/robot/rpm/BUILD/kvm-kmod-70/_kmod_build_/kernel/lapic.c: In function 'kvm_create_lapic': /home/robot/rpm/BUILD/kvm-kmod-70/_kmod_build_/kernel/lapic.c:1020: warning: assignment from incompatible pointer type CC [M] /home/robot/rpm/BUILD/kvm-kmod-70/_kmod_build_/kernel/ioapic.o CC [M] /home/robot/rpm/BUILD/kvm-kmod-70/_kmod_build_/kernel/preempt.o CC [M] /home/robot/rpm/BUILD/kvm-kmod-70/_kmod_build_/kernel/i8254.o /home/robot/rpm/BUILD/kvm-kmod-70/_kmod_build_/kernel/i8254.c: In function 'create_pit_timer': /home/robot/rpm/BUILD/kvm-kmod-70/_kmod_build_/kernel/i8254.c:269: warning: assignment from incompatible pointer type CC [M] /home/robot/rpm/BUILD/kvm-kmod-70/_kmod_build_/kernel/coalesced_mmio.o LD [M] /home/robot/rpm/BUILD/kvm-kmod-70/_kmod_build_/kernel/kvm.o LD [M] /home/robot/rpm/BUILD/kvm-kmod-70/_kmod_build_/kernel/kvm-intel.o LD [M] /home/robot/rpm/BUILD/kvm-kmod-70/_kmod_build_/kernel/kvm-amd.o Building modules, stage 2. MODPOST WARNING: /home/robot/rpm/BUILD/kvm-kmod-70/_kmod_build_/kernel/kvm-intel.o - Section mismatch: reference to .init.text: from .text.fixup after '' (at offset 0x97) WARNING: "kallsyms_lookup_name" [/home/robot/rpm/BUILD/kvm-kmod-70/_kmod_build_/kernel/kvm.ko] undefined! CC /home/robot/rpm/BUILD/kvm-kmod-70/_kmod_build_/kernel/kvm-amd.mod.o LD [M] /home/robot/rpm/BUILD/kvm-kmod-70/_kmod_build_/kernel/kvm-amd.ko CC /home/robot/rpm/BUILD/kvm-kmod-70/_kmod_build_/kernel/kvm-intel.mod.o LD [M] /home/robot/rpm/BUILD/kvm-kmod-70/_kmod_build_/kernel/kvm-intel.ko CC /home/robot/rpm/BUILD/kvm-kmod-70/_kmod_build_/kernel/kvm.mod.o LD [M] /home/robot/rpm/BUILD/kvm-kmod-70/_kmod_build_/kernel/kvm.ko make[1]: Leaving directory `/usr/src/kernels/2.6.18-53.1.21.el5-x86_64' -------------------------------------------------------------- and of course if i try to install this module, then i got: -------------------------------------------------------------- kvm: Unknown symbol kallsyms_lookup_name kvm_intel: Unknown symbol kvm_clear_guest_page kvm_intel: Unknown symbol kvm_exit kvm_intel: Unknown symbol kvm_init kvm_intel: Unknown symbol kvm_enable_efer_bits kvm_intel: Unknown symbol kvm_timer_intr_post kvm_intel: Unknown symbol kvm_mmu_set_nonpresent_ptes kvm_intel: Unknown symbol gfn_to_page kvm_intel: Unknown symbol segment_base kvm_intel: Unknown symbol kvm_get_msr_common kvm_intel: Unknown symbol __kvm_set_memory_region kvm_intel: Unknown symbol kvm_vcpu_uninit kvm_intel: Unknown symbol kvm_emulate_halt kvm_intel: Unknown symbol kvm_set_apic_base kvm_intel: Unknown symbol kvm_lapic_find_highest_irr kvm_intel: Unknown symbol kvm_task_switch kvm_intel: Unknown symbol kvm_enable_tdp kvm_intel: Unknown symbol kvm_lmsw kvm_intel: Unknown symbol kvm_set_memory_region kvm_intel: Unknown symbol kvm_queue_exception kvm_intel: Unknown symbol emulate_instruction kvm_intel: Unknown symbol kvm_write_guest_page kvm_intel: Unknown symbol fx_init kvm_intel: Unknown symbol kvm_cpu_has_interrupt kvm_intel: Unknown symbol kvm_lapic_get_cr8 kvm_intel: Unknown symbol kvm_set_cr3 kvm_intel: Unknown symbol kvm_get_cr8 kvm_intel: Unknown symbol kvm_vcpu_cache kvm_intel: Unknown symbol kvm_emulate_hypercall kvm_intel: Unknown symbol load_pdptrs kvm_intel: Unknown symbol kvm_handle_fault_on_reboot kvm_intel: Unknown symbol kvm_set_cr4 kvm_intel: Unknown symbol kvm_set_cr0 kvm_intel: Unknown symbol kvm_set_cr8 kvm_intel: Unknown symbol kvm_lapic_enabled kvm_intel: Unknown symbol kvm_mmu_page_fault kvm_intel: Unknown symbol kvm_mmu_reset_context kvm_intel: Unknown symbol kvm_queue_exception_e kvm_intel: Unknown symbol kvm_emulate_cpuid kvm_intel: Unknown symbol kvm_vcpu_init kvm_intel: Unknown symbol gfn_to_hva kvm_intel: Unknown symbol kvm_set_msr_common kvm_intel: Unknown symbol kvm_mmu_set_base_ptes kvm_intel: Unknown symbol kvm_cpu_get_interrupt kvm_intel: Unknown symbol kvm_emulate_pio kvm_intel: Unknown symbol kvm_mmu_set_mask_ptes kvm_intel: Unknown symbol kvm_is_error_hva -------------------------------------------------------------- -- Levente "Si vis pacem para bellum!" ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [ANNOUNCE] kvm-70 release 2008-06-18 14:16 ` Farkas Levente @ 2008-06-18 16:35 ` Charles Duffy 2008-06-18 16:46 ` Andrea Arcangeli 2008-06-20 17:55 ` Avi Kivity 1 sibling, 1 reply; 13+ messages in thread From: Charles Duffy @ 2008-06-18 16:35 UTC (permalink / raw) To: kvm Farkas Levente wrote: > kvm-70 do not compile on centos-5 kernel-2.6.18-53.1.21.el5 Easy enough to work around, as kallsyms_lookup_name is only used in one place: diff -ru kvm-70/kernel/external-module-compat.h kvm-70.new/kernel/external-module-compat.h --- kvm-70/kernel/external-module-compat.h 2008-06-16 13:25:16.000000000 -0500 +++ kvm-70.new/kernel/external-module-compat.h 2008-06-17 12:03:23.000000000 -0500 @@ -663,7 +663,7 @@ const enum hrtimer_mode mode); extern int (*hrtimer_cancel_p)(struct hrtimer *timer); -#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,19) && defined(CONFIG_KALLSYMS) +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,19) && defined(CONFIG_KALLSYMS) && 0 static inline void hrtimer_kallsyms_resolve(void) { hrtimer_init_p = (void *) kallsyms_lookup_name("hrtimer_init"); ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [ANNOUNCE] kvm-70 release 2008-06-18 16:35 ` Charles Duffy @ 2008-06-18 16:46 ` Andrea Arcangeli 2008-06-18 16:50 ` Charles Duffy 2008-06-18 20:35 ` Farkas Levente 0 siblings, 2 replies; 13+ messages in thread From: Andrea Arcangeli @ 2008-06-18 16:46 UTC (permalink / raw) To: Charles Duffy; +Cc: kvm, Farkas Levente On Wed, Jun 18, 2008 at 11:35:58AM -0500, Charles Duffy wrote: > Farkas Levente wrote: >> kvm-70 do not compile on centos-5 kernel-2.6.18-53.1.21.el5 > > Easy enough to work around, as kallsyms_lookup_name is only used in one > place: > > diff -ru kvm-70/kernel/external-module-compat.h > kvm-70.new/kernel/external-module-compat.h > --- kvm-70/kernel/external-module-compat.h 2008-06-16 > 13:25:16.000000000 -0500 > +++ kvm-70.new/kernel/external-module-compat.h 2008-06-17 > 12:03:23.000000000 -0500 > @@ -663,7 +663,7 @@ > const enum hrtimer_mode mode); > extern int (*hrtimer_cancel_p)(struct hrtimer *timer); > > -#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,19) && > defined(CONFIG_KALLSYMS) > +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,19) && > defined(CONFIG_KALLSYMS) && 0 > static inline void hrtimer_kallsyms_resolve(void) > { > hrtimer_init_p = (void *) kallsyms_lookup_name("hrtimer_init"); Something's weird, if CONFIG_KALLSYMS isn't defined, the above code shouldn't be selected already. Perhaps I'm missing something. Farkas, can you send me /proc/config.gz by PM thanks! ^ permalink raw reply [flat|nested] 13+ messages in thread
* RE: [ANNOUNCE] kvm-70 release 2008-06-18 16:46 ` Andrea Arcangeli @ 2008-06-18 16:50 ` Charles Duffy 2008-06-18 17:14 ` Andrea Arcangeli 2008-06-18 20:35 ` Farkas Levente 1 sibling, 1 reply; 13+ messages in thread From: Charles Duffy @ 2008-06-18 16:50 UTC (permalink / raw) To: Andrea Arcangeli; +Cc: kvm, Farkas Levente CONFIG_KALLSYMS is indeed defined, but kallsyms_lookup_name doesn't appear to be exported in this kernel. ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [ANNOUNCE] kvm-70 release 2008-06-18 16:50 ` Charles Duffy @ 2008-06-18 17:14 ` Andrea Arcangeli 2008-06-18 20:40 ` Farkas Levente 0 siblings, 1 reply; 13+ messages in thread From: Andrea Arcangeli @ 2008-06-18 17:14 UTC (permalink / raw) To: Charles Duffy; +Cc: kvm, Farkas Levente, Avi Kivity On Wed, Jun 18, 2008 at 11:50:52AM -0500, Charles Duffy wrote: > CONFIG_KALLSYMS is indeed defined, but kallsyms_lookup_name doesn't > appear to be exported in this kernel. Ok I'm aware that kallsyms_lookup_name isn't exported in recent kernels, and when I implemented the patch I verified that the export was removed here: changeset: 38128:da689f9ecdd9 user: Ananth N Mavinakayanahalli <ananth@in.ibm.com> date: Mon Oct 02 21:57:16 2006 +0700 summary: [PATCH] Kprobes: Make kprobe modules more portable diff -r 025d3a916c7d -r da689f9ecdd9 kernel/kallsyms.c --- a/kernel/kallsyms.c Mon Oct 02 21:57:15 2006 +0700 +++ b/kernel/kallsyms.c Mon Oct 02 21:57:16 2006 +0700 @@ -154,7 +154,6 @@ unsigned long kallsyms_lookup_name(const } return module_kallsyms_lookup_name(name); } -EXPORT_SYMBOL_GPL(kallsyms_lookup_name); v2.6.19-rc3 40489:bed003f043c8 v2.6.19-rc2 39833:93988811847a v2.6.19-rc1 39283:faecb9cc26cd v2.6.18 34283:dc1d277d06e0 That's where the 2.6.19 number comes from. So 2.6.18 should still have it because it has changeset number 34283. So I guess RHEL was patched with v2.6.19-rc1 while keeping the name to 2.6.18. hrtimers were exported here: changeset: 27310:a671ca535b55 user: Stephen Hemminger <shemminger@osdl.org> date: Thu Jun 01 06:27:11 2006 +0700 summary: [PATCH] hrtimer: export symbols diff -r 85c4a996a332 -r a671ca535b55 kernel/hrtimer.c --- a/kernel/hrtimer.c Thu Jun 01 06:27:11 2006 +0700 +++ b/kernel/hrtimer.c Thu Jun 01 06:27:11 2006 +0700 @@ -456,6 +456,7 @@ hrtimer_start(struct hrtimer *timer, kti return ret; } +EXPORT_SYMBOL_GPL(hrtimer_start); /** * hrtimer_try_to_cancel - try to deactivate a timer [..] v2.6.17 27472:e3554576c29a v2.6.17-rc6 27401:d349717b8dc8 v2.6.17-rc5 27216:016512c08f6b v2.6.17-rc4 26901:c86d3036bd16 v2.6.17-rc3 26461:8a0c5ce16e31 v2.6.17-rc2 26210:cbfa59dad07d v2.6.17-rc1 25555:969a12bcc0a9 v2.6.16 21346:7d239c83edea So the hrtimer exports are available in 2.6.17 included. I was going strict on the kallsyms_lookup removal point, but it is effectively safer to go strict on the hrtimer export because distros will keep their version number backwards instead of forward. So to fix this we've only to apply this: Signed-off-by: Andrea Arcangeli <andrea@qumranet.com> diff --git a/kernel/external-module-compat.h b/kernel/external-module-compat.h index 08b8841..79b8373 100644 --- a/kernel/external-module-compat.h +++ b/kernel/external-module-compat.h @@ -663,7 +663,7 @@ extern int (*hrtimer_start_p)(struct hrtimer *timer, ktime_t tim, const enum hrtimer_mode mode); extern int (*hrtimer_cancel_p)(struct hrtimer *timer); -#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,19) && defined(CONFIG_KALLSYMS) +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,17) && defined(CONFIG_KALLSYMS) static inline void hrtimer_kallsyms_resolve(void) { hrtimer_init_p = (void *) kallsyms_lookup_name("hrtimer_init"); ^ permalink raw reply related [flat|nested] 13+ messages in thread
* Re: [ANNOUNCE] kvm-70 release 2008-06-18 17:14 ` Andrea Arcangeli @ 2008-06-18 20:40 ` Farkas Levente 0 siblings, 0 replies; 13+ messages in thread From: Farkas Levente @ 2008-06-18 20:40 UTC (permalink / raw) To: Andrea Arcangeli; +Cc: Charles Duffy, kvm, Avi Kivity Andrea Arcangeli wrote: > On Wed, Jun 18, 2008 at 11:50:52AM -0500, Charles Duffy wrote: >> CONFIG_KALLSYMS is indeed defined, but kallsyms_lookup_name doesn't >> appear to be exported in this kernel. > > Ok I'm aware that kallsyms_lookup_name isn't exported in recent > kernels, and when I implemented the patch I verified that the export > was removed here: fyi this the standard latest rhel/centos-5.1 kernel, so if you want to run kvm on these distros it'd be nice to fix:-) -- Levente "Si vis pacem para bellum!" ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [ANNOUNCE] kvm-70 release 2008-06-18 16:46 ` Andrea Arcangeli 2008-06-18 16:50 ` Charles Duffy @ 2008-06-18 20:35 ` Farkas Levente 1 sibling, 0 replies; 13+ messages in thread From: Farkas Levente @ 2008-06-18 20:35 UTC (permalink / raw) To: Andrea Arcangeli; +Cc: Charles Duffy, kvm [-- Attachment #1: Type: text/plain, Size: 1302 bytes --] Andrea Arcangeli wrote: > On Wed, Jun 18, 2008 at 11:35:58AM -0500, Charles Duffy wrote: >> Farkas Levente wrote: >>> kvm-70 do not compile on centos-5 kernel-2.6.18-53.1.21.el5 >> Easy enough to work around, as kallsyms_lookup_name is only used in one >> place: >> >> diff -ru kvm-70/kernel/external-module-compat.h >> kvm-70.new/kernel/external-module-compat.h >> --- kvm-70/kernel/external-module-compat.h 2008-06-16 >> 13:25:16.000000000 -0500 >> +++ kvm-70.new/kernel/external-module-compat.h 2008-06-17 >> 12:03:23.000000000 -0500 >> @@ -663,7 +663,7 @@ >> const enum hrtimer_mode mode); >> extern int (*hrtimer_cancel_p)(struct hrtimer *timer); >> >> -#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,19) && >> defined(CONFIG_KALLSYMS) >> +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,19) && >> defined(CONFIG_KALLSYMS) && 0 >> static inline void hrtimer_kallsyms_resolve(void) >> { >> hrtimer_init_p = (void *) kallsyms_lookup_name("hrtimer_init"); > > Something's weird, if CONFIG_KALLSYMS isn't defined, the above code > shouldn't be selected already. Perhaps I'm missing something. > > Farkas, can you send me /proc/config.gz by PM thanks! do you mean /boot/config*? -- Levente "Si vis pacem para bellum!" [-- Attachment #2: config-2.6.18-53.1.21.el5.bz2 --] [-- Type: application/x-bzip2, Size: 14865 bytes --] ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [ANNOUNCE] kvm-70 release 2008-06-18 14:16 ` Farkas Levente 2008-06-18 16:35 ` Charles Duffy @ 2008-06-20 17:55 ` Avi Kivity 1 sibling, 0 replies; 13+ messages in thread From: Avi Kivity @ 2008-06-20 17:55 UTC (permalink / raw) To: Farkas Levente; +Cc: kvm Farkas Levente wrote: > > kvm-70 do not compile on centos-5 kernel-2.6.18-53.1.21.el5, there are > 2 warning (which would be nice to fix anyway), but the real problems > is here: > -------------------------------------------------------------- > WARNING: > /home/robot/rpm/BUILD/kvm-kmod-70/_kmod_build_/kernel/kvm-intel.o - > Section mismatch: reference to .init.text: from .text.fixup after '' > (at offset 0x97) This one's harmless (though I'd like to remove it). > WARNING: "kallsyms_lookup_name" > [/home/robot/rpm/BUILD/kvm-kmod-70/_kmod_build_/kernel/kvm.ko] undefined! This is now fixed in kvm-userspace.git. -- I have a truly marvellous patch that fixes the bug which this signature is too narrow to contain. ^ permalink raw reply [flat|nested] 13+ messages in thread
end of thread, other threads:[~2008-06-20 17:55 UTC | newest] Thread overview: 13+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2008-06-17 3:14 [ANNOUNCE] kvm-70 release Avi Kivity 2008-06-17 8:22 ` Marc Bevand 2008-06-18 14:16 ` Avi Kivity 2008-06-17 12:07 ` Farkas Levente 2008-06-18 14:15 ` Avi Kivity 2008-06-18 14:16 ` Farkas Levente 2008-06-18 16:35 ` Charles Duffy 2008-06-18 16:46 ` Andrea Arcangeli 2008-06-18 16:50 ` Charles Duffy 2008-06-18 17:14 ` Andrea Arcangeli 2008-06-18 20:40 ` Farkas Levente 2008-06-18 20:35 ` Farkas Levente 2008-06-20 17:55 ` Avi Kivity
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox