-----Original Message----- From: Stephen Hemminger [mailto:step...@networkplumber.org] Sent: Tuesday, June 10, 2014 6:41 PM To: Carew, Alan Cc: dev at dpkd.org Subject: Re: [PATCH 00/10] igb_uio patches
On Tue, 10 Jun 2014 15:33:31 +0000 "Carew, Alan" <alan.carew at intel.com> wrote: > Good catches and fixes in this set, would it be possible to refactor the > "enum igbuio_intr_mode" to a common header files as with > http://dpdk.org/ml/archives/dev/2014-June/003127.html Actually, thought that was ugly. The userspace shouldn't have to see all these definitions. Not a big fan of doing this and it would go against goal of making a version that could be merged upstream. Stephen, One alternative for us is then to take Neil Horman's idea of scanning /sys/bus/pci/devices/<D:B:D.F>/msi_irqs/ This gives us at least (MSI | MSI-X) | INT-X, however the Virtio specification mentions MSI-X explicitly for determining the correct offset and might not address the underlying problem my patch set was addressing, I have not tried Virtio with MSI. A question then, how does uio_pci_generic handle interrupt modes in terms of userspace interface when determining the configured interrupt mode? In the short term while we still work with igb_uio we may have to rely on SYSFS, but there is nothing stopping us from having device specific code paths that does not exclude us from ignoring igb_uio. The shared headers also gives us the benefit of having an internal interface(rte_pci_device: rte_intr_mode ) already in place when swapping out kernel drivers, Anatoly's VFIO implementation already uses such an interface. Thanks, Alan