Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

KVM: проброс PCI устройства в виртуальную машину (PCI видеокарта). error

1,541 views
Skip to first unread message

alexander

unread,
Sep 20, 2012, 4:00:02 AM9/20/12
to
Привет)
Установил KVM (kernel virtual machine). Модерирую ее через
virt-manager. Хост ОС - Debian Wheezy testing/sid for amd64. Гость -
Windows 7 32 bit Ultimate. Пытаюсь в virt-manager пробросить дискретную
видеокарту (PCI устройство) в венду. Но появляется ошибка. Вот текст
ошибки:

Ошибка запуска : Unable to read from monitor: Connection reset by peer

Traceback (most recent call last):
File "/usr/share/virt-manager/virtManager/asyncjob.py", line 45, in
cb_wrapper callback(asyncjob, *args, **kwargs)
File "/usr/share/virt-manager/virtManager/asyncjob.py", line 66, in
tmpcb callback(*args, **kwargs)
File "/usr/share/virt-manager/virtManager/domain.py", line 1114, in
startup self._backend.create()
File "/usr/lib/python2.7/dist-packages/libvirt.py", line 620, in
create if ret == -1: raise libvirtError ('virDomainCreate() failed',
dom=self) libvirtError: Unable to read from monitor: Connection reset
by peer

