Мне нужно установить регистр EDX процессора в libvirt согласно: https://support.microsoft.com/en-gb/help/2902739/stop-error-0x109-critical-structure-corruption-on-a-vmware-virtual -с тем не менее я не могу найти опцию ни для libvirt vm xml, ни в файле /usr/share/libvirt/cpu_map.xml

Любая помощь приветствуется.

1 ответ1

0

Даже если вы видите одно и то же сообщение об ошибке на синем экране, я довольно скептически отношусь к тому, что описанное WRT VMWare исправление применимо к KVM. В статье поддержки говорится о конкретной ошибке в конкретной версии VMWare, которая вряд ли будет присутствовать в KVM. Более вероятно, что есть другая проблема, вызывающая тот же конечный результат.

Тем не менее, если вы действительно хотите попробовать это, IIUC, значение VMware ----:0---:----:----:----:----:----:---- представляется двоичной строкой для значения регистра EDX. Это соответствует шестнадцатеричному коду 0x8000000 . В соответствии с базой данных сопоставления идентификаторов ЦП libvirt, это должно относиться к функции rdtscp

<feature name='rdtscp'>
  <cpuid eax_in='0x80000001' edx='0x08000000'/>
</feature>

Включена ли у вас эта функция для вашего гостя или нет, зависит от того, настроена ли какая-либо модель <cpu> в вашем гостевом XML. Предполагая, что у вас настроена модель процессора, вы можете отключить эту функцию следующим образом:

<cpu>
   ...
   <feature name="rdtscp" policy="disable"/>
   ... 
</cpu>

Для получения дополнительной информации см. Https://libvirt.org/formatdomain.html#elementsCPU.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .