On Dec 12, 2011, at 11:33 PM, Stefan Hajnoczi wrote: > On Mon, Dec 12, 2011 at 3:19 PM, takizo <paulooi at takizo.com> wrote: >> >> On Dec 12, 2011, at 11:08 PM, Stefan Hajnoczi wrote: >> >>> On Mon, Dec 12, 2011 at 2:50 PM, takizo <paulooi at takizo.com> wrote: >>>> >>>> On Dec 12, 2011, at 6:56 PM, Stefan Hajnoczi wrote: >>>> >>>>> On Sun, Dec 11, 2011 at 4:40 PM, takizo <paulooi at takizo.com> wrote: >>>>>> LC_ALL=C PATH=/sbin:/usr/sbin:/bin:/usr/bin QEMU_AUDIO_DRV=none /usr/libexec/qemu-kvm -S -M rhel6.1.0 -enable-kvm -m 4096 -smp 1,sockets=1,cores=1,threads=1 -name database -uuid f3e9f320-7826-7e50-94bb-1833f7fd9dfb -nodefconfig -nodefaults -chardev socket,id=charmonitor,path=/var/lib/libvirt/qemu/database.monitor,server,nowait -mon chardev=charmonitor,id=monitor,mode=control -rtc base=utc -no-reboot -drive file=/opt/cibai/database,if=none,id=drive-ide0-0-0,format=raw,cache=none,aio=threads -device ide-drive,bus=ide.0,unit=0,drive=drive-ide0-0-0,id=ide0-0-0,bootindex=2 -drive file=/opt/ISO-Download/FreeBSD-8.2-RELEASE-amd64-disc1.iso,if=none,media=cdrom,id=drive-ide0-1-0,readonly=on,format=raw,aio=threads -device ide-drive,bus=ide.1,unit=0,drive=drive-ide0-1-0,id=ide0-1-0,bootindex=1 -netdev tap,fd=22,id=hostnet0 -device e1000,netdev=hostnet0,id=net0,mac=52:54:00:77:a5:a6,bus=pci.0,addr=0x3 -chardev pty,id=charserial0 -device isa-serial,chardev=charserial0,id=serial0 -usb -vnc 127.0.0.1:2,password -vga cirrus -device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x4 >>>>>> char device redirected to /dev/pts/6 >>>>>> Using CPU model "cpu64-rhel6" >>>>>> >>>>>> block I/O error in device 'drive-ide0-0-0': Invalid argument (22) >>>>> >>>>> Is /opt/cibai/database on a special filesystem or exotic storage setup? >>>>> >>>>> Please check dmesg on the host for any kernel messages regarding I/O errors. >>>>> >>>>> Please try reading the file on the host to check whether the I/O error >>>>> is happening on the host and not related to KVM: >>>>> >>>>> $ dd if=/opt/cibai/database of=/dev/null iflag=direct >>>>> >>>>> Stefan >>>> >>>> Hi Stefan, >>>> >>>> When I quit the installation, further see the error messages >>>> >>>> ide_dma_cancel: aiocb still pendingide_dma_cancel: BM_STATUS_DMAING still pendingide_dma_cancel: aiocb still pendingide_dma_cancel: BM_STATUS_DMAING still pendingide_dma_cancel: aiocb still pendingide_dma_cancel: BM_STATUS_DMAING still pendingide_dma_cancel: aiocb still pendingide_dma_cancel: BM_STATUS_DMAING still pendingide_dma_cancel: aiocb still pendingide_dma_cancel: BM_STATUS_DMAING still pendingide_dma_cancel: aiocb still pendingide_dma_cancel: BM_STATUS_DMAING still pending2011-12-12 22:47:51.427: shutting down >>>> >> >> Hi Stefan >> >>> Okay, so if I understand correctly you have CentOS 6.1 host running >>> FreeBSD and CentOS guest installs to emulated IDE drives. You're >>> getting failed I/O requests with EINVAL (22). You have verified that >>> dd if=/opt/vm/database.img of=/dev/null iflag=direct reads the image >>> file without errors. >> >> That is right, both also emulated on IDE drive >> >>> >>> Can you please try the CentOS guest install with a virtio-blk drive >>> instead of IDE? This should show whether this problem is related to >>> IDE or a general issue in how QEMU accesses the host file. >> >> Took your advice installed Centos on VirtIO drive and it's ok. >> >> Does it means it's IDE problem on the OS itself? > > The physical drive in your machine is probably fine. QEMU emulates an > IDE controller and disks for the guest. It looks like there is a bug > in the IDE emulation code inside QEMU which leads to these errors. I suspect the problem might came from QEMU, because day before it was working before before I upgrade to latest QEMU. > > In general virtio-blk is the recommended storage interface because it > delivers better performance. I'm not up-to-speed on how stable the > FreeBSD virtio drivers are but I think they are available if you > search. Unfortunately I am running FreeBSD 8.2, it's not natively supported yet. I guess now interim solutions will be duplicate from some current running VM. > >> 2011-12-12 23:15:06.759: starting up >> LC_ALL=C PATH=/sbin:/usr/sbin:/bin:/usr/bin QEMU_AUDIO_DRV=none /usr/libexec/qemu-kvm -S -M rhel6.1.0 -enable-kvm -m 1024 -smp 1,sockets=1,cores=1,threads=1 -name centos -uuid 0752c74e-1d51-d529-f66f-8df9a28670ed -nodefconfig -nodefaults -chardev socket,id=charmonitor,path=/var/lib/libvirt/qemu/centos.monitor,server,nowait -mon chardev=charmonitor,id=monitor,mode=control -rtc base=utc -no-reboot -drive file=/opt/vm/centos.img,if=none,id=drive-virtio-disk0,format=raw,cache=none,aio=threads -device virtio-blk-pci,bus=pci.0,addr=0x4,drive=drive-virtio-disk0,id=virtio-disk0,bootindex=2 -drive file=/opt/ISO-Download/CentOS-6.0-x86_64-minimal.iso,if=none,media=cdrom,id=drive-ide0-1-0,readonly=on,format=raw,aio=threads -device ide-drive,bus=ide.1,unit=0,drive=drive-ide0-1-0,id=ide0-1-0,bootindex=1 -netdev tap,fd=22,id=hostnet0,vhost=on,vhostfd=26 -device virtio-net-pci,netdev=hostnet0,id=net0,mac=52:54:00:10:bc:5d,bus=pci.0,addr=0x3 -chardev pty,id=charserial0 -device isa-serial,chardev=charserial0,id=serial0 -usb -device usb-tablet,id=input0 -vnc 127.0.0.1:3,password -vga cirrus -device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x5 >> char device redirected to /dev/pts/9 >> Using CPU model "cpu64-rhel6" > > At this stage of debugging I would try enabling SystemTap probes in > QEMU related to block I/O. This produces a detailed log of what is > happening inside QEMU. > > strace -f -p $PID_OF_QEMU might also reveal how the I/O is failing. > > Finally, gdb could be of use. > > I'm not sure how familiar or easy it is for you to try these so let's > see if Kevin or someone else has other ideas before getting into the > nitty-gritty of finding out why you get EINVAL (22). I will see what I can grab and share in the list. Thanks Stefan > > Stefan