Hi , can i pass a PCI device to a HVM domain ? i tried Virtual_PCI and Pass trough as PCI_Backends. in the boot log i see that he hides the device and when i start the domain it tells me that he assigned it now to the domain but in both ways the Adapter doesn''t appears in the Windows System that runs in the HVM domain. any ideas ? Sven _______________________________________________ Xen-users mailing list Xen-users@lists.xensource.com http://lists.xensource.com/xen-users
Sven Oehme wrote:> > Hi , > > can i pass a PCI device to a HVM domain ? > i tried Virtual_PCI and Pass trough as PCI_Backends. > in the boot log i see that he hides the device and when i start the > domain it tells me that he assigned it now to the domain > but in both ways the Adapter doesn''t appears in the Windows System > that runs in the HVM domain. > >according to several previous postings in this list pci passthrough is not supported for vmx guests... Bye, Andrej _______________________________________________ Xen-users mailing list Xen-users@lists.xensource.com http://lists.xensource.com/xen-users
Should Virtual_PCI work ? Sven Andrej Radonic <andrej.radonic@koeln.de> Sent by: xen-users-bounces@lists.xensource.com 05/19/2006 06:09 AM To xen-users@lists.xensource.com cc Subject Re: [Xen-users] PCI passtrough in HVM Domain ? Sven Oehme wrote:> > Hi , > > can i pass a PCI device to a HVM domain ? > i tried Virtual_PCI and Pass trough as PCI_Backends. > in the boot log i see that he hides the device and when i start the > domain it tells me that he assigned it now to the domain > but in both ways the Adapter doesn''t appears in the Windows System > that runs in the HVM domain. > >according to several previous postings in this list pci passthrough is not supported for vmx guests... Bye, Andrej _______________________________________________ Xen-users mailing list Xen-users@lists.xensource.com http://lists.xensource.com/xen-users _______________________________________________ Xen-users mailing list Xen-users@lists.xensource.com http://lists.xensource.com/xen-users
PCI passthrough isn''t supported for HVM guests yet. I don''t know why - it shouldn''t be too difficult to achieve, I would have thought, but on the other hand, for 90% of devices, it probably doesn''t make much sense to just pass them on, since those 90% use direct memory accesses for the data transfers to/from the device, and thus you''d end up shipping out the wrong data - which at best means that the device just won''t work, or at worst means that some data from another domain gets sent out to the public to see - the latter is worse becaue you wouldn''t know it until you find that your bank-account has been emptied, because you sent all the details off onto the WWW and someone picked it up... ;-) The reason for this is that the HVM guest domain THINKS that memory starts at address zero (or thereabouts) and goes to whatever size we''ve assigned it. But in reality, the memory used by the HVM guest is living at, for example, 256-512MB. So when the network card is told to transmit memory from address 123456, it should really transmit what''s at 256MB + 123456, not actual address 123456. Since the OS and it''s drivers are completely unaware about this fact, they can''t really fix it... There are two solutions to this problem: 1. Use an IOMMU - unfortunately, there''s none available for common x86 hardware today [IBM has one, which is used for large MP systems, I think - not sure if it''s x86 or PowerPC based]. 2. Use para-virtualized drivers, so the driver is capable of figuring out that the ACTUAL physical address of the data to be DMA''d is different from the OS''s idea of the address. -- Mats ________________________________ From: xen-users-bounces@lists.xensource.com [mailto:xen-users-bounces@lists.xensource.com] On Behalf Of Sven Oehme Sent: 18 May 2006 22:32 To: xen-users@lists.xensource.com Subject: [Xen-users] PCI passtrough in HVM Domain ? Hi , can i pass a PCI device to a HVM domain ? i tried Virtual_PCI and Pass trough as PCI_Backends. in the boot log i see that he hides the device and when i start the domain it tells me that he assigned it now to the domain but in both ways the Adapter doesn''t appears in the Windows System that runs in the HVM domain. any ideas ? Sven _______________________________________________ Xen-users mailing list Xen-users@lists.xensource.com http://lists.xensource.com/xen-users
ok understood and make sense to me :-) Virtual PCI is supported today ( at least it tells me in the log, that it has attached the device to the guest) but it still doesn''t show up in the guest vm . Sven "Petersson, Mats" <Mats.Petersson@amd.com> 05/19/2006 02:22 PM To Sven Oehme/Germany/IBM@IBMDE, xen-users@lists.xensource.com cc Subject RE: [Xen-users] PCI passtrough in HVM Domain ? PCI passthrough isn''t supported for HVM guests yet. I don''t know why - it shouldn''t be too difficult to achieve, I would have thought, but on the other hand, for 90% of devices, it probably doesn''t make much sense to just pass them on, since those 90% use direct memory accesses for the data transfers to/from the device, and thus you''d end up shipping out the wrong data - which at best means that the device just won''t work, or at worst means that some data from another domain gets sent out to the public to see - the latter is worse becaue you wouldn''t know it until you find that your bank-account has been emptied, because you sent all the details off onto the WWW and someone picked it up... ;-) The reason for this is that the HVM guest domain THINKS that memory starts at address zero (or thereabouts) and goes to whatever size we''ve assigned it. But in reality, the memory used by the HVM guest is living at, for example, 256-512MB. So when the network card is told to transmit memory from address 123456, it should really transmit what''s at 256MB + 123456, not actual address 123456. Since the OS and it''s drivers are completely unaware about this fact, they can''t really fix it... There are two solutions to this problem: 1. Use an IOMMU - unfortunately, there''s none available for common x86 hardware today [IBM has one, which is used for large MP systems, I think - not sure if it''s x86 or PowerPC based]. 2. Use para-virtualized drivers, so the driver is capable of figuring out that the ACTUAL physical address of the data to be DMA''d is different from the OS''s idea of the address. -- Mats From: xen-users-bounces@lists.xensource.com [mailto:xen-users-bounces@lists.xensource.com] On Behalf Of Sven Oehme Sent: 18 May 2006 22:32 To: xen-users@lists.xensource.com Subject: [Xen-users] PCI passtrough in HVM Domain ? Hi , can i pass a PCI device to a HVM domain ? i tried Virtual_PCI and Pass trough as PCI_Backends. in the boot log i see that he hides the device and when i start the domain it tells me that he assigned it now to the domain but in both ways the Adapter doesn''t appears in the Windows System that runs in the HVM domain. any ideas ? Sven _______________________________________________ Xen-users mailing list Xen-users@lists.xensource.com http://lists.xensource.com/xen-users
On Fri, May 19, 2006 at 02:22:17PM +0200, Petersson, Mats wrote:> 1. Use an IOMMU - unfortunately, there''s none available for common x86 > hardware today [IBM has one, which is used for large MP systems, I > think - not sure if it''s x86 or PowerPC based].It''s both - the same chipset is used in both PPC and x86 based servers. We posted prooof of concept patches to enable usage of it for paravirtualized domains a couple of months ago at http://www.mulix.org/code/patches/xen/calgary-xen-A1 and http://www.mulix.org/code/patches/xen/calgary-xenlinux-A1. We have updated patches for xen-unstable that we''re in the process of cleaning up and will post Real Soon Now. Cheers, Muli _______________________________________________ Xen-users mailing list Xen-users@lists.xensource.com http://lists.xensource.com/xen-users