Re: Virtio IRQ problem

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, 07/13 10:41, Pavel Davydov wrote:
> The proprietary system doesn't have a virtio driver, that is the problem.
> 
> What are the steps that Linux performs to work correctly with virtio
> devices?

It's done with a specific driver that talks to virtio interface:

http://github.com/torvalds/linux/blob/master/drivers/net/virtio_net.c

It goes through regular PCI device discovery, and sets up ring buffers for rx
and tx, together with irq handlers etc., according to the device specification.
The device operations are documented as:

http://docs.oasis-open.org/virtio/virtio/v1.0/csprd01/virtio-v1.0-csprd01.html#x1-870001


Thanks,
Fam

> 
> Thank you,
> Pavel
> 
> On 07/12/2015 05:31 PM, Fam Zheng wrote:
> >On Fri, 07/10 22:34, Pavel Davydov wrote:
> >>Hello,
> >>
> >>I've got the following problem with KVM:
> >>
> >>I'm running a proprietary OS under KVM, the OS is neither Linux/Unix, nor
> >>Windows, and I don't get any IRQs from Virtio device. The Virtio device in
> >>the system I'm running is a PCI Ethernet device. The device is detected
> >>correctly, the IRQ line is also identified, its matches with the IRQ line
> >>number retrieved by running lspci command when Linux is run instead of the
> >>proprietary system.
> >>
> >>When Linux is run on exactly the same virtual machine configuration (with
> >>the Virtio device), the Virtio device is detected and works correctly, there
> >>is traffic between the host and the guest.
> >Linux does more than detection, you need to have drivers running in the guest
> >for virtio devices.
> >
> >Does your proprietary system have virtio device drivers?
> >
> >Fam
> >
> >>When the only change in the configuration is that the type of the virtual
> >>network interface is changed from Virtio to E1000, in both OSes: the
> >>proprietary OS and Linux, the virtual network interface works correctly.
> >>
> >>The question is: what steps is Virtio driver to perform to enable the IRQs?
> >>(Obviously, Linux driver for Virtio performs these steps, the IRQs are
> >>generated under Linux VM).
> >>
> >>Any hint would be appreciated.
> >>
> >>Thank you,
> >>Pavel
> >>--
> >>To unsubscribe from this list: send the line "unsubscribe kvm" in
> >>the body of a message to majordomo@xxxxxxxxxxxxxxx
> >>More majordomo info at  http://vger.kernel.org/majordomo-info.html
> 
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux