In my qemu logs I get lines like this:
pt_iomul_init: Error: pt_iomul_init can''t open file
/dev/xen/pci_iomul: No such file or directory: 0x0:0x14.0x0
This happens once for every pci device I pass through to the domU the
log is about. I wondered what this meant and had a look.
I found that register_real_device calls pt_iomul_init. This function
then tries to open /dev/xen/pci_iomul, which doesn''t exist, and gives
the error. Basically, what happens is just what the error says, but I
still didn''t know why.
I eventually traced the function back to the patch introduced by
http://old-list-archives.xen.org/archives/html/xen-devel/2009-05/msg01218.html.
It describes it as using a PCI IO space multiplexer for big iron
servers with more than 16 PCIe slots. What I''m using isn''t
like that.
I don''t have or need a multiplexing driver, as far as I''m
aware, so it
seems the error is harmless.
What I also found was people trying to get pci passthrough working,
and wondering if that error had something to do with their issues.
This was also why I first started searching information about the
error. If you pass through a device to a HVM domU and you don''t have
the multiplexing driver, you will get the error, causing confusion.
So, for the benefit of future people like me, I''d like to either
clarify the error, or (preferably) just make it go away. I''d like some
input on what people think is the best way to go about this.
* Is there a way for pt_iomul_init or register_real_device to know
that there isn''t an IO multiplexer, so there is no point in trying to
initialize it?
* Maybe a configuration file switch that defaults to off?
* Reword the message so it doesn''t claim there is an error? "You
do
not appear to have a PCI IO space multiplexer driver. Can''t open file
/dev/xen/pci_iomul: No such file or directory: 0x0:0x14.0x0"