I have finally narrowed this problem.
The key thing is the memory given to the virtual guest.
The problem seems to be in Ubuntu's kvm.
Please follow these instructions to reproduce: (might not be the shortest 
instructions to achieve the bug, sorry for that)

Hardware with intel CPU and at least 4GB physical memory
Host with ubuntu 8.04 64bit and Ubuntu's native KVM
Make guest HD image like this:
        dd if=/dev/zero of=vmhd.raw count=0 seek=200000000
Download ubuntu-8.04.2-desktop-amd64.iso from ubuntu website on the host
Configure bridge and tap0 interface, enslave tap0 to the bridge
First boot is like this:
        kvm -m 2000 -boot d -drive file=vmhd.raw,index=0,media=disk -cdrom 
ubuntu-8.04.2-desktop-amd64.iso -net nic,macaddr=52:54:00:94:91:31 -net 
tap,ifname=tap0,script=no
This will boot the VM with the ubuntu live CD
        open bash
                sudo su
                gparted
                        make two ext3 partitions: 1) one for /boot filesystem, 
1000MB aligned to cylinders, 2) another ext3 partition filling the rest of the 
disk for the / filesystem
                        format and exit
        doubleclick on the installer, follow the steps, manual partitioning, 
assign /boot and / filesystems to the partitions. Assign machine name, login, 
password etc. Install everything then shutdown the VM.

Now your test VM is installed. The next steps are:
Boot the VM with this line: (I suggest to boot the recovery mode ubuntu kernel 
or anyway remove the "quiet splash" so to see the messages)
        kvm -m 2000 -boot d -drive 
file=vmhd.raw,index=0,media=disk,if=virtio,boot=on -net 
nic,macaddr=52:54:00:94:91:31,model=virtio -net tap,ifname=tap0,script=no
Everything works, right?
Now reboot changing the memory amount (-m option), the results should be like 
this:
        -m <= 3590: everything works
        -m 3592<-->3690: kvm crashes at boot, error message: "kvm: Guest sent 
invalid pointer"
        -m >=3691: hangs at boot because it cant find disks vda1 and vda2. 
If you remove virtio from the disk commandline and leave it only on the 
network, it will boot if memory is higher than approx 4000 (I didn't 
investigate for the exact number, anyway it is higher than 3691) but once 
booted networking will not work, no ping, nothing.

kvm-83 compiled from source does not appear to have these problems.

-- 
Virtio not working in Hardy 64bit
https://bugs.launchpad.net/bugs/316861
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to