kvm.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Can't make virtio block driver work on Windows 2003
@ 2009-10-14 17:52 Asdo
  2009-10-15  5:14 ` Vadim Rozenfeld
  2009-10-15  9:29 ` Martin Maurer
  0 siblings, 2 replies; 8+ messages in thread
From: Asdo @ 2009-10-14 17:52 UTC (permalink / raw)
  To: kvm

Hi all
I have a new installation of Windows 2003 SBS server 32bit which I 
installed using IDE disk.
KVM version is QEMU PC emulator version 0.10.50 (qemu-kvm-devel-86) 
compiled by myself on kernel 2.6.28-11-server.

I have already moved networking from e1000 to virtio (e1000 was 
performing very sluggishly btw, probably was losing many packets, virtio 
seems to work)

Now I want to move the disk to virtio...

This is complex so I thought that first I wanted to see virtio installed 
and working on another drive.
So I tried adding another drive, a virtio one, (a new 100MB file at host 
side) to the virtual machine and rebooting.

A first problem is that Windows does not detect the new device upon boot 
or Add Hardware scan.

Here is the kvm commandline (it's complex because it comes from libvirt):

/usr/local/kvm/bin/qemu-system-x86_64 -S -M pc -m 4096-smp 4 -name 
winserv2 -uuid xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx -monitor pty -boot c 
-drive 
file=/virtual_machines/kvm/nfsimport/winserv2.raw,if=ide,index=0,boot=on 
-drive file=/virtual_machines/kvm/nfsimport/zerofile,if=virtio,index=1 
-net nic,macaddr=xx:xx:xx:xx:xx:xx,vlan=0,model=virtio -net 
tap,fd=25,vlan=0 -serial none -parallel none -usb -vnc 127.0.0.1:4

Even if Windows couldn't detect the new device I tried to install the 
driver anyway. On Add Hardware I go through to --> SCSI and RAID 
controllers --> Have Disk .. and point it to the location of viostor 
files (windows 2003 x86) downloaded from:

  http://www.linux-kvm.org/page/WindowsGuestDrivers/Download_Drivers
  http://people.redhat.com/~yvugenfi/24.09.2009/viostor.zip

Windows does install the driver, however at the end it says:

  The software for this device is now installed, but may not work 
correctly.
  This device cannot start. (Code 10)

and the new device gets flagged with a yellow exclamation mark in Device 
Manager.

I don't know if it's the same reason as before, that the device is not 
detected so the driver cannot work, or another reason.

Any idea?

Thanks for your help

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: Can't make virtio block driver work on Windows 2003
  2009-10-14 17:52 Can't make virtio block driver work on Windows 2003 Asdo
@ 2009-10-15  5:14 ` Vadim Rozenfeld
  2009-10-15 11:42   ` Asdo
  2009-10-15  9:29 ` Martin Maurer
  1 sibling, 1 reply; 8+ messages in thread
From: Vadim Rozenfeld @ 2009-10-15  5:14 UTC (permalink / raw)
  To: Asdo; +Cc: kvm

On 10/14/2009 07:52 PM, Asdo wrote:
> Hi all
> I have a new installation of Windows 2003 SBS server 32bit which I 
> installed using IDE disk.
> KVM version is QEMU PC emulator version 0.10.50 (qemu-kvm-devel-86) 
> compiled by myself on kernel 2.6.28-11-server.
>
> I have already moved networking from e1000 to virtio (e1000 was 
> performing very sluggishly btw, probably was losing many packets, 
> virtio seems to work)
>
> Now I want to move the disk to virtio...
>
> This is complex so I thought that first I wanted to see virtio 
> installed and working on another drive.
> So I tried adding another drive, a virtio one, (a new 100MB file at 
> host side) to the virtual machine and rebooting.
>
> A first problem is that Windows does not detect the new device upon 
> boot or Add Hardware scan.
Check PCI devices with "info pci". You must have "SCSI controller: PCI 
device 1af4:1001" device reported.
>
> Here is the kvm commandline (it's complex because it comes from libvirt):
>
> /usr/local/kvm/bin/qemu-system-x86_64 -S -M pc -m 4096-smp 4 -name 
> winserv2 -uuid xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx -monitor pty -boot 
> c -drive 
> file=/virtual_machines/kvm/nfsimport/winserv2.raw,if=ide,index=0,boot=on 
> -drive file=/virtual_machines/kvm/nfsimport/zerofile,if=virtio,index=1 
> -net nic,macaddr=xx:xx:xx:xx:xx:xx,vlan=0,model=virtio -net 
> tap,fd=25,vlan=0 -serial none -parallel none -usb -vnc 127.0.0.1:4
>
> Even if Windows couldn't detect the new device I tried to install the 
> driver anyway. On Add Hardware I go through to --> SCSI and RAID 
> controllers --> Have Disk .. and point it to the location of viostor 
> files (windows 2003 x86) downloaded from:
>
>  http://www.linux-kvm.org/page/WindowsGuestDrivers/Download_Drivers
>  http://people.redhat.com/~yvugenfi/24.09.2009/viostor.zip
>
> Windows does install the driver, however at the end it says:
>
>  The software for this device is now installed, but may not work 
> correctly.
>  This device cannot start. (Code 10)
>
> and the new device gets flagged with a yellow exclamation mark in 
> Device Manager.
>
> I don't know if it's the same reason as before, that the device is not 
> detected so the driver cannot work, or another reason.
Yes, it must be the same problem. Code 10 means that device driver was 
not able to find or initialize hardware.
Regards,
Vadim
>
> Any idea?
>
> Thanks for your help
> -- 
> To unsubscribe from this list: send the line "unsubscribe kvm" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html


^ permalink raw reply	[flat|nested] 8+ messages in thread

* RE: Can't make virtio block driver work on Windows 2003
  2009-10-14 17:52 Can't make virtio block driver work on Windows 2003 Asdo
  2009-10-15  5:14 ` Vadim Rozenfeld
@ 2009-10-15  9:29 ` Martin Maurer
  1 sibling, 0 replies; 8+ messages in thread
From: Martin Maurer @ 2009-10-15  9:29 UTC (permalink / raw)
  To: kvm@vger.kernel.org

Maybe you can find some useful hints in this thread:
http://www.proxmox.com/forum/showthread.php?t=1990

Best Regards,

Martin

> -----Original Message-----
> From: kvm-owner@vger.kernel.org [mailto:kvm-owner@vger.kernel.org] On
> Behalf Of Asdo
> Sent: Mittwoch, 14. Oktober 2009 19:52
> To: kvm@vger.kernel.org
> Subject: Can't make virtio block driver work on Windows 2003
> 
> Hi all
> I have a new installation of Windows 2003 SBS server 32bit which I
> installed using IDE disk.
> KVM version is QEMU PC emulator version 0.10.50 (qemu-kvm-devel-86)
> compiled by myself on kernel 2.6.28-11-server.
> 
> I have already moved networking from e1000 to virtio (e1000 was
> performing very sluggishly btw, probably was losing many packets,
> virtio
> seems to work)
> 
> Now I want to move the disk to virtio...
> 
> This is complex so I thought that first I wanted to see virtio
> installed
> and working on another drive.
> So I tried adding another drive, a virtio one, (a new 100MB file at
> host
> side) to the virtual machine and rebooting.
> 
> A first problem is that Windows does not detect the new device upon
> boot
> or Add Hardware scan.
> 
> Here is the kvm commandline (it's complex because it comes from
> libvirt):
> 
> /usr/local/kvm/bin/qemu-system-x86_64 -S -M pc -m 4096-smp 4 -name
> winserv2 -uuid xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx -monitor pty -boot
> c
> -drive
> file=/virtual_machines/kvm/nfsimport/winserv2.raw,if=ide,index=0,boot=o
> n
> -drive file=/virtual_machines/kvm/nfsimport/zerofile,if=virtio,index=1
> -net nic,macaddr=xx:xx:xx:xx:xx:xx,vlan=0,model=virtio -net
> tap,fd=25,vlan=0 -serial none -parallel none -usb -vnc 127.0.0.1:4
> 
> Even if Windows couldn't detect the new device I tried to install the
> driver anyway. On Add Hardware I go through to --> SCSI and RAID
> controllers --> Have Disk .. and point it to the location of viostor
> files (windows 2003 x86) downloaded from:
> 
>   http://www.linux-kvm.org/page/WindowsGuestDrivers/Download_Drivers
>   http://people.redhat.com/~yvugenfi/24.09.2009/viostor.zip
> 
> Windows does install the driver, however at the end it says:
> 
>   The software for this device is now installed, but may not work
> correctly.
>   This device cannot start. (Code 10)
> 
> and the new device gets flagged with a yellow exclamation mark in
> Device
> Manager.
> 
> I don't know if it's the same reason as before, that the device is not
> detected so the driver cannot work, or another reason.
> 
> Any idea?
> 
> Thanks for your help
> --
> To unsubscribe from this list: send the line "unsubscribe kvm" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html



^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: Can't make virtio block driver work on Windows 2003
  2009-10-15  5:14 ` Vadim Rozenfeld
@ 2009-10-15 11:42   ` Asdo
  2009-10-15 13:20     ` Vadim Rozenfeld
  0 siblings, 1 reply; 8+ messages in thread
From: Asdo @ 2009-10-15 11:42 UTC (permalink / raw)
  To: Vadim Rozenfeld; +Cc: kvm

Vadim Rozenfeld wrote:
> On 10/14/2009 07:52 PM, Asdo wrote:
>> ...
>> So I tried adding another drive, a virtio one, (a new 100MB file at 
>> host side) to the virtual machine and rebooting.
>>
>> A first problem is that Windows does not detect the new device upon 
>> boot or Add Hardware scan.
> Check PCI devices with "info pci". You must have "SCSI controller: PCI 
> device 1af4:1001" device reported.

It's not there. Does this make it a KVM bug?

I'm attaching the PCI32.EXE output at the bottom of this email

BTW I would probably be able to switch to virtio anyway on this 
installation of Windows 2003, if I knew the way to insert the viostor 
driver into the windows boot image (windows's initrd), because if I set 
the first disk hda as virtio then kvm really makes it virtio (so maybe 
it's a configuration with one IDE and one virtio that does not work in 
KVM) and Windows bluescreens at boot. However I don't know how to insert 
the viostor driver in the windows boot image. Any suggestions?

>>
>> Here is the kvm commandline (it's complex because it comes from 
>> libvirt):
>>
>> /usr/local/kvm/bin/qemu-system-x86_64 -S -M pc -m 4096-smp 4 -name 
>> winserv2 -uuid xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx -monitor pty 
>> -boot c -drive 
>> file=/virtual_machines/kvm/nfsimport/winserv2.raw,if=ide,index=0,boot=on 
>> -drive 
>> file=/virtual_machines/kvm/nfsimport/zerofile,if=virtio,index=1 -net 
>> nic,macaddr=xx:xx:xx:xx:xx:xx,vlan=0,model=virtio -net 
>> tap,fd=25,vlan=0 -serial none -parallel none -usb -vnc 127.0.0.1:4
>>

 Craig Hart's PCI+AGP bus sniffer, Version 1.6, freeware made in 1996-2005.

Searching for Devices using CFG Mechanism 1 [OS: Win 2003 Service Pack 1]


 Bus 0 (PCI), Device Number 0, Device Function 0
 Vendor 8086h Intel Corporation
 Device 1237h 82441FX 440FX (Natoma) System Controller Rev 2 (SU053)
 Command 0000h (Bus Access Disabled!!)
 Status 0000h
 Revision 02h, Header Type 00h, Bus Latency Timer 00h
 Self test 00h (Self test not supported)
 PCI Class Bridge, type PCI to HOST
 Subsystem ID 11001AF4h Unknown
 Subsystem Vendor 1AF4h Unknown

 Bus 0 (PCI), Device Number 1, Device Function 0
 Vendor 8086h Intel Corporation
 Device 7000h 82371SB PIIX3 ISA Bridge
 Command 0007h (I/O Access, Memory Access, BusMaster)
 Status 0200h (Medium Timing)
 Revision 00h, Header Type 80h, Bus Latency Timer 00h
 Self test 00h (Self test not supported)
 PCI Class Bridge, type PCI to ISA
 Subsystem ID 11001AF4h Unknown
 Subsystem Vendor 1AF4h Unknown

 Bus 0 (PCI), Device Number 1, Device Function 1
 Vendor 8086h Intel Corporation
 Device 7010h 82371SB PIIX3 EIDE Controller
 Command 0007h (I/O Access, Memory Access, BusMaster)
 Status 0280h (Supports Back-To-Back Trans., Medium Timing)
 Revision 00h, Header Type 00h, Bus Latency Timer 00h
 Self test 00h (Self test not supported)
 PCI Class Storage, type IDE (ATA)
 PCI EIDE Controller Features :
   BusMaster EIDE is supported
   Primary   Channel is at I/O Port 01F0h and IRQ 14
   Secondary Channel is at I/O Port 0170h and IRQ 15
 Subsystem ID 11001AF4h Unknown
 Subsystem Vendor 1AF4h Unknown
 Address 4 is an I/O Port : 0000C000h

 Bus 0 (PCI), Device Number 1, Device Function 2
 Vendor 8086h Intel Corporation
 Device 7020h 82371SB PIIX3 USB Controller   Rev 1 (SU093)
 Command 0007h (I/O Access, Memory Access, BusMaster)
 Status 0000h
 Revision 01h, Header Type 00h, Bus Latency Timer 00h
 Self test 00h (Self test not supported)
 PCI Class Serial, type USB (UHCI)
 Subsystem ID 11001AF4h Unknown
 Subsystem Vendor 1AF4h Unknown
 Address 4 is an I/O Port : 0000C020h
 System IRQ 11, INT# D

 Bus 0 (PCI), Device Number 1, Device Function 3
 Vendor 8086h Intel Corporation
 Device 7113h 82371MB PIIX4M Power Management Controller
 Command 0000h (Bus Access Disabled!!)
 Status 0280h (Supports Back-To-Back Trans., Medium Timing)
 Revision 03h, Header Type 00h, Bus Latency Timer 00h
 Self test 00h (Self test not supported)
 PCI Class Bridge, type PCI to Other
 Subsystem ID 11001AF4h Unknown
 Subsystem Vendor 1AF4h Unknown
 System IRQ 9, INT# A

 Bus 0 (PCI), Device Number 2, Device Function 0
 Vendor 1013h Cirrus Logic
 Device 00B8h CL-GD5446 PCI
 Command 0007h (I/O Access, Memory Access, BusMaster)
 Status 0000h
 Revision 00h, Header Type 00h, Bus Latency Timer 00h
 Self test 00h (Self test not supported)
 PCI Class Display, type VGA
 Subsystem ID 11001AF4h Unknown
 Subsystem Vendor 1AF4h Unknown
 Address 0 is a Memory Address (anywhere in 0-4Gb, Prefetchable) : F0000000h
 Address 1 is a Memory Address (anywhere in 0-4Gb) : F2000000h

 Bus 0 (PCI), Device Number 3, Device Function 0
 Vendor 1AF4h Unknown
 Device 1000h Unknown
 Command 0007h (I/O Access, Memory Access, BusMaster)
 Status 0000h
 Revision 00h, Header Type 00h, Bus Latency Timer 00h
 Self test 00h (Self test not supported)
 PCI Class Network, type Ethernet
 Subsystem ID 00011AF4h Unknown
 Subsystem Vendor 1AF4h Unknown
 Address 0 is an I/O Port : 0000C040h
 System IRQ 10, INT# A

 Bus 0 (PCI), Device Number 4, Device Function 0
 Vendor 1AF4h Unknown
 Device 1002h Unknown
 Command 0001h (I/O Access)
 Status 0000h
 Revision 00h, Header Type 00h, Bus Latency Timer 00h
 Self test 00h (Self test not supported)
 PCI Class Memory, type RAM
 Subsystem ID 00051AF4h Unknown
 Subsystem Vendor 1AF4h Unknown
 Address 0 is an I/O Port : 0000C060h
 System IRQ 11, INT# A


IRQ Summary: IRQs 9,10,11,14,15 are used by PCI devices
Shared IRQs: IRQ 11 is shared by 2 PCI Devices




^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: Can't make virtio block driver work on Windows 2003
  2009-10-15 11:42   ` Asdo
@ 2009-10-15 13:20     ` Vadim Rozenfeld
  2009-10-15 14:23       ` Asdo
  0 siblings, 1 reply; 8+ messages in thread
From: Vadim Rozenfeld @ 2009-10-15 13:20 UTC (permalink / raw)
  To: Asdo; +Cc: kvm

On 10/15/2009 01:42 PM, Asdo wrote:
> Vadim Rozenfeld wrote:
>> On 10/14/2009 07:52 PM, Asdo wrote:
>>> ...
>>> So I tried adding another drive, a virtio one, (a new 100MB file at 
>>> host side) to the virtual machine and rebooting.
>>>
>>> A first problem is that Windows does not detect the new device upon 
>>> boot or Add Hardware scan.
>> Check PCI devices with "info pci". You must have "SCSI controller: 
>> PCI device 1af4:1001" device reported.
>
> It's not there. Does this make it a KVM bug?
Looks like virtio-blk device wasn't initialized. Otherwise I cannot 
explain why 0x1100 device is here.
Try to start block device without "index=1"
Anyway, if you can, please send "info pci" output from QEMU monitor console.

Thank you,
Vadim.
>
> I'm attaching the PCI32.EXE output at the bottom of this email
>
> BTW I would probably be able to switch to virtio anyway on this 
> installation of Windows 2003, if I knew the way to insert the viostor 
> driver into the windows boot image (windows's initrd), because if I 
> set the first disk hda as virtio then kvm really makes it virtio (so 
> maybe it's a configuration with one IDE and one virtio that does not 
> work in KVM) and Windows bluescreens at boot. However I don't know how 
> to insert the viostor driver in the windows boot image. Any suggestions?
>
>>>
>>> Here is the kvm commandline (it's complex because it comes from 
>>> libvirt):
>>>
>>> /usr/local/kvm/bin/qemu-system-x86_64 -S -M pc -m 4096-smp 4 -name 
>>> winserv2 -uuid xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx -monitor pty 
>>> -boot c -drive 
>>> file=/virtual_machines/kvm/nfsimport/winserv2.raw,if=ide,index=0,boot=on 
>>> -drive 
>>> file=/virtual_machines/kvm/nfsimport/zerofile,if=virtio,index=1 -net 
>>> nic,macaddr=xx:xx:xx:xx:xx:xx,vlan=0,model=virtio -net 
>>> tap,fd=25,vlan=0 -serial none -parallel none -usb -vnc 127.0.0.1:4
>>>
>
> Craig Hart's PCI+AGP bus sniffer, Version 1.6, freeware made in 
> 1996-2005.
>
> Searching for Devices using CFG Mechanism 1 [OS: Win 2003 Service Pack 1]
>
>
> Bus 0 (PCI), Device Number 0, Device Function 0
> Vendor 8086h Intel Corporation
> Device 1237h 82441FX 440FX (Natoma) System Controller Rev 2 (SU053)
> Command 0000h (Bus Access Disabled!!)
> Status 0000h
> Revision 02h, Header Type 00h, Bus Latency Timer 00h
> Self test 00h (Self test not supported)
> PCI Class Bridge, type PCI to HOST
> Subsystem ID 11001AF4h Unknown
> Subsystem Vendor 1AF4h Unknown
>
> Bus 0 (PCI), Device Number 1, Device Function 0
> Vendor 8086h Intel Corporation
> Device 7000h 82371SB PIIX3 ISA Bridge
> Command 0007h (I/O Access, Memory Access, BusMaster)
> Status 0200h (Medium Timing)
> Revision 00h, Header Type 80h, Bus Latency Timer 00h
> Self test 00h (Self test not supported)
> PCI Class Bridge, type PCI to ISA
> Subsystem ID 11001AF4h Unknown
> Subsystem Vendor 1AF4h Unknown
>
> Bus 0 (PCI), Device Number 1, Device Function 1
> Vendor 8086h Intel Corporation
> Device 7010h 82371SB PIIX3 EIDE Controller
> Command 0007h (I/O Access, Memory Access, BusMaster)
> Status 0280h (Supports Back-To-Back Trans., Medium Timing)
> Revision 00h, Header Type 00h, Bus Latency Timer 00h
> Self test 00h (Self test not supported)
> PCI Class Storage, type IDE (ATA)
> PCI EIDE Controller Features :
>   BusMaster EIDE is supported
>   Primary   Channel is at I/O Port 01F0h and IRQ 14
>   Secondary Channel is at I/O Port 0170h and IRQ 15
> Subsystem ID 11001AF4h Unknown
> Subsystem Vendor 1AF4h Unknown
> Address 4 is an I/O Port : 0000C000h
>
> Bus 0 (PCI), Device Number 1, Device Function 2
> Vendor 8086h Intel Corporation
> Device 7020h 82371SB PIIX3 USB Controller   Rev 1 (SU093)
> Command 0007h (I/O Access, Memory Access, BusMaster)
> Status 0000h
> Revision 01h, Header Type 00h, Bus Latency Timer 00h
> Self test 00h (Self test not supported)
> PCI Class Serial, type USB (UHCI)
> Subsystem ID 11001AF4h Unknown
> Subsystem Vendor 1AF4h Unknown
> Address 4 is an I/O Port : 0000C020h
> System IRQ 11, INT# D
>
> Bus 0 (PCI), Device Number 1, Device Function 3
> Vendor 8086h Intel Corporation
> Device 7113h 82371MB PIIX4M Power Management Controller
> Command 0000h (Bus Access Disabled!!)
> Status 0280h (Supports Back-To-Back Trans., Medium Timing)
> Revision 03h, Header Type 00h, Bus Latency Timer 00h
> Self test 00h (Self test not supported)
> PCI Class Bridge, type PCI to Other
> Subsystem ID 11001AF4h Unknown
> Subsystem Vendor 1AF4h Unknown
> System IRQ 9, INT# A
>
> Bus 0 (PCI), Device Number 2, Device Function 0
> Vendor 1013h Cirrus Logic
> Device 00B8h CL-GD5446 PCI
> Command 0007h (I/O Access, Memory Access, BusMaster)
> Status 0000h
> Revision 00h, Header Type 00h, Bus Latency Timer 00h
> Self test 00h (Self test not supported)
> PCI Class Display, type VGA
> Subsystem ID 11001AF4h Unknown
> Subsystem Vendor 1AF4h Unknown
> Address 0 is a Memory Address (anywhere in 0-4Gb, Prefetchable) : 
> F0000000h
> Address 1 is a Memory Address (anywhere in 0-4Gb) : F2000000h
>
> Bus 0 (PCI), Device Number 3, Device Function 0
> Vendor 1AF4h Unknown
> Device 1000h Unknown
> Command 0007h (I/O Access, Memory Access, BusMaster)
> Status 0000h
> Revision 00h, Header Type 00h, Bus Latency Timer 00h
> Self test 00h (Self test not supported)
> PCI Class Network, type Ethernet
> Subsystem ID 00011AF4h Unknown
> Subsystem Vendor 1AF4h Unknown
> Address 0 is an I/O Port : 0000C040h
> System IRQ 10, INT# A
>
> Bus 0 (PCI), Device Number 4, Device Function 0
> Vendor 1AF4h Unknown
> Device 1002h Unknown
> Command 0001h (I/O Access)
> Status 0000h
> Revision 00h, Header Type 00h, Bus Latency Timer 00h
> Self test 00h (Self test not supported)
> PCI Class Memory, type RAM
> Subsystem ID 00051AF4h Unknown
> Subsystem Vendor 1AF4h Unknown
> Address 0 is an I/O Port : 0000C060h
> System IRQ 11, INT# A
>
>
> IRQ Summary: IRQs 9,10,11,14,15 are used by PCI devices
> Shared IRQs: IRQ 11 is shared by 2 PCI Devices
>
>
>


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: Can't make virtio block driver work on Windows 2003
  2009-10-15 13:20     ` Vadim Rozenfeld
@ 2009-10-15 14:23       ` Asdo
  2009-10-15 15:08         ` Vadim Rozenfeld
  0 siblings, 1 reply; 8+ messages in thread
From: Asdo @ 2009-10-15 14:23 UTC (permalink / raw)
  To: Vadim Rozenfeld; +Cc: kvm

Vadim Rozenfeld wrote:
> On 10/15/2009 01:42 PM, Asdo wrote:
>> Vadim Rozenfeld wrote:
>>> On 10/14/2009 07:52 PM, Asdo wrote:
>>>> ...
>>>> So I tried adding another drive, a virtio one, (a new 100MB file at 
>>>> host side) to the virtual machine and rebooting.
>>>>
>>>> A first problem is that Windows does not detect the new device upon 
>>>> boot or Add Hardware scan.
>>> Check PCI devices with "info pci". You must have "SCSI controller: 
>>> PCI device 1af4:1001" device reported.
>>
>> It's not there. Does this make it a KVM bug?
> Looks like virtio-blk device wasn't initialized. Otherwise I cannot 
> explain why 0x1100 device is here.
> Try to start block device without "index=1"
> Anyway, if you can, please send "info pci" output from QEMU monitor 
> console.

Owh! Ok THAT was "info pci"
Ok I am copying by hand before removing index=1

(qemu) info pci
Bus 0, device 0, function, 0:
    Host bridge: PCI device 8086:1237
Bus 0 device 1, function 0:
    ISA ridge: PCI device 8086:7000
Bos 0 device 1 function 1:
    IDE controller: PCI device 8086:7010
       BAR4: I/O at 0xc000 [0xc00f].
Bus 0 device 1 function 3:
    Bridge: PCI device 8086:7133
    IRQ 9
Bus 0 device 2 function 0:
VGA controller: PCI device 1013:00b8
       BAR0: 32 but memory at 0xf0000000 [0xf1ffffff]
       BAR1: 32 but memory at 0xf2000000 [0xf2000fff]
Bus 0 device 3 function 0:
    Ethernet controller PCI device 1af4:1000
       IRQ 11
       BAR0: I/O at 0xc020 [0xc03f]
Bus 0 device 4 function 0
    RAM controller: PCI device 1af4:1002
    IRQ 11
    BAR0 : I/O at 0xc040
(qemu)

so it's not there

Now I remove index=1:

WOW it's there now!
...
Bus 0 device 4 function 0:
    Storage controller: PCI device 1af4:1001
        IRQ 11
        BAR0: I/O at 0xc040 [0xc07f]

(just before the 1002 device)

So now windows sees it and I was able to install the viostor drivers 
(btw Windows was not happy with the previously installed viostor 
drivers, I had to reinstall those and I got two devices, and the 
previous one still had the yellow exclamation mark, so I had to 
uninstall that one. After the procedure I was able to boot on virtio 
too! Yeah!).

Great so yes, I'd say you *DO* have a KVM bug: one has to remove index=1 
for the second disk to appear. How did you know that, Vadim, is it a 
known issue with kvm? It's better to fix that because libvirt puts 
"index=n" for all drives so it's impossible to workaround the problem if 
one uses libvirt. I had to launch manually...

Thanks a lot Vadim.

Asdo

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: Can't make virtio block driver work on Windows 2003
  2009-10-15 14:23       ` Asdo
@ 2009-10-15 15:08         ` Vadim Rozenfeld
  2009-10-15 17:35           ` Asdo
  0 siblings, 1 reply; 8+ messages in thread
From: Vadim Rozenfeld @ 2009-10-15 15:08 UTC (permalink / raw)
  To: Asdo; +Cc: kvm

On 10/15/2009 04:23 PM, Asdo wrote:
> Vadim Rozenfeld wrote:
>> On 10/15/2009 01:42 PM, Asdo wrote:
>>> Vadim Rozenfeld wrote:
>>>> On 10/14/2009 07:52 PM, Asdo wrote:
>>>>> ...
>>>>> So I tried adding another drive, a virtio one, (a new 100MB file 
>>>>> at host side) to the virtual machine and rebooting.
>>>>>
>>>>> A first problem is that Windows does not detect the new device 
>>>>> upon boot or Add Hardware scan.
>>>> Check PCI devices with "info pci". You must have "SCSI controller: 
>>>> PCI device 1af4:1001" device reported.
>>>
>>> It's not there. Does this make it a KVM bug?
>> Looks like virtio-blk device wasn't initialized. Otherwise I cannot 
>> explain why 0x1100 device is here.
>> Try to start block device without "index=1"
>> Anyway, if you can, please send "info pci" output from QEMU monitor 
>> console.
>
> Owh! Ok THAT was "info pci"
> Ok I am copying by hand before removing index=1
>
> (qemu) info pci
> Bus 0, device 0, function, 0:
>    Host bridge: PCI device 8086:1237
> Bus 0 device 1, function 0:
>    ISA ridge: PCI device 8086:7000
> Bos 0 device 1 function 1:
>    IDE controller: PCI device 8086:7010
>       BAR4: I/O at 0xc000 [0xc00f].
> Bus 0 device 1 function 3:
>    Bridge: PCI device 8086:7133
>    IRQ 9
> Bus 0 device 2 function 0:
> VGA controller: PCI device 1013:00b8
>       BAR0: 32 but memory at 0xf0000000 [0xf1ffffff]
>       BAR1: 32 but memory at 0xf2000000 [0xf2000fff]
> Bus 0 device 3 function 0:
>    Ethernet controller PCI device 1af4:1000
>       IRQ 11
>       BAR0: I/O at 0xc020 [0xc03f]
> Bus 0 device 4 function 0
>    RAM controller: PCI device 1af4:1002
>    IRQ 11
>    BAR0 : I/O at 0xc040
> (qemu)
>
> so it's not there
>
> Now I remove index=1:
>
> WOW it's there now!
> ...
> Bus 0 device 4 function 0:
>    Storage controller: PCI device 1af4:1001
>        IRQ 11
>        BAR0: I/O at 0xc040 [0xc07f]
>
> (just before the 1002 device)
>
> So now windows sees it and I was able to install the viostor drivers 
> (btw Windows was not happy with the previously installed viostor 
> drivers, I had to reinstall those and I got two devices, and the 
> previous one still had the yellow exclamation mark, so I had to 
> uninstall that one. After the procedure I was able to boot on virtio 
> too! Yeah!).
>
> Great so yes, I'd say you *DO* have a KVM bug: one has to remove 
> index=1 for the second disk to appear. How did you know that, Vadim, 
> is it a known issue with kvm? 
I don't know. I think, I've seen it once or twice while debugging 
viostor on old qemu-kvm.
But it definitely works with the recent versions.
Regards,
Vadim
> It's better to fix that because libvirt puts "index=n" for all drives 
> so it's impossible to workaround the problem if one uses libvirt. I 
> had to launch manually...
>
> Thanks a lot Vadim.
>
> Asdo
> -- 
> To unsubscribe from this list: send the line "unsubscribe kvm" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: Can't make virtio block driver work on Windows 2003
  2009-10-15 15:08         ` Vadim Rozenfeld
@ 2009-10-15 17:35           ` Asdo
  0 siblings, 0 replies; 8+ messages in thread
From: Asdo @ 2009-10-15 17:35 UTC (permalink / raw)
  To: Vadim Rozenfeld; +Cc: kvm

Vadim Rozenfeld wrote:
> On 10/15/2009 04:23 PM, Asdo wrote:
>> Great so yes, I'd say you *DO* have a KVM bug: one has to remove 
>> index=1 for the second disk to appear. How did you know that, Vadim, 
>> is it a known issue with kvm? 
> I don't know. I think, I've seen it once or twice while debugging 
> viostor on old qemu-kvm.
> But it definitely works with the recent versions.  
Well... my kvm was kvm-86 (QEMU PC emulator version 0.10.50 
(qemu-kvm-devel-86)), sources compiled by hand... 86 is a recent version 
imho
Thank you

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2009-10-15 17:37 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-10-14 17:52 Can't make virtio block driver work on Windows 2003 Asdo
2009-10-15  5:14 ` Vadim Rozenfeld
2009-10-15 11:42   ` Asdo
2009-10-15 13:20     ` Vadim Rozenfeld
2009-10-15 14:23       ` Asdo
2009-10-15 15:08         ` Vadim Rozenfeld
2009-10-15 17:35           ` Asdo
2009-10-15  9:29 ` Martin Maurer

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).