LINUX.ORG.RU

XEN. pci passtrough. IOMMU. AMD890FX

 , ,


0

2

Всем доброго.

Товарищи, усиленно ковыряю виртуализацию. Наступил на грабли, теперь думаю, куда двигаться дальше. Имею платформу ASUS M4N68T-M и AMD Phenom II X4 945. Благополучно запустил на ней XEN и несколько PVH доменов, но споткнулся на прокидывании pci-e wifi платы. До конца ещё не уверен, но по всей видимости материнская плата не поддерживает IOMMU, по этому ничего не вышло.

После продолжительных сношений обратился к DeepSeek, который в процессе распросов рассказал мне, что у меня неправильный чипсет (nForce 630a), который, скорее всего не поддерживает IOMMU; зато разрекламировал чипсеты AMD890FX и AMD990FX. Якобы с ними проблем быть не должно. Вопрос к бывалым, кому-то удавалось пробрасывать PCI в XEN на этих чипах?

Ну и добавлю немного выхлопа на всякий случай:

# xl pci-assignable-add 03:00.0
libxl: error: libxl_pci.c:849:libxl__device_pci_assignable_add: failed to quarantine 0000:03:00.0
# xl pci-attach 3 0000:03:00.0
libxl: error: libxl_pci.c:1540:pci_add_dm_done: Domain 3:xc_assign_device failed: Operation not supported
libxl: error: libxl_pci.c:1820:device_pci_add_done: Domain 3:libxl__device_pci_add failed for PCI device 0:3:0.0 (rc -3)
libxl: error: libxl_device.c:1500:device_addrm_aocomplete: unable to add device
 lshw|more
media-srv
    description: Desktop Computer
    product: System Product Name (To Be Filled By O.E.M.)
    vendor: System manufacturer
    version: System Version
    serial: System Serial Number
    width: 64 bits
    capabilities: smbios-2.5 dmi-2.5 smp vsyscall32
    configuration: boot=normal chassis=desktop family=To Be Filled By O.E.M. sku=To Be Filled By O.E.M. uuid=be01f6c0-f201-11de-b2d1-e0cb4ec235a9
  *-core
       description: Motherboard
       product: M4N68T-M
       vendor: ASUSTeK Computer INC.
       physical id: 0
       version: Rev X.0x
       serial: MT709CK19008066
       slot: To Be Filled By O.E.M.
     *-firmware
          description: BIOS
          vendor: American Megatrends Inc.
          physical id: 0
          version: 1301
          date: 07/05/2011
          size: 64KiB
          capacity: 1MiB
          capabilities: isa pci pnp apm upgrade shadowing escd cdboot bootselect socketedrom edd int13floppy1200 int13floppy720 int13floppy2880 int5pr
intscreen int9keyboard int14serial int17printer int10video acpi usb ls120boot zipboot biosbootspecification
     *-cpu
          description: CPU
          product: AMD Phenom(tm) II X4 945 Processor
          vendor: Advanced Micro Devices [AMD]
          physical id: 3
          bus info: cpu@0
          version: 16.4.3
          serial: To Be Filled By O.E.M.
          slot: AM3
          size: 3GHz
          capacity: 3GHz
          width: 64 bits
          clock: 200MHz
          capabilities: lm fpu fpu_exception wp de tsc msr pae mce cx8 apic mca cmov pat clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt rdtsc
p x86-64 3dnowext 3dnow constant_tsc rep_good nopl nonstop_tsc cpuid extd_apicid tsc_known_freq pni cx16 popcnt hypervisor lahf_lm cmp_legacy abm sse4
a misalignsse 3dnowprefetch vmmcall
          configuration: cores=4 enabledcores=4 microcode=16777398
# cat /proc/cmdline
placeholder root=/dev/mapper/system-root ro xen-pciback.passthrough=1 iommu=pt amd_iommu=on
# lsmod | grep xen
xen_pciback           102400  0
xen_netback            81920  8
xen_blkback            53248  10
xen_netfront           49152  1
xen_acpi_processor     20480  0
xen_gntdev             32768  2
xen_evtchn             12288  6
xenfs                  12288  1
xen_privcmd            28672  78 xenfs


Последнее исправление: avrigus (всего исправлений: 1)

у меня неправильный чипсет (nForce 630a),

Он прав.

кому-то удавалось пробрасывать PCI в XEN на этих чипах?

Хз насчёт Xen, но на 990fx в виртуалку видеокарту пробрасывал.

devl547 ★★★★★
()
Ответ на: комментарий от etwrq

есть такое дело. я усмотрел это в chapter 1.2.1 докумета https://docs.amd.com/v/u/en-US/48882_3.10_PUB . я не силён в английском, но как буд-то IOMMU заменяет GART. Я попробую завтра включить его в BIOS, сейчас он отключен.

avrigus
() автор топика
Ответ на: комментарий от avrigus
# dmesg | grep -i -e AMD-Vi -e IOMMU
[    0.000000] Command line: placeholder root=/dev/mapper/system-root ro xen-pciback.passthrough=1 iommu=pt amd_iommu=on
[    0.512364] Kernel command line: placeholder root=/dev/mapper/system-root ro xen-pciback.passthrough=1 iommu=pt amd_iommu=on
[    0.512499] AMD-Vi: Unknown option - 'on'
[    0.975440] iommu: Default domain type: Passthrough (set via kernel command line

похоже cmd line не корректна. пойду почитаю.

avrigus
() автор топика
Последнее исправление: avrigus (всего исправлений: 1)
Ответ на: комментарий от anonymous

Не, не выходит:

# dmesg | grep -i -e AMD-Vi -e IOMMU
[    0.000000] Command line: placeholder root=/dev/mapper/system-root ro xen-pciback.passthrough=1 iommu=pt amd_iommu=force_isolation
[    0.512026] Kernel command line: placeholder root=/dev/mapper/system-root ro xen-pciback.passthrough=1 iommu=pt amd_iommu=force_isolation
[    0.979032] iommu: Default domain type: Passthrough (set via kernel command line)

Похоже пора прекращать и искать другу плату. С это ничего не выйдет.

avrigus
() автор топика
Ответ на: комментарий от steemandlinux

А какая именно материнка? В процессе изучения выяснилось, что чипсет не гарантия. Тут 3 фактора: CPU, чипсет и BIOS. Вчера накопал неплохой вариант на авито, чуть не заказал, оказалось именно в BIOS нет возможности включить IOMMU. Там мутная история, бета версию BIOS с поддержкой IOMMU вендор выдавал владельцам по запросу. Плата GA-890 FXA-UD5

avrigus
() автор топика
Ответ на: комментарий от avrigus

asus crosshair formula iv. На всех асус, у которых чипсет и процессор поддерживают IOMMU v2 работает проброс. Даже на древних Q35 работал.

steemandlinux ★★★★★
()
Последнее исправление: steemandlinux (всего исправлений: 2)