Но я знаю, что такого быть не должно!( Что за баг такой? Как починить?
Ничо не нагуглил( HELP!


--
To UNSUBSCRIBE, email to debian-russ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listm...@lists.debian.org
Archive: http://lists.debian.org/20120920185...@omen.dyndns-ip.com

alexander

unread,
Sep 20, 2012, 4:20:02 AM9/20/12
to
В Thu, 20 Sep 2012 18:56:44 +1100
alexander <toym...@gmail.com> пишет:

> Привет)
> Установил KVM (kernel virtual machine). Модерирую ее через
> virt-manager. Хост ОС - Debian Wheezy testing/sid for amd64. Гость -
> Windows 7 32 bit Ultimate. Пытаюсь в virt-manager пробросить
> дискретную видеокарту (PCI устройство) в венду. Но появляется ошибка.
> Вот текст ошибки:
>
> Ошибка запуска : Unable to read from monitor: Connection reset by peer
>
> Traceback (most recent call last):
> File "/usr/share/virt-manager/virtManager/asyncjob.py", line 45, in
> cb_wrapper callback(asyncjob, *args, **kwargs)
> File "/usr/share/virt-manager/virtManager/asyncjob.py", line 66, in
> tmpcb callback(*args, **kwargs)
> File "/usr/share/virt-manager/virtManager/domain.py", line 1114, in
> startup self._backend.create()
> File "/usr/lib/python2.7/dist-packages/libvirt.py", line 620, in
> create if ret == -1: raise libvirtError ('virDomainCreate() failed',
> dom=self) libvirtError: Unable to read from monitor: Connection reset
> by peer
>
> Но я знаю, что такого быть не должно!( Что за баг такой? Как починить?
> Ничо не нагуглил( HELP!

а это появилось после того как я выполнил:
#virsh managedsave-remove MyDomain


шибка запуска : internal error process exited while connecting to
monitor: char device redirected to /dev/pts/3 No IOMMU found. Unable
to assign device "hostdev0" kvm: -device
pci-assign,host=01:00.0,id=hostdev0,configfd=21,bus=pci.0,addr=0x3:
Device 'pci-assign' could not be initialized


Traceback (most recent call last):
File "/usr/share/virt-manager/virtManager/asyncjob.py", line 45, in
cb_wrapper callback(asyncjob, *args, **kwargs)
File "/usr/share/virt-manager/virtManager/asyncjob.py", line 66, in
tmpcb callback(*args, **kwargs)
File "/usr/share/virt-manager/virtManager/domain.py", line 1114, in
startup self._backend.create()
File "/usr/lib/python2.7/dist-packages/libvirt.py", line 620, in
create if ret == -1: raise libvirtError ('virDomainCreate() failed',
dom=self) libvirtError: internal error process exited while connecting
to monitor: char device redirected to /dev/pts/3 No IOMMU found.
Unable to assign device "hostdev0" kvm: -device
pci-assign,host=01:00.0,id=hostdev0,configfd=21,bus=pci.0,addr=0x3:
Device 'pci-assign' could not be initialized


--
To UNSUBSCRIBE, email to debian-russ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listm...@lists.debian.org
Archive: http://lists.debian.org/20120920191...@omen.dyndns-ip.com

Скубриев Владимир

unread,
Sep 20, 2012, 4:40:01 AM9/20/12
to
20.09.2012 12:10, alexander пишет:
> No IOMMU found.
проверьте в данный момент поддерживается виртуализация вообще:

cat /proc/cpuinfo | egrep flags.*'svm|vmx'

вывод этой команды должен быть не пустым там должна быть строка с svm
или vmx в зависимости от платформы intel vs amd

проверьте включен ли у вас IOMMU (если платформа AMD) или VT-d (если
платформа Intel) в BIOS. Он включается отдельно зачастую.

и самый неприятный момент поддержка iommu или vt-d может отсутствовать у
процессора (может быть и системной платы). в этом случае пробросить
устройство не получится.

т.е. у вас может не поддерживаться проброс устройств, даже если
поддерживается виртуализация в целом как процессором так и платой.





--

С Уважением,
специалист по техническому и программному обеспечению,
системный администратор

Скубриев Владимир
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Россия, Ростовская область, г. Таганрог

тел. моб: +7 (918) 504 38 20
skype: v.skubriev
icq: 214-800-502
www: skubriev.ru


--
To UNSUBSCRIBE, email to debian-russ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listm...@lists.debian.org
Archive: http://lists.debian.org/505AD46B...@skubriev.ru

Kirill Shilov

unread,
Sep 20, 2012, 4:40:02 AM9/20/12
to
А твоя система(процессов\материнская плата) точно IOMMU поддерживает?
потому что ругается именно на него.

2012/9/20 alexander <toym...@gmail.com>:
Archive: http://lists.debian.org/CAGWE0TBabnBkCW-u2ADBY_V...@mail.gmail.com

alexander

unread,
Sep 20, 2012, 7:20:02 AM9/20/12
to
В Thu, 20 Sep 2012 12:31:39 +0400
Скубриев Владимир <vlad...@skubriev.ru> пишет:

> 20.09.2012 12:10, alexander пишет:
> > No IOMMU found.
> проверьте в данный момент поддерживается виртуализация вообще:
>
> cat /proc/cpuinfo | egrep flags.*'svm|vmx'
> вывод этой команды должен быть не пустым там должна быть строка с svm
> или vmx в зависимости от платформы intel vs amd

alexander@alexander:~/Gamez/Civ5/drive_c/Program Files/Sid Meiers
Civilization 5.Deluxe Edition.v 1.0.0.20$ cat /proc/cpuinfo | egrep
flags.*'svm|vmx'
flags : fpu vme de pse tsc msr pae mce
cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse
sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs
bts rep_good nopl xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64
monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm pcid sse4_1 sse4_2
x2apic popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm ida
arat epb xsaveopt pln pts dtherm tpr_shadow vnmi flexpriority ept vpid
fsgsbase smep erms flags : fpu vme de pse tsc msr pae
mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr
sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon
pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf pni pclmulqdq
dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm pcid sse4_1
sse4_2 x2apic popcnt tsc_deadline_timer aes xsave avx f16c rdrand
lahf_lm ida arat epb xsaveopt pln pts dtherm tpr_shadow vnmi
flexpriority ept vpid fsgsbase smep erms flags : fpu vme
de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush
dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm
constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc
aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16
xtpr pdcm pcid sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer aes xsave
avx f16c rdrand lahf_lm ida arat epb xsaveopt pln pts dtherm tpr_shadow
vnmi flexpriority ept vpid fsgsbase smep erms flags :
fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36
clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm
constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc
aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16
xtpr pdcm pcid sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer aes xsave
avx f16c rdrand lahf_lm ida arat epb xsaveopt pln pts dtherm tpr_shadow
vnmi flexpriority ept vpid fsgsbase smep erms
alexander@alexander:~/Gamez/Civ5/drive_c/Program Files/Sid Meiers
Civilization 5.Deluxe Edition.v 1.0.0.20$


>
> проверьте включен ли у вас IOMMU (если платформа AMD) или VT-d (если
> платформа Intel) в BIOS. Он включается отдельно зачастую.

IOMMU в BIOS'e не нашел.

>
> и самый неприятный момент поддержка iommu или vt-d может
> отсутствовать у процессора (может быть и системной платы). в этом
> случае пробросить устройство не получится.
>

alexander@alexander:~/Gamez/Civ5/drive_c/Program Files/Sid Meiers
Civilization 5.Deluxe Edition.v 1.0.0.20$ dmesg | grep -e DMAR -e IOMMU
[ 0.000000] ACPI: DMAR 00000000a6fd8000 000B8 (v01 ACRSYS ACRPRDCT
00000001 1025 00040000) [ 0.027340] DMAR: Host address width 36
[ 0.027343] DMAR: DRHD base: 0x000000fed90000 flags: 0x0
[ 0.027351] IOMMU 0: reg_base_addr fed90000 ver 1:0 cap
c0000020e60262 ecap f0101a [ 0.027353] DMAR: DRHD base:
0x000000fed91000 flags: 0x1 [ 0.027359] IOMMU 1: reg_base_addr
fed91000 ver 1:0 cap c9008020660262 ecap f0105a [ 0.027362] DMAR:
RMRR base: 0x000000a6e8f000 end: 0x000000a6eaefff [ 0.027364] DMAR:
RMRR base: 0x000000a7800000 end: 0x000000af9fffff [ 0.027437] IOAPIC
id 0 under DRHD base 0xfed91000 IOMMU 1


> т.е. у вас может не поддерживаться проброс устройств, даже если
> поддерживается виртуализация в целом как процессором так и платой.
>
>
>
да вроде все поддерживается. Удалось пробросить некоторые PCI
устройства. А то устройство которое мне больше всего нужно - это
видеокарта GeForce GT 640M. (на шине PCI) - с поддержкой Optirums
(через Bumblebeed).


--
To UNSUBSCRIBE, email to debian-russ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listm...@lists.debian.org
Archive: http://lists.debian.org/20120920221...@omen.dyndns-ip.com

alexander

unread,
Sep 20, 2012, 7:30:02 AM9/20/12
to
В Thu, 20 Sep 2012 22:19:14 +1100
alexander <toym...@gmail.com> пишет:
Optimus то есть


--
To UNSUBSCRIBE, email to debian-russ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listm...@lists.debian.org
Archive: http://lists.debian.org/20120920222...@omen.dyndns-ip.com

Скубриев Владимир

unread,
Sep 20, 2012, 8:00:01 AM9/20/12
to
20.09.2012 15:19, alexander пишет:
поддержка виртуализации есть и она от intel, т.к. vmx
это видно из того, что нашел grep
>> проверьте включен ли у вас IOMMU (если платформа AMD) или VT-d (если
>> платформа Intel) в BIOS. Он включается отдельно зачастую.
> IOMMU в BIOS'e не нашел.
его и не должно быть, т.к. так технология проброса устройств и и.п.
называется у amd
тебе надо искать vt-d

хотя иногда даже слова vt-d нету в bios, но сама опция есть, только по
другому называется.
>> и самый неприятный момент поддержка iommu или vt-d может
>> отсутствовать у процессора (может быть и системной платы). в этом
>> случае пробросить устройство не получится.
>>
> alexander@alexander:~/Gamez/Civ5/drive_c/Program Files/Sid Meiers
> Civilization 5.Deluxe Edition.v 1.0.0.20$ dmesg | grep -e DMAR -e IOMMU
> [ 0.000000] ACPI: DMAR 00000000a6fd8000 000B8 (v01 ACRSYS ACRPRDCT
> 00000001 1025 00040000) [ 0.027340] DMAR: Host address width 36
> [ 0.027343] DMAR: DRHD base: 0x000000fed90000 flags: 0x0
> [ 0.027351] IOMMU 0: reg_base_addr fed90000 ver 1:0 cap
> c0000020e60262 ecap f0101a [ 0.027353] DMAR: DRHD base:
> 0x000000fed91000 flags: 0x1 [ 0.027359] IOMMU 1: reg_base_addr
> fed91000 ver 1:0 cap c9008020660262 ecap f0105a [ 0.027362] DMAR:
> RMRR base: 0x000000a6e8f000 end: 0x000000a6eaefff [ 0.027364] DMAR:
> RMRR base: 0x000000a7800000 end: 0x000000af9fffff [ 0.027437] IOAPIC
> id 0 under DRHD base 0xfed91000 IOMMU 1
>
>
>> т.е. у вас может не поддерживаться проброс устройств, даже если
>> поддерживается виртуализация в целом как процессором так и платой.
>>
>>
>>
> да вроде все поддерживается. Удалось пробросить некоторые PCI
> устройства. А то устройство которое мне больше всего нужно - это
> видеокарта GeForce GT 640M. (на шине PCI) - с поддержкой Optirums
> (через Bumblebeed).
>
>
тогда не знаю даже. может быть не совместимость связана с видеочипом
nvidia gt 640M
раньше на сайте kvm был список поддерживаемых видео адаптеров

и этот список был очень мал

--

С Уважением,
специалист по техническому и программному обеспечению,
системный администратор

Скубриев Владимир
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Россия, Ростовская область, г. Таганрог

тел. моб: +7 (918) 504 38 20
skype: v.skubriev
icq: 214-800-502
www: skubriev.ru


--
To UNSUBSCRIBE, email to debian-russ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listm...@lists.debian.org
Archive: http://lists.debian.org/505B0256...@skubriev.ru

alexander

unread,
Sep 20, 2012, 8:10:02 AM9/20/12
to
В Thu, 20 Sep 2012 15:47:34 +0400
Хотя погарячился я насчет успешного проброса PCI ( Ща опять ошибки
какие то показываются.. типо устройство занято или что то типо того.
Мож я и не успешно пробросил хз) хех) Но вот ща нашол статью на гугле,
там написано что проброс PCI плохо реализован в KVM, лучше пробовать
Xen. Ну не знаю, помучаю еще несколько дней KVM, если не получится -
буду Xen пробовать)


--
To UNSUBSCRIBE, email to debian-russ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listm...@lists.debian.org
Archive: http://lists.debian.org/20120920230...@omen.dyndns-ip.com

Скубриев Владимир

unread,
Sep 20, 2012, 9:00:02 AM9/20/12
to
20.09.2012 16:02, alexander пишет:
я хоть kvm выбрал изначально для своих небольших серверов (раньше xen не
было в ядре) и kvm мне показался более нативным для linux.

но за полтора года использования kvm, libvirt, virt-manager & etc из
debian testing я не очень то доволен тем как идет прогресс в развитии
средств управления этим kvm.

прогресс есть - но он ИМХО минимален.

у меня такое чувство, что redhat намерено медленно развивает свободные
инструменты. им ведь надо продавать RHEV.

ни кто ведь не будет покупать их ПО, если в debian, fedora, ubuntu все
будет работать из коробки.

куда не ткнись всюду ошибки libvirt`а, virt-manager`а и т.д.

может быть kvm и есть то, чего мы все ждали.

можно посмотреть также на ситуацию с пробросом и с другой стороны.
например со стороны microsoft.

представим себе, что с завтрашнего дня можно полностью перейти на linux
на хостовой системе.

и в госте windows полноценно использовать переферию, 3d ускорение,
пробросы, аппаратные ключи защиты, etc

сразу становиться ясно - это совсем не выгодно корпорации зла.

испытывая иллюзии о настоящем удобстве мы забываем про тех, кто эти
иллюзии создает.

увы на сегодняшний день я полностью разочарован тем, как развивается
виртуализация.

хотя и свято верю в светлое будущее следующих поколений представителей
нашей профессии.


--

С Уважением,
специалист по техническому и программному обеспечению,
системный администратор

Скубриев Владимир
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Россия, Ростовская область, г. Таганрог

тел. моб: +7 (918) 504 38 20
skype: v.skubriev
icq: 214-800-502
www: skubriev.ru


--
To UNSUBSCRIBE, email to debian-russ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listm...@lists.debian.org
Archive: http://lists.debian.org/505B12A6...@skubriev.ru

alexander

unread,
Sep 26, 2012, 8:00:02 AM9/26/12
to
В Thu, 20 Sep 2012 23:02:26 +1100
alexander <toym...@gmail.com> пишет:
еще раз попробовал KVM'шку( Вот чо в логах пишется:

[ 118.490577] pci-stub 0000:01:00.0: claimed by stub
[ 119.607857] pci-stub 0000:01:00.0: BAR 0: can't reserve [mem
0xca000000-0xcaffffff] [ 119.607860] kvm_vm_ioctl_assign_device: Could
not get access to device regions [ 120.236328] NVRM:
request_mem_region failed for 16M @ 0xca000000. This can [ 120.236332]
NVRM: occur when a driver such as rivatv is loaded and claims
[ 120.236334] NVRM: ownership of the device's registers.
[ 120.236346] nvidia: probe of 0000:01:00.0 failed with error -1

чо ему надо? Как починить? HELP!!(


--
To UNSUBSCRIBE, email to debian-russ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listm...@lists.debian.org
Archive: http://lists.debian.org/20120926225...@omen.dyndns-ip.com
0 new messages