debuggers.hg

changeset 19943:7ce4f3675c9b

docs: update vtd.txt for pv-ops dom0

Now VT-d works with pv-ops dom0, update vtd.txt to tell how to build
and use VT-d with pv-ops.

Signed-off-by: Weidong Han <weidong.han@intel.com>=
author Keir Fraser <keir.fraser@citrix.com>
date Tue Jul 07 14:07:08 2009 +0100 (2009-07-07)
parents c1541cc7e985
children 2fadef1b008f
files docs/misc/vtd.txt
line diff
     1.1 --- a/docs/misc/vtd.txt	Tue Jul 07 14:06:35 2009 +0100
     1.2 +++ b/docs/misc/vtd.txt	Tue Jul 07 14:07:08 2009 +0100
     1.3 @@ -3,11 +3,12 @@ Authors : Allen Kay    <allen.m.kay@inte
     1.4            Weidong Han  <weidong.han@intel.com>
     1.5            Yuji Shimada <shimada-yxb@necst.nec.co.jp>
     1.6  Created : October-24-2007
     1.7 -Updated : September-09-2008
     1.8 +Updated : July-07-2009
     1.9  
    1.10  How to turn on VT-d in Xen
    1.11  --------------------------
    1.12  
    1.13 +Xen with 2.6.18 dom0:
    1.14  1 ) cd xen-unstable.hg
    1.15  2 ) make install
    1.16  3 ) make linux-2.6-xen-config CONFIGMODE=menuconfig
    1.17 @@ -44,6 +45,44 @@ 15) start hvm guest and use "lspci" to s
    1.18      "ifconfig" to see if IP address has been assigned to NIC devices.
    1.19  
    1.20  
    1.21 +Xen with pv-ops dom0:
    1.22 +1 ) cd xen-unstable.hg
    1.23 +2 ) make install
    1.24 +3 ) make linux-2.6-pvops-config CONFIGMODE=menuconfig
    1.25 +4 ) change Bus options (PCI etc.)->"PCI Stub driver" to "*".
    1.26 +5 ) make linux-2.6-pvops-build
    1.27 +6 ) make linux-2.6-pvops-install
    1.28 +7 ) mkinitrd -v -f --with=ahci --with=aacraid --with=sd_mod --with=scsi_mod initrd-2.6.30-rc3-tip.img 2.6.30-rc3-tip
    1.29 +    (change 2.6.30-rc3-tip to pv-ops dom0 version when it's updated in future)
    1.30 +8 ) cp initrd-2.6.30-rc3-tip.img /boot
    1.31 +9 ) edit grub:
    1.32 +
    1.33 +title Xen-Fedora Core (pv-ops)
    1.34 +        root (hd0,0)
    1.35 +        kernel /boot/xen.gz console=com1,vga console=com1 com1=115200,8n1 iommu=1
    1.36 +        module /boot/vmlinuz-2.6.30-rc3-tip root=LABEL=/ ro console=hvc0 earlyprintk=xen
    1.37 +        module /boot/initrd-2.6.30-rc3-tip.img
    1.38 +
    1.39 +10) reboot system
    1.40 +11) hide device using pci-stub (example PCI device 01:00.0):
    1.41 +
    1.42 +    - lspci -n
    1.43 +    - locate the entry for device 01:00.0 and note down the vendor & device ID
    1.44 +8086:10b9
    1.45 +        ...
    1.46 +        01:00.0 0200: 8086:10b9 (rev 06)
    1.47 +        ...
    1.48 +    - then use following commands to hide it:
    1.49 +        echo "8086 10b9" > /sys/bus/pci/drivers/pci-stub/new_id
    1.50 +        echo "0000:01:00.0" > /sys/bus/pci/devices/0000:01:00.0/driver/unbind
    1.51 +        echo "0000:01:00.0" > /sys/bus/pci/drivers/pci-stub/bind
    1.52 +
    1.53 +12) add "pci" line in /etc/xen/hvm.conf for to assigned devices
    1.54 +        pci = [ '01:00.0' ]
    1.55 +13) start hvm guest and use "lspci" to see the passthru device and
    1.56 +    "ifconfig" to see if IP address has been assigned to NIC devices.
    1.57 +
    1.58 +
    1.59  Enable MSI/MSI-x for assigned devices
    1.60  -------------------------------------
    1.61  Add "msi=1" option in kernel line of host grub.
    1.62 @@ -245,7 +284,7 @@ using it in VT-d environment. You need t
    1.63  use the Virtual Function bus, device and function number in the HVM
    1.64  guest configuration file and then boot the HVM guest. You also need the
    1.65  Virtual Function driver which is the normal PCI device driver in the
    1.66 -HMV guest to drive the Virtual Function. The PCIe SR-IOV specification
    1.67 +HVM guest to drive the Virtual Function. The PCIe SR-IOV specification
    1.68  requires that the Virtual Function can only support MSI/MSI-x if it
    1.69  uses interrupt. This means you also need to enable Xen/MSI support.
    1.70  Since the Virtual Function is dynamically allocated by Physical Function