On Sat, 2008-10-18 at 01:15 +0800, Sheng Yang wrote: 
> On Fri, Oct 17, 2008 at 10:08:48AM -0500, Carlo Marcelo Arenas Belon wrote:
> > On Sun, Oct 12, 2008 at 06:18:29PM +0000, Don Parsons wrote:
> > > 
> > > Trying to boot with kvm-77 gave a debugging hint, so here is
> > > what I get.  Does not look informative to me though.  This was
> > > typed from screen (Can copy paste work?):
> > > 
> > > Startup script:
> > > modprobe kvm-intel; sleep 1
> > > /usr/local/kvm/bin/qemu-system-x86_64 vdisk_fedora9.img -m 2048 -no-quit &
> > >         ====================
> > > [First boot:]
> > > 
> > > Booting 'Fedora (2.6.26.5-45.fc9.i686)'
> > > :
> > > Booting the kernel.
> > > ..MP-BIOS bug: 8254 timer not connected to IO-APIC
> > > Kernel panic - not syncing: IO-APIC + timer doesn't work!  Boot with
> > >   apic=debug and send a report.  Then try booting with the 'noapic'
> > >   option
> > >         ====================
> > 
> > this points to BOCHS BIOS bug, as a workaround you should be able to use the
> > bios.bin file from the old kvm-75 version instead.

I tried using the bios.bin from kvm-75 but it still fails.   Not
sure if extboot.bin might need matching bios.bin, so I copied it
over too.  But still fails.  I just checked, extboot.bin's are
identical so that was a no-op.

As another check I went back to a complete kvm-75 replacement
and found it now no longer works.  One or two weeks ago it did.

I also see that I only have
  vmlinuz-2.6.26.3-14.fc8
  vmlinuz-2.6.26.5-28.fc8  both with  CONFIG_KVM_GUEST=y
and no vmlinuz-2.6.25 

Does kvm-77 still have the CONFIG_KVM_GUEST=y  problem?  I suppose it
does, since changelog does not mention it.

I am now very confused.  It might be that I only verified that kvm-76
worked with kernel-2.6.25.14-69.fc8.x86_64 (which I no longer have).

I thought I verified kvm-75 with vmlinuz-2.6.26.5-28.fc8.x86_64 but
now I am no sure.  (My post got stuck waiting for Gmane autoauthorizer
in my ISP's spam filter until I found it today).


> Hi Carlo
> 
> Is that a BIOS bug filled/raised for this? It seems like IOAPIC didn't receive
> pit interrupt in time to me.
> 
> Don, so does it happen everytime? And please show your computer environment
> as well.

No, the boots are not consistent.  Since it has failed to boot, it has
always failed to boot.  The text printed to screen it not always the
same.  Last Sunday when I originally wrote first email, I tried more
boots and noticed one out of 4 had slightly different output.

Today one out of several boots (with kvm-75 bios) showed it getting
past above hangs, and trying to access disk but here it failed
saying non-existent file(s), so it could not proceed.

Also the "MP-BIOS bug: 8254 timer not connected to IO-APIC" only 
occurred that one time out of about 12 attempted boots.


I tried this patch from another thread
  http://article.gmane.org/gmane.comp.emulators.kvm.devel/23044

which for 2.6.26.6 becomes

--- arch/x86/kvm/mmu.c~ 2008-10-17 15:51:19.000000000 -0400
+++ arch/x86/kvm/mmu.c  2008-10-17 15:52:42.000000000 -0400
@@ -2106,6 +2106,7 @@
static int kvm_pv_mmu_flush_tlb(struct kvm_vcpu *vcpu)
{
        kvm_x86_ops->tlb_flush(vcpu);
+       set_bit(KVM_REQ_MMU_SYNC, &vcpu->requests);
        return 1;
}

but it fails to compile with:
  CC [M]  arch/x86/kvm/mmu.o
arch/x86/kvm/mmu.c: In function ‘kvm_pv_mmu_flush_tlb’:
arch/x86/kvm/mmu.c:2109: error: ‘KVM_REQ_MMU_SYNC’ undeclared (first use
in this function)
arch/x86/kvm/mmu.c:2109: error: (Each undeclared identifier is reported
only once
arch/x86/kvm/mmu.c:2109: error: for each function it appears in.)
make[1]: *** [arch/x86/kvm/mmu.o] Error 1
make: *** [arch/x86/kvm] Error 2

Apparently a 2.6.27 only patch.  Oops, no it is not.  I figured out
that the patch "path" actually refers to     ./arch/x86/mmu.c
in a kvm-77 tree.

With this patch above applied to kvm-77 release results in my Fedora 8
guest booting and running properly.  i.e., the patch:

--- kernel/x86/mmu.c~   2008-10-12 07:53:12.000000000 -0400
+++ kernel/x86/mmu.c    2008-10-17 17:47:46.000000000 -0400
@@ -2747,6 +2747,7 @@
 static int kvm_pv_mmu_flush_tlb(struct kvm_vcpu *vcpu)
 {
        kvm_x86_ops->tlb_flush(vcpu);
+       set_bit(KVM_REQ_MMU_SYNC, &vcpu->requests);
        return 1;
 }


So it appears that the SOLUTION for 2.6.26 or 2.6.27 is to apply above
patch or wait for kvm-78.tgz

Thanks to everyone who tried to help me.

Don


--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to