ia64/xen-unstable

changeset 17593:a3b8a99c26eb

Update for vtd.txt: add VT-d hotplug description, remove MSI
limitation note because Xen has supported MSI, and add link of VT-d
howto on xen wiki for more information about VT-d enabled systems.

Signed-off-by: Weidong Han <weidong.han@intel.com>
Signed-off-by: Edwin Zhai <edwin.zhai@intel.com>
author Keir Fraser <keir.fraser@citrix.com>
date Wed May 07 09:23:29 2008 +0100 (2008-05-07)
parents 2cc926c18a7b
children 2e6d2eac74d9
files docs/misc/vtd.txt
line diff
     1.1 --- a/docs/misc/vtd.txt	Wed May 07 09:22:05 2008 +0100
     1.2 +++ b/docs/misc/vtd.txt	Wed May 07 09:23:29 2008 +0100
     1.3 @@ -2,7 +2,7 @@ Title   : How to do PCI Passthrough with
     1.4  Authors : Allen Kay    <allen.m.kay@intel.com>
     1.5            Weidong Han  <weidong.han@intel.com>
     1.6  Created : October-24-2007
     1.7 -Updated : December-13-2007
     1.8 +Updated : May-07-2007
     1.9  
    1.10  How to turn on VT-d in Xen
    1.11  --------------------------
    1.12 @@ -22,7 +22,7 @@ 11) "hide" pci device from dom0 as follo
    1.13  title Xen-Fedora Core (2.6.18-xen)
    1.14          root (hd0,0)
    1.15          kernel /boot/xen.gz com1=115200,8n1 console=com1
    1.16 -        module /boot/vmlinuz-2.6.18.8-xen root=LABEL=/ ro console=tty0 console=ttyS0,115200,8n1 pciback.hide=(01:00.0)(03:00.0) pciback.verbose_request=1 apic=debug
    1.17 +        module /boot/vmlinuz-2.6.18.8-xen root=LABEL=/ ro xencons=ttyS console=tty0 console=ttyS0, pciback.hide=(01:00.0)(03:00.0)
    1.18          module /boot/initrd-2.6.18-xen.img
    1.19  
    1.20  12) reboot system
    1.21 @@ -47,8 +47,6 @@ VT-d Works on OS:
    1.22  1) Host OS: PAE, 64-bit
    1.23  2) Guest OS: 32-bit, PAE, 64-bit
    1.24  
    1.25 -Because current Xen doesn't support MSI, for guest OS which uses MSI by default, need to add "pci=nomsi" option on its grub, e.g. RHEL5, FC6.
    1.26 -
    1.27  
    1.28  Combinations Tested:
    1.29  --------------------
    1.30 @@ -57,6 +55,33 @@ 1) 64-bit host: 32/PAE/64 Linux/XP/Win20
    1.31  2) PAE host: 32/PAE Linux/XP/Win2003/Vista guests
    1.32  
    1.33  
    1.34 +VTd device hotplug:
    1.35 +-------------------
    1.36 + 
    1.37 +2 virtual PCI slots (6~7) are reserved in HVM guest to support VTd hotplug. If you have more VTd devices, only 2 of them can support hotplug. Usage is simple:
    1.38 +
    1.39 + 1. List the VTd device by dom. You can see a VTd device 0:2:0.0 is inserted in the HVM domain's PCI slot 6. '''lspci''' inside the guest should see the same.
    1.40 +
    1.41 +	[root@vt-vtd ~]# xm pci-list HVMDomainVtd
    1.42 +	VSlt domain   bus   slot   func
    1.43 +	0x6    0x0  0x02   0x00    0x0
    1.44 +
    1.45 + 2. Detach the device from the guest by the physical BDF. Then HVM guest will receive a virtual PCI hot removal event to detach the physical device
    1.46 +
    1.47 +	[root@vt-vtd ~]# xm pci-detach HVMDomainVtd 0:2:0.0
    1.48 +
    1.49 + 3. Attach a PCI device to the guest by the physical BDF and desired virtual slot(optional). Following command would insert the physical device into guest's virtual slot 7
    1.50 +
    1.51 +	[root@vt-vtd ~]# xm pci-attach HVMDomainVtd 0:2:0.0 7
    1.52 +
    1.53 +VTd hotplug usage model:
    1.54 +------------------------
    1.55 +
    1.56 + * For live migration: As you know, VTd device would break the live migration as physical device can't be save/restored like virtual device. With hotplug, live migration is back again. Just hot remove all the VTd devices before live migration and hot add new VTd devices on target machine after live migration.
    1.57 +
    1.58 + * VTd hotplug for device switch: VTd hotplug can be used to dynamically switch physical device between different HVM guest without shutdown.
    1.59 +
    1.60 +
    1.61  VT-d Enabled Systems
    1.62  --------------------
    1.63  
    1.64 @@ -74,3 +99,5 @@ http://www.dell.com/content/products/cat
    1.65  - HP Compaq:  DC7800
    1.66  http://h10010.www1.hp.com/wwpc/us/en/en/WF04a/12454-12454-64287-321860-3328898.html
    1.67  
    1.68 +For more information, pls refer to http://wiki.xensource.com/xenwiki/VTdHowTo.
    1.69 +