[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-japanese] PCIパススルーを行うための手順
産総研の須崎です。はじめて投稿します。 パススルーは興味があり試しているのですが、まだうまく行っていません。 よろしければ動作が確認されたマザーボード(BIOSのバージョンを含む)と PCIデバイスを教えて頂けれると助かります。 ちなみにこちらで試しているのはマザーボードは Intel DQ35JO です。 Xen VT-dの設定については下記のHPを参考にしていました。 http://wiki.xensource.com/xenwiki/VTdHowTo ------ suzaki >>From: Yuji Shimada <shimada-yxb@xxxxxxxxxxxxxxx> >>Subject: [Xen-japanese] PCIパススルーを行うための手順 >> >>現在のXenではPCIデバイスのPCIパススルーが行えるようになっています。 >>(IOMMU(I/O Memory Management Unit)内蔵のチップセットが搭載されている >> マシンを使用することが条件) >> >>PCIパススルーとはゲスト・ドメインが直接PCIデバイスを操作することです。 >> >>エミュレーション方式に代えて、PCIパススルーを使用することで、仮想化されて >>いないOSからPCIデバイスを操作するのとほとんど代わりない性能を得ることが >>できます。 >>現在、様々なPCIデバイスをPCIパススルーによって操作できます。 >>しかし、PCIパススルーで動かないPCIデバイスも存在していると考えています。 >> >>ですので、問題が発生した方がいましたらご報告をお願いします。 >>なるべくご対応させていただきたいと思います。 >> >>以下にPCIパススルーを行うための手順を示します。 >> >> >>[PCIパススルーを行うためのXen Unstable版の構築手順] >> 1.Xen Unstableをネットワーク経由で取得。 >> >> # hg clone http://xenbits.xensource.com/xen-unstable.hg >> # cd xen-unstable.hg >> >> 2.pcibackドライバをビルトインする。 >> >> # make linux-2.6-xen-config CONFIGMODE=menuconfig >> >> ----------設定---------- >> Xen ---> >> <*> PCI-device backend driver >> ----------設定---------- >> >> 3.Xenをビルドする。 >> >> # make >> >> 4.Xenをインストールする。 >> >> # make install >> >> 5.modules.depの作成 >> >> # depmod -F /boot/System.map-2.6.18.8-xen 2.6.18.8-xen >> >> 6.イニシャルRAMディスクの作成 >> >> # mkinitrd -f /boot/initrd-2.6.18.8-xen.img 2.6.18.8-xen >> >> 7.ゲスト・ドメインに割り当てるPCIデバイスのBDF(Bus No. Device No. >> Function No.)を確認する。 >> (今回はIDEカードとNICを割り当てることとして話を進める。) >> >> # lspci >> >> 00:19.0 Ethernet controller: Intel Corporation 82566DM-2 >> Gigabit Network Connection (rev 02) >> ... >> 01:01.0 Mass storage controller: Integrated Technology Express, Inc. >> IT/ITE8212 Dual channel ATA RAID controller (rev 13) >> ... >> >> 8.ブート・ローダの"reassigndev"パラメータでゲスト・ドメインに割り当てる >> PCIデバイスのリソースの再割当を行う。 >> また、"pciback.hide"パラメータでゲスト・ドメインに割り当てるPCIデバイス >> をpcibackドライバでバインドする。 >> >> # vi /boot/grub/grub.conf >> >> ----------編集---------- >> title Xen-3.4-Unstable (2.6.18.8-xen) >> root (hd0,0) >> kernel /boot/xen-3.4-unstable.gz iommu >> module /boot/vmlinuz-2.6.18.8-xen ro root=LABEL=/ >> reassigndev=0000:00:19.0,0000:01:01.0 >> pciback.hide=(0000:00:19.0)(0000:01:01.0) >> module /boot/initrd-2.6.18.8-xen.img >> ----------編集---------- >> >> 9.Xen Unstable版を起動する。 >> >> # reboot >> >> >>[割当手順] >> 1.ゲスト・ドメインに割り当てるPCIデバイスのBDFをゲストの設定ファイルに >> 記載する。 >> >> # vi /etc/xen/GUEST.hvm >> >> pci = [ '00:19.0','01:01.0' ] >> >> 2.ゲスト・ドメインを起動する。 >> >> # xm create /etc/xen/GUEST.hvm >> >> 3.割り当てたPCIデバイスをゲスト・ドメインから使用できるかを確認する。 >> (ゲスト・ドメインとしてLinuxを使用したときの確認方法) >> >> # lspci >> >> 00:10.0 Ethernet controller: Intel Corporation 82566DM-2 >> Gigabit Network Connection (rev 02) >> ... >> 01:09.0 Mass storage controller: Integrated Technology Express, Inc. >> IT/ITE8212 Dual channel ATA RAID controller (rev 13) >> ... >> >> >>[補足] >> BDFを使用したPCIデバイスの指定方法ではブート時に番号が変更されてしまう >> 恐れがあります。 >> しかし、デバイス・パスと呼ばれるパラメータを用いてPCIデバイスを指定する >> と、そのデバイス・パスは変更されることなく、永続的なパラメータとして >> ゲスト・ドメインに割り当てるPCIデバイスを指定することができます。 >> デバイス・パスの書式は以下のようになっています。 >> >> <hid>[:<uid>]-<dev>.<func>[-<dev>.<func>[...]] >> >> 例) PNP0A03:100-1c.1-00.0 >> >> このデバイス・パスを用いて、ゲスト・ドメインに割り当てる予定のPCIデバイス >> を指定する"guestdev"というブート・パラメータをdom0 Linuxに追加するパッチ >> がXen Unstableに投稿されています。(現在、未採用) >> >> 例) reassign_resources guestdev=PNP0A03:100-1c.1-00.0,PNP0A03:100-1d.7 >> >> >> (参照)http://lists.xensource.com/archives/html/xen-devel/2008-12/msg01093.html >> >> BDFからデバイス・パスに変換することができるスクリプト(device_path.py)も >> 投稿されています。 >> >> >> (参照)http://lists.xensource.com/archives/html/xen-devel/2008-12/msg01116.html >> >> このスクリプトは以下のように使用できます。 >> >> # chmod 755 device_path.py >> # device_path.py 07:00.0 >> >> PNP0A03:100-1c.1-00.0 >> >> >>ご質問等ありましたらお気軽にどうぞ。 >>それでは、よろしくお願いします。 >>-- >>NECシステムテクノロジー 島田雄二 >> >> _______________________________________________ Xen-japanese mailing list Xen-japanese@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/mailman/listinfo/xen-japanese
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |