agora eu sei que esse assunto já foi mencionado antes, mas esses tópicos já estão antigos e um pouco fora de moda.
Por isso, tenho acompanhado recentemente alguns guias diferentes para que esse sistema funcione, principalmente;
link
link
Até agora não estou tendo sorte. Meu sistema consiste em:
Intel Xeon e3-1230V2 with VT-d
Asrock Fatal1ty Pro z77 with VT-d enabled
A nvida 9800gt - for main host
a gtx 780 for windows vm
a gtx 750ti for windows vm
usando o segundo guia eu sou capaz de obter os cartões que eu quero como "reivindicada por stub", mas me deparo com um problema ao tentar executar o vm.
Atualmente, meu sistema está agrupando meu 780 (dispositivo 0000: 01: 00.0) com meu 9800gt (dispositivo 0000: 02: 00.0) juntos, o que me diz que não posso executar o vm, pois não aloquei todo o grupo .
Eu tenho visto mencionar que instalar um patch de substituição acs pode funcionar dividindo os dispositivos em grupos menores para permitir que eu passe a GPU, mas até agora cada tutorial ou tópico apenas diz "compile o patch" ou "add this linha para o cmd ".
Eu não vi em nenhum lugar explicar como instalar o patch no ubuntu 14.04 ou se eu precisar fazer qualquer outra coisa.
Alguém mais conseguiu fazer tudo funcionar?
Toda ajuda é muito apreciada e, se possível, por favor, tente explicar as coisas da maneira mais simples possível. Embora eu conheço o linux, eu não o sei do topo da minha cabeça
Nota: a 9800gt é na verdade a segunda placa do sistema e a disposição não pode ser alterada, então o dispositivo de exibição padrão atualmente vai para o 780
Editar
Acabei de encontrar estes guias para o debian
Patch
#!/bin/bash
# patch --dry-run --verbose -p 1 -i re_xxxxxxxxxxxxx
echo
echo ... PATCHING ... VGA Arbiter
patch -b -p 1 -i re_patch_01_i915_313rc4.patch
echo
echo ... PATCHING ... acs override
patch -b -p 1 -i re_patch_02_override_for_missing_acs_capabilities.patch
echo
echo ... PATCHING ... memleak
patch -b -p 1 -i re_patch_03_fix_memleak.patch
echo
echo ... PATCHING ... read DR6
patch -b -p 1 -i re_patch_04_fix_reading_of_DR6.patch
echo
echo ... PATCHING ... debug registers - has problem, needs to follow DR6 patch
patch -b -p 1 -i re_patch_05_debug_registers.patch
# patch -b -p 1 -i re_debug_registers_RE.patch # Corrected to add additional lines before DR6 patch runs
echo
echo ... PATCHING ... kernel__gcc
patch -b -p 1 -i re_patch_06_kernel-38-gcc48-2.patch
Compilando
To compile a new kernel
https://wiki.ubuntu.com/Kernel/BuildYourOwnKernel
https://help.ubuntu.com/community/Kernel/Compile
https://wiki.ubuntu.com/KernelTeam/KernelMaintenance
https://www.debian.org/releases/stable/i386/ch08s06.html.en
architecture is "amd64" or "x86_64"
1) download the source into the current directory using "apt-get source linux-image-xxxxx" where xxxx is the name of the version eg. apt-get source linux-image-3.13.0-32-generic
This should download the tarball(s) and extract the source code into a directory (which should be renamed immediately because all versions use the same directory name !!!)
2) Open the new directory, clean up and prepare
chmod a+x debian/scripts/*
chmod a+x debian/scripts/misc/*
fakeroot debian/rules clean
and generate the required config by either -
a) editing using "fakeroot debian/rules editconfigs" (for all targets, one after another) ... or
b) "make menuconfig" and work through the various options. Remember to save before exit
c) copy the current config from the boot directory as ".config" in the root direcotry for the new kernel and then use "make oldconfig" ... which will ask a question for the value of each new config option
Required config options are
CONFIG_VFIO_IOMMU_TYPE1=y in Device Drivers. 2 pages back from end
CONFIG_VFIO=y
CONFIG_VFIO_PCI=y
CONFIG_VFIO_PCI_VGA=y
CONFIG_PCI_STUB=y in Bus Options, second page down
HZ_1000=y in Processor Type & Features (last page)
PREEMPT=voluntary
3) apply any patches /// remember to verify that they worked ok (look for fail)
"sh re_apply_patches.sh > re_output_patch.txt"
4) "fakeroot debian/rules clean" to remove any old build information / files
5) Ignore modules not created with new parameters ... copy re_modules.ignore to ...debian.master/abi/<previous-version>/modules.ignore
and ignore other ABI errors by copying re_prevrelease_arch_ignore (rename to "ignore") to debian.master/abi/<previous-version>/<arch> eg. to debian.master/abi/3.13.0-32.56/amd64/
6) "DEB_BUILD_OPTIONS=parallel=3 skipmodule=true fakeroot debian/rules binary-headers binary-generic > re_output_compile.txt" to generate the deb files which can be installed (second thoughts don't pipe the poutput to a file - it will prevent selection of the CPU type)
7) Install all the Debs with command "sudo dpkg -i linux*<ver>*.deb
eg. sudo dpkg -i linux*3.13.0-32_3.13.0-32.57*.deb
sudo dpkg -i linux*3.13.0-32-generic_3.13.0-32.57*.deb
8) go into Synaptic and lock all the newly installed elements (linux-image*, linux-header*, linux-tool*, linx-cloud-tool*) - to prevent the new kernel and components being overwritten in the next upgrade
Não tenho certeza se isso funcionaria no Ubuntu?