summaryrefslogtreecommitdiff
path: root/hosts/iroha/libvirt
diff options
context:
space:
mode:
Diffstat (limited to 'hosts/iroha/libvirt')
-rw-r--r--hosts/iroha/libvirt/hooks/arcade.conf7
-rw-r--r--hosts/iroha/libvirt/hooks/cpuset.conf4
-rwxr-xr-xhosts/iroha/libvirt/hooks/cpuset_release_common.sh1
l---------hosts/iroha/libvirt/hooks/qemu.d/arcade/prepare/begin/cpuset_prepare_common.sh1
-rwxr-xr-xhosts/iroha/libvirt/hooks/qemu.d/arcade/prepare/begin/port_forward.sh14
l---------hosts/iroha/libvirt/hooks/qemu.d/arcade/release/end/cpuset_release_common.sh1
-rwxr-xr-xhosts/iroha/libvirt/hooks/qemu.d/arcade/release/end/port_close.sh14
-rwxr-xr-xhosts/iroha/libvirt/hooks/qemu.d/corpa/prepare/begin/bind_vfio.sh16
-rwxr-xr-xhosts/iroha/libvirt/hooks/qemu.d/corpa/release/end/unbind_vfio.sh16
-rw-r--r--hosts/iroha/libvirt/qemu/arcade.xml90
-rw-r--r--hosts/iroha/libvirt/qemu/corpa-nogpu.xml237
-rw-r--r--hosts/iroha/libvirt/qemu/corpa.xml119
-rw-r--r--hosts/iroha/libvirt/qemu/soy.xml7
-rw-r--r--hosts/iroha/libvirt/qemu/xp.xml11
14 files changed, 383 insertions, 155 deletions
diff --git a/hosts/iroha/libvirt/hooks/arcade.conf b/hosts/iroha/libvirt/hooks/arcade.conf
index 4282629..acbc430 100644
--- a/hosts/iroha/libvirt/hooks/arcade.conf
+++ b/hosts/iroha/libvirt/hooks/arcade.conf
@@ -1,4 +1,3 @@
-VIRSH_GPU_VIDEO=pci_0000_0f_00_0
-VIRSH_GPU_AUDIO=pci_0000_0f_00_1
-VIRSH_USB=pci_0000_03_00_0
-VIRSH_NVME=pci_0000_0e_00_0
+VIRSH_GPU_VIDEO=pci_0000_10_00_0
+VIRSH_GPU_AUDIO=pci_0000_10_00_1
+VIRSH_USB=pci_0000_12_00_3
diff --git a/hosts/iroha/libvirt/hooks/cpuset.conf b/hosts/iroha/libvirt/hooks/cpuset.conf
index d208294..74cb68b 100644
--- a/hosts/iroha/libvirt/hooks/cpuset.conf
+++ b/hosts/iroha/libvirt/hooks/cpuset.conf
@@ -1,6 +1,6 @@
TOTAL_CORES='0-23' # 3900X: 12-core, 24-thread cpu
-HOST_CORES='0-4,12-16'
-VIRT_CORES0='5-11,17-23'
+HOST_CORES='6-11,18-23'
+VIRT_CORES0='0-5,12-17'
MEMNODES='0'
CPUSET_REFCOUNT=/tmp/cpuset-ref
diff --git a/hosts/iroha/libvirt/hooks/cpuset_release_common.sh b/hosts/iroha/libvirt/hooks/cpuset_release_common.sh
index 624fa5b..d30a3d6 100755
--- a/hosts/iroha/libvirt/hooks/cpuset_release_common.sh
+++ b/hosts/iroha/libvirt/hooks/cpuset_release_common.sh
@@ -25,6 +25,7 @@ fi
for i in blkio cpu cpuacct cpuset devices freezer memory net_cls perf_event;
do
rmdir ${CGROUP}/$i/machine/${PARTNAME0}.partition
+ rmdir ${CGROUP}/$i/machine/${PARTNAME1}.partition
done
/bin/echo ${TOTAL_CORES} > ${CPUSET}/machine/cpuset.cpus
diff --git a/hosts/iroha/libvirt/hooks/qemu.d/arcade/prepare/begin/cpuset_prepare_common.sh b/hosts/iroha/libvirt/hooks/qemu.d/arcade/prepare/begin/cpuset_prepare_common.sh
deleted file mode 120000
index fb5a2ab..0000000
--- a/hosts/iroha/libvirt/hooks/qemu.d/arcade/prepare/begin/cpuset_prepare_common.sh
+++ /dev/null
@@ -1 +0,0 @@
-../../../../cpuset_prepare_common.sh \ No newline at end of file
diff --git a/hosts/iroha/libvirt/hooks/qemu.d/arcade/prepare/begin/port_forward.sh b/hosts/iroha/libvirt/hooks/qemu.d/arcade/prepare/begin/port_forward.sh
deleted file mode 100755
index 7d5d484..0000000
--- a/hosts/iroha/libvirt/hooks/qemu.d/arcade/prepare/begin/port_forward.sh
+++ /dev/null
@@ -1,14 +0,0 @@
-#! /usr/bin/env bash
-
-# kdeconnect
-iptables -t nat -C PREROUTING -p tcp -s 192.168.1.0/24 --dport 1714:1764 \
- -j DNAT --to-destination 192.168.122.40:1714-1764 || \
-iptables -t nat -A PREROUTING -p tcp -s 192.168.1.0/24 --dport 1714:1764 \
- -j DNAT --to-destination 192.168.122.40:1714-1764
-iptables -t nat -C PREROUTING -p udp -s 192.168.1.0/24 --dport 1714:1764 \
- -j DNAT --to-destination 192.168.122.40:1714-1764 || \
-iptables -t nat -A PREROUTING -p udp -s 192.168.1.0/24 --dport 1714:1764 \
- -j DNAT --to-destination 192.168.122.40:1714-1764
-
-iptables -C FORWARD -m state -d 192.168.122.0/24 --state NEW,RELATED,ESTABLISHED -j ACCEPT || \
-iptables -I FORWARD -m state -d 192.168.122.0/24 --state NEW,RELATED,ESTABLISHED -j ACCEPT
diff --git a/hosts/iroha/libvirt/hooks/qemu.d/arcade/release/end/cpuset_release_common.sh b/hosts/iroha/libvirt/hooks/qemu.d/arcade/release/end/cpuset_release_common.sh
deleted file mode 120000
index d823a60..0000000
--- a/hosts/iroha/libvirt/hooks/qemu.d/arcade/release/end/cpuset_release_common.sh
+++ /dev/null
@@ -1 +0,0 @@
-../../../../cpuset_release_common.sh \ No newline at end of file
diff --git a/hosts/iroha/libvirt/hooks/qemu.d/arcade/release/end/port_close.sh b/hosts/iroha/libvirt/hooks/qemu.d/arcade/release/end/port_close.sh
deleted file mode 100755
index 0d58fa7..0000000
--- a/hosts/iroha/libvirt/hooks/qemu.d/arcade/release/end/port_close.sh
+++ /dev/null
@@ -1,14 +0,0 @@
-#! /usr/bin/env bash
-
-# kdeconnect (remove)
-iptables -t nat -C PREROUTING -p tcp -s 192.168.1.0/24 --dport 1714:1764 \
- -j DNAT --to-destination 192.168.122.40:1714-1764 || \
-iptables -t nat -D PREROUTING -p tcp -s 192.168.1.0/24 --dport 1714:1764 \
- -j DNAT --to-destination 192.168.122.40:1714-1764
-iptables -t nat -C PREROUTING -p udp -s 192.168.1.0/24 --dport 1714:1764 \
- -j DNAT --to-destination 192.168.122.40:1714-1764 || \
-iptables -t nat -D PREROUTING -p udp -s 192.168.1.0/24 --dport 1714:1764 \
- -j DNAT --to-destination 192.168.122.40:1714-1764
-
-iptables -C FORWARD -m state -d 192.168.122.0/24 --state NEW,RELATED,ESTABLISHED -j ACCEPT || \
-iptables -D FORWARD -m state -d 192.168.122.0/24 --state NEW,RELATED,ESTABLISHED -j ACCEPT
diff --git a/hosts/iroha/libvirt/hooks/qemu.d/corpa/prepare/begin/bind_vfio.sh b/hosts/iroha/libvirt/hooks/qemu.d/corpa/prepare/begin/bind_vfio.sh
new file mode 100755
index 0000000..3c602c5
--- /dev/null
+++ b/hosts/iroha/libvirt/hooks/qemu.d/corpa/prepare/begin/bind_vfio.sh
@@ -0,0 +1,16 @@
+#! /usr/bin/env bash
+
+source "/etc/libvirt/hooks/arcade.conf"
+
+modprobe -r nvidia-drm
+modprobe -r nvidia-modeset
+modprobe -r nvidia-uvm
+modprobe -r nvidia
+
+modprobe vfio
+modprobe vfio_iommu_type1
+modprobe vfio_pci
+
+virsh nodedev-detach $VIRSH_GPU_VIDEO
+virsh nodedev-detach $VIRSH_GPU_AUDIO
+virsh nodedev-detach $VIRSH_USB
diff --git a/hosts/iroha/libvirt/hooks/qemu.d/corpa/release/end/unbind_vfio.sh b/hosts/iroha/libvirt/hooks/qemu.d/corpa/release/end/unbind_vfio.sh
new file mode 100755
index 0000000..e3b1234
--- /dev/null
+++ b/hosts/iroha/libvirt/hooks/qemu.d/corpa/release/end/unbind_vfio.sh
@@ -0,0 +1,16 @@
+#! /usr/bin/env bash
+
+source "/etc/libvirt/hooks/arcade.conf"
+
+virsh nodedev-reattach $VIRSH_GPU_VIDEO
+virsh nodedev-reattach $VIRSH_GPU_AUDIO
+virsh nodedev-reattach $VIRSH_USB
+
+modprobe -r vfio_pci
+modprobe -r vfio_iommu_type1
+modprobe -r vfio
+
+modprobe nvidia-drm
+modprobe nvidia-modeset
+modprobe nvidia-uvm
+modprobe nvidia
diff --git a/hosts/iroha/libvirt/qemu/arcade.xml b/hosts/iroha/libvirt/qemu/arcade.xml
index 79e9216..5280dc9 100644
--- a/hosts/iroha/libvirt/qemu/arcade.xml
+++ b/hosts/iroha/libvirt/qemu/arcade.xml
@@ -7,7 +7,7 @@ or other application using the libvirt API.
<domain type='kvm'>
<name>arcade</name>
- <uuid>0ccf2904-b393-41b0-98a6-3c8722efdc94</uuid>
+ <uuid>ddc28570-735e-0000-0000-000000000000</uuid>
<metadata>
<libosinfo:libosinfo xmlns:libosinfo="http://libosinfo.org/xmlns/libvirt/domain/1.0">
<libosinfo:os id="http://microsoft.com/win/11"/>
@@ -15,10 +15,8 @@ or other application using the libvirt API.
</metadata>
<memory unit='KiB'>16777216</memory>
<currentMemory unit='KiB'>16777216</currentMemory>
- <memoryBacking>
- <hugepages/>
- </memoryBacking>
- <vcpu placement='static'>6</vcpu>
+ <vcpu placement='static'>12</vcpu>
+ <iothreads>1</iothreads>
<cputune>
<vcpupin vcpu='0' cpuset='0'/>
<vcpupin vcpu='1' cpuset='12'/>
@@ -26,36 +24,43 @@ or other application using the libvirt API.
<vcpupin vcpu='3' cpuset='13'/>
<vcpupin vcpu='4' cpuset='2'/>
<vcpupin vcpu='5' cpuset='14'/>
+ <vcpupin vcpu='6' cpuset='3'/>
+ <vcpupin vcpu='7' cpuset='15'/>
+ <vcpupin vcpu='8' cpuset='4'/>
+ <vcpupin vcpu='9' cpuset='16'/>
+ <vcpupin vcpu='10' cpuset='5'/>
+ <vcpupin vcpu='11' cpuset='17'/>
+ <emulatorpin cpuset='6,18'/>
+ <iothreadpin iothread='1' cpuset='7,19'/>
+ <emulatorsched scheduler='fifo' priority='10'/>
+ <vcpusched vcpus='0' scheduler='fifo' priority='1'/>
+ <vcpusched vcpus='1' scheduler='fifo' priority='1'/>
+ <vcpusched vcpus='2' scheduler='fifo' priority='1'/>
+ <vcpusched vcpus='3' scheduler='fifo' priority='1'/>
+ <vcpusched vcpus='4' scheduler='fifo' priority='1'/>
+ <vcpusched vcpus='5' scheduler='fifo' priority='1'/>
+ <vcpusched vcpus='6' scheduler='fifo' priority='1'/>
+ <vcpusched vcpus='7' scheduler='fifo' priority='1'/>
+ <vcpusched vcpus='8' scheduler='fifo' priority='1'/>
+ <vcpusched vcpus='9' scheduler='fifo' priority='1'/>
+ <vcpusched vcpus='10' scheduler='fifo' priority='1'/>
+ <vcpusched vcpus='11' scheduler='fifo' priority='1'/>
</cputune>
<os firmware='efi'>
- <type arch='x86_64' machine='pc-q35-9.0'>hvm</type>
+ <type arch='x86_64' machine='pc-q35-9.1'>hvm</type>
<firmware>
<feature enabled='no' name='enrolled-keys'/>
<feature enabled='no' name='secure-boot'/>
</firmware>
- <loader readonly='yes' type='pflash'>/usr/share/edk2-ovmf/OVMF_CODE.fd</loader>
- <nvram template='/usr/share/edk2-ovmf/OVMF_VARS.fd'>/var/lib/libvirt/qemu/nvram/arcade_VARS.fd</nvram>
+ <loader readonly='yes' type='pflash' format='raw'>/usr/share/edk2-ovmf/OVMF_CODE.fd</loader>
+ <nvram template='/usr/share/edk2-ovmf/OVMF_VARS.fd' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/arcade_VARS.fd</nvram>
<smbios mode='host'/>
</os>
<features>
<acpi/>
<apic/>
- <hyperv mode='custom'>
- <relaxed state='on'/>
- <vapic state='on'/>
- <spinlocks state='on' retries='8191'/>
- <vpindex state='on'/>
- <runtime state='on'/>
- <synic state='on'/>
- <stimer state='on'>
- <direct state='on'/>
- </stimer>
- <reset state='off'/>
- <frequencies state='on'/>
- <reenlightenment state='off'/>
- <tlbflush state='on'/>
- <ipi state='on'/>
- <evmcs state='off'/>
+ <hyperv mode='passthrough'>
+ <vendor_id state='on' value='OriginalAMD'/>
</hyperv>
<kvm>
<hidden state='on'/>
@@ -64,20 +69,21 @@ or other application using the libvirt API.
<smm state='off'/>
<msrs unknown='ignore'/>
</features>
- <cpu mode='host-passthrough' check='none' migratable='on'>
- <topology sockets='1' dies='1' clusters='1' cores='3' threads='2'/>
+ <cpu mode='host-passthrough' check='none' migratable='off'>
+ <topology sockets='1' dies='1' clusters='1' cores='6' threads='2'/>
<cache mode='passthrough'/>
<feature policy='require' name='topoext'/>
<feature policy='require' name='hypervisor'/>
<feature policy='require' name='invtsc'/>
+ <feature policy='require' name='svm'/>
<feature policy='disable' name='monitor'/>
- <feature policy='disable' name='svm'/>
</cpu>
<clock offset='localtime'>
- <timer name='rtc' tickpolicy='catchup'/>
+ <timer name='rtc' present='no' tickpolicy='catchup'/>
<timer name='pit' tickpolicy='delay'/>
<timer name='hpet' present='no'/>
<timer name='tsc' present='yes' mode='native'/>
+ <timer name='kvmclock' present='no'/>
<timer name='hypervclock' present='yes'/>
</clock>
<on_poweroff>destroy</on_poweroff>
@@ -89,6 +95,14 @@ or other application using the libvirt API.
</pm>
<devices>
<emulator>/usr/bin/qemu-system-x86_64</emulator>
+ <disk type='file' device='disk'>
+ <driver name='qemu' type='qcow2' cache='writeback' io='io_uring' discard='unmap' iothread='1'/>
+ <source file='/var/lib/libvirt/images/arcade.qcow2'/>
+ <target dev='vda' bus='virtio'/>
+ <serial>WD_BLACK_SN770_1TB_230423802979_1</serial>
+ <boot order='2'/>
+ <address type='pci' domain='0x0000' bus='0x05' slot='0x00' function='0x0'/>
+ </disk>
<controller type='pci' index='0' model='pcie-root'/>
<controller type='pci' index='1' model='pcie-root-port'>
<model name='pcie-root-port'/>
@@ -172,15 +186,12 @@ or other application using the libvirt API.
<controller type='sata' index='0'>
<address type='pci' domain='0x0000' bus='0x00' slot='0x1f' function='0x2'/>
</controller>
- <controller type='virtio-serial' index='0'>
- <address type='pci' domain='0x0000' bus='0x03' slot='0x00' function='0x0'/>
- </controller>
<controller type='usb' index='0' model='qemu-xhci' ports='15'>
<address type='pci' domain='0x0000' bus='0x06' slot='0x00' function='0x0'/>
</controller>
- <interface type='bridge'>
+ <interface type='network'>
<mac address='52:54:00:b3:a7:83'/>
- <source bridge='virbr0'/>
+ <source network='default'/>
<model type='virtio'/>
<address type='pci' domain='0x0000' bus='0x01' slot='0x00' function='0x0'/>
</interface>
@@ -192,26 +203,19 @@ or other application using the libvirt API.
<audio id='1' type='none'/>
<hostdev mode='subsystem' type='pci' managed='yes'>
<source>
- <address domain='0x0000' bus='0x0e' slot='0x00' function='0x0'/>
+ <address domain='0x0000' bus='0x12' slot='0x00' function='0x3'/>
</source>
- <boot order='1'/>
<address type='pci' domain='0x0000' bus='0x04' slot='0x00' function='0x0'/>
</hostdev>
<hostdev mode='subsystem' type='pci' managed='yes'>
<source>
- <address domain='0x0000' bus='0x03' slot='0x00' function='0x0'/>
- </source>
- <address type='pci' domain='0x0000' bus='0x05' slot='0x00' function='0x0'/>
- </hostdev>
- <hostdev mode='subsystem' type='pci' managed='yes'>
- <source>
- <address domain='0x0000' bus='0x0f' slot='0x00' function='0x0'/>
+ <address domain='0x0000' bus='0x10' slot='0x00' function='0x0'/>
</source>
<address type='pci' domain='0x0000' bus='0x07' slot='0x00' function='0x0'/>
</hostdev>
<hostdev mode='subsystem' type='pci' managed='yes'>
<source>
- <address domain='0x0000' bus='0x0f' slot='0x00' function='0x1'/>
+ <address domain='0x0000' bus='0x10' slot='0x00' function='0x1'/>
</source>
<address type='pci' domain='0x0000' bus='0x08' slot='0x00' function='0x0'/>
</hostdev>
diff --git a/hosts/iroha/libvirt/qemu/corpa-nogpu.xml b/hosts/iroha/libvirt/qemu/corpa-nogpu.xml
new file mode 100644
index 0000000..b43ac1b
--- /dev/null
+++ b/hosts/iroha/libvirt/qemu/corpa-nogpu.xml
@@ -0,0 +1,237 @@
+<!--
+WARNING: THIS IS AN AUTO-GENERATED FILE. CHANGES TO IT ARE LIKELY TO BE
+OVERWRITTEN AND LOST. Changes to this xml configuration should be made using:
+ virsh edit corpa-nogpu
+or other application using the libvirt API.
+-->
+
+<domain type='kvm'>
+ <name>corpa-nogpu</name>
+ <uuid>df007a1b-9a75-406a-98d2-b02a9d327715</uuid>
+ <metadata>
+ <libosinfo:libosinfo xmlns:libosinfo="http://libosinfo.org/xmlns/libvirt/domain/1.0">
+ <libosinfo:os id="http://microsoft.com/win/11"/>
+ </libosinfo:libosinfo>
+ </metadata>
+ <memory unit='KiB'>12582912</memory>
+ <currentMemory unit='KiB'>12582912</currentMemory>
+ <memoryBacking>
+ <source type='memfd'/>
+ <access mode='shared'/>
+ </memoryBacking>
+ <vcpu placement='static'>6</vcpu>
+ <iothreads>1</iothreads>
+ <os firmware='efi'>
+ <type arch='x86_64' machine='pc-q35-9.1'>hvm</type>
+ <firmware>
+ <feature enabled='no' name='enrolled-keys'/>
+ <feature enabled='no' name='secure-boot'/>
+ </firmware>
+ <loader readonly='yes' type='pflash' format='raw'>/usr/share/edk2-ovmf/OVMF_CODE.fd</loader>
+ <nvram template='/usr/share/edk2-ovmf/OVMF_VARS.fd' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/corpa-nogpu_VARS.fd</nvram>
+ <smbios mode='host'/>
+ </os>
+ <features>
+ <acpi/>
+ <apic/>
+ <hyperv mode='passthrough'>
+ </hyperv>
+ <kvm>
+ <hidden state='on'/>
+ </kvm>
+ <vmport state='off'/>
+ <smm state='off'/>
+ <msrs unknown='ignore'/>
+ </features>
+ <cpu mode='host-passthrough' check='none' migratable='off'>
+ <topology sockets='1' dies='1' clusters='1' cores='3' threads='2'/>
+ <cache mode='passthrough'/>
+ <feature policy='require' name='topoext'/>
+ <feature policy='require' name='hypervisor'/>
+ <feature policy='require' name='invtsc'/>
+ <feature policy='require' name='svm'/>
+ <feature policy='disable' name='monitor'/>
+ </cpu>
+ <clock offset='localtime'>
+ <timer name='rtc' present='no' tickpolicy='catchup'/>
+ <timer name='pit' tickpolicy='delay'/>
+ <timer name='hpet' present='no'/>
+ <timer name='tsc' present='yes' mode='native'/>
+ <timer name='kvmclock' present='no'/>
+ <timer name='hypervclock' present='yes'/>
+ </clock>
+ <on_poweroff>destroy</on_poweroff>
+ <on_reboot>restart</on_reboot>
+ <on_crash>destroy</on_crash>
+ <pm>
+ <suspend-to-mem enabled='no'/>
+ <suspend-to-disk enabled='no'/>
+ </pm>
+ <devices>
+ <emulator>/usr/bin/qemu-system-x86_64</emulator>
+ <disk type='file' device='disk'>
+ <driver name='qemu' type='qcow2' io='io_uring' iothread='1'/>
+ <source file='/var/lib/libvirt/images/corpa-1.qcow2'/>
+ <target dev='vdb' bus='virtio'/>
+ <boot order='1'/>
+ <address type='pci' domain='0x0000' bus='0x08' slot='0x00' function='0x0'/>
+ </disk>
+ <controller type='usb' index='0' model='qemu-xhci' ports='15'>
+ <address type='pci' domain='0x0000' bus='0x02' slot='0x00' function='0x0'/>
+ </controller>
+ <controller type='pci' index='0' model='pcie-root'/>
+ <controller type='pci' index='1' model='pcie-root-port'>
+ <model name='pcie-root-port'/>
+ <target chassis='1' port='0x10'/>
+ <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0' multifunction='on'/>
+ </controller>
+ <controller type='pci' index='2' model='pcie-root-port'>
+ <model name='pcie-root-port'/>
+ <target chassis='2' port='0x11'/>
+ <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x1'/>
+ </controller>
+ <controller type='pci' index='3' model='pcie-root-port'>
+ <model name='pcie-root-port'/>
+ <target chassis='3' port='0x12'/>
+ <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x2'/>
+ </controller>
+ <controller type='pci' index='4' model='pcie-root-port'>
+ <model name='pcie-root-port'/>
+ <target chassis='4' port='0x13'/>
+ <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x3'/>
+ </controller>
+ <controller type='pci' index='5' model='pcie-root-port'>
+ <model name='pcie-root-port'/>
+ <target chassis='5' port='0x14'/>
+ <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x4'/>
+ </controller>
+ <controller type='pci' index='6' model='pcie-root-port'>
+ <model name='pcie-root-port'/>
+ <target chassis='6' port='0x15'/>
+ <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x5'/>
+ </controller>
+ <controller type='pci' index='7' model='pcie-root-port'>
+ <model name='pcie-root-port'/>
+ <target chassis='7' port='0x16'/>
+ <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x6'/>
+ </controller>
+ <controller type='pci' index='8' model='pcie-root-port'>
+ <model name='pcie-root-port'/>
+ <target chassis='8' port='0x17'/>
+ <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x7'/>
+ </controller>
+ <controller type='pci' index='9' model='pcie-root-port'>
+ <model name='pcie-root-port'/>
+ <target chassis='9' port='0x18'/>
+ <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0' multifunction='on'/>
+ </controller>
+ <controller type='pci' index='10' model='pcie-root-port'>
+ <model name='pcie-root-port'/>
+ <target chassis='10' port='0x19'/>
+ <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x1'/>
+ </controller>
+ <controller type='pci' index='11' model='pcie-root-port'>
+ <model name='pcie-root-port'/>
+ <target chassis='11' port='0x1a'/>
+ <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x2'/>
+ </controller>
+ <controller type='pci' index='12' model='pcie-root-port'>
+ <model name='pcie-root-port'/>
+ <target chassis='12' port='0x1b'/>
+ <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x3'/>
+ </controller>
+ <controller type='pci' index='13' model='pcie-root-port'>
+ <model name='pcie-root-port'/>
+ <target chassis='13' port='0x1c'/>
+ <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x4'/>
+ </controller>
+ <controller type='pci' index='14' model='pcie-root-port'>
+ <model name='pcie-root-port'/>
+ <target chassis='14' port='0x1d'/>
+ <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x5'/>
+ </controller>
+ <controller type='pci' index='15' model='pcie-root-port'>
+ <model name='pcie-root-port'/>
+ <target chassis='15' port='0x1e'/>
+ <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x6'/>
+ </controller>
+ <controller type='pci' index='16' model='pcie-to-pci-bridge'>
+ <model name='pcie-pci-bridge'/>
+ <address type='pci' domain='0x0000' bus='0x07' slot='0x00' function='0x0'/>
+ </controller>
+ <controller type='sata' index='0'>
+ <address type='pci' domain='0x0000' bus='0x00' slot='0x1f' function='0x2'/>
+ </controller>
+ <controller type='virtio-serial' index='0'>
+ <address type='pci' domain='0x0000' bus='0x03' slot='0x00' function='0x0'/>
+ </controller>
+ <filesystem type='mount' accessmode='passthrough'>
+ <driver type='virtiofs' queue='1024'/>
+ <binary path='/usr/libexec/virtiofsd' xattr='on'/>
+ <source dir='/mnt/hdd/Roms'/>
+ <target dir='HostMountA'/>
+ <address type='pci' domain='0x0000' bus='0x06' slot='0x00' function='0x0'/>
+ </filesystem>
+ <interface type='bridge'>
+ <mac address='52:54:00:80:5f:39'/>
+ <source bridge='virbr0'/>
+ <model type='virtio'/>
+ <address type='pci' domain='0x0000' bus='0x01' slot='0x00' function='0x0'/>
+ </interface>
+ <channel type='qemu-vdagent'>
+ <source>
+ <clipboard copypaste='yes'/>
+ </source>
+ <target type='virtio' name='org.qemu.guest_agent.0'/>
+ <address type='virtio-serial' controller='0' bus='0' port='2'/>
+ </channel>
+ <channel type='spicevmc'>
+ <target type='virtio' name='com.redhat.spice.0'/>
+ <address type='virtio-serial' controller='0' bus='0' port='1'/>
+ </channel>
+ <input type='mouse' bus='virtio'>
+ <address type='pci' domain='0x0000' bus='0x0b' slot='0x00' function='0x0'/>
+ </input>
+ <input type='keyboard' bus='virtio'>
+ <address type='pci' domain='0x0000' bus='0x0c' slot='0x00' function='0x0'/>
+ </input>
+ <input type='mouse' bus='ps2'/>
+ <input type='keyboard' bus='ps2'/>
+ <tpm model='tpm-crb'>
+ <backend type='emulator' version='2.0'/>
+ </tpm>
+ <graphics type='spice' port='5900' autoport='no' listen='0.0.0.0'>
+ <listen type='address' address='0.0.0.0'/>
+ <channel name='main' mode='insecure'/>
+ <channel name='record' mode='insecure'/>
+ <image compression='auto_glz'/>
+ <jpeg compression='never'/>
+ <zlib compression='auto'/>
+ <playback compression='on'/>
+ <streaming mode='filter'/>
+ <clipboard copypaste='yes'/>
+ <filetransfer enable='no'/>
+ <gl enable='no'/>
+ </graphics>
+ <graphics type='egl-headless'>
+ <gl rendernode='/dev/dri/renderD128'/>
+ </graphics>
+ <sound model='ich9'>
+ <address type='pci' domain='0x0000' bus='0x00' slot='0x1b' function='0x0'/>
+ </sound>
+ <audio id='1' type='none'/>
+ <video>
+ <model type='qxl' ram='65536' vram='65536' vgamem='16384' heads='1' primary='yes'/>
+ <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x0'/>
+ </video>
+ <watchdog model='itco' action='reset'/>
+ <memballoon model='virtio'>
+ <address type='pci' domain='0x0000' bus='0x04' slot='0x00' function='0x0'/>
+ </memballoon>
+ <shmem name='looking-glass'>
+ <model type='ivshmem-plain'/>
+ <size unit='M'>32</size>
+ <address type='pci' domain='0x0000' bus='0x10' slot='0x01' function='0x0'/>
+ </shmem>
+ </devices>
+</domain>
diff --git a/hosts/iroha/libvirt/qemu/corpa.xml b/hosts/iroha/libvirt/qemu/corpa.xml
index fb884f0..af87cf2 100644
--- a/hosts/iroha/libvirt/qemu/corpa.xml
+++ b/hosts/iroha/libvirt/qemu/corpa.xml
@@ -27,34 +27,24 @@ or other application using the libvirt API.
<feature enabled='no' name='enrolled-keys'/>
<feature enabled='no' name='secure-boot'/>
</firmware>
- <loader readonly='yes' type='pflash'>/usr/share/edk2-ovmf/OVMF_CODE.fd</loader>
- <nvram template='/usr/share/edk2-ovmf/OVMF_VARS.fd'>/var/lib/libvirt/qemu/nvram/win11_VARS.fd</nvram>
+ <loader readonly='yes' type='pflash' format='raw'>/usr/share/edk2-ovmf/OVMF_CODE.fd</loader>
+ <nvram template='/usr/share/edk2-ovmf/OVMF_VARS.fd' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/corpa_VARS.fd</nvram>
+ <smbios mode='host'/>
</os>
<features>
<acpi/>
<apic/>
- <hyperv mode='custom'>
- <relaxed state='on'/>
- <vapic state='on'/>
- <spinlocks state='on' retries='8191'/>
- <vpindex state='on'/>
- <runtime state='on'/>
- <synic state='on'/>
- <stimer state='on'/>
- <reset state='off'/>
- <vendor_id state='on' value='whatever'/>
- <frequencies state='on'/>
- <reenlightenment state='off'/>
- <tlbflush state='on'/>
- <ipi state='on'/>
- <evmcs state='off'/>
+ <hyperv mode='passthrough'>
</hyperv>
+ <kvm>
+ <hidden state='on'/>
+ </kvm>
<vmport state='off'/>
<smm state='off'/>
<msrs unknown='ignore'/>
</features>
- <cpu mode='host-passthrough' check='none' migratable='on'>
- <topology sockets='1' dies='1' clusters='1' cores='6' threads='1'/>
+ <cpu mode='host-passthrough' check='none' migratable='off'>
+ <topology sockets='1' dies='1' clusters='1' cores='3' threads='2'/>
<cache mode='passthrough'/>
<feature policy='require' name='topoext'/>
<feature policy='require' name='hypervisor'/>
@@ -63,11 +53,12 @@ or other application using the libvirt API.
<feature policy='disable' name='monitor'/>
</cpu>
<clock offset='localtime'>
- <timer name='rtc' tickpolicy='catchup'/>
+ <timer name='rtc' present='no' tickpolicy='catchup'/>
<timer name='pit' tickpolicy='delay'/>
<timer name='hpet' present='no'/>
- <timer name='hypervclock' present='yes'/>
<timer name='tsc' present='yes' mode='native'/>
+ <timer name='kvmclock' present='no'/>
+ <timer name='hypervclock' present='yes'/>
</clock>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
@@ -78,26 +69,12 @@ or other application using the libvirt API.
</pm>
<devices>
<emulator>/usr/bin/qemu-system-x86_64</emulator>
- <disk type='file' device='cdrom'>
- <driver name='qemu' type='raw'/>
- <source file='/home/andrew/isos/tiny11.iso'/>
- <target dev='sdb' bus='sata'/>
- <readonly/>
- <address type='drive' controller='0' bus='0' target='0' unit='1'/>
- </disk>
- <disk type='file' device='cdrom'>
- <driver name='qemu' type='raw'/>
- <source file='/home/andrew/isos/virtio-win-0.1.262.iso'/>
- <target dev='sdd' bus='sata'/>
- <readonly/>
- <address type='drive' controller='0' bus='0' target='0' unit='3'/>
- </disk>
<disk type='file' device='disk'>
- <driver name='qemu' type='qcow2' cache='writeback' io='io_uring' discard='unmap' iothread='1'/>
- <source file='/var/lib/libvirt/images/corpa.qcow2'/>
- <target dev='vda' bus='virtio'/>
+ <driver name='qemu' type='qcow2' io='io_uring' iothread='1'/>
+ <source file='/var/lib/libvirt/images/corpa-1.qcow2'/>
+ <target dev='vdb' bus='virtio'/>
<boot order='1'/>
- <address type='pci' domain='0x0000' bus='0x05' slot='0x00' function='0x0'/>
+ <address type='pci' domain='0x0000' bus='0x08' slot='0x00' function='0x0'/>
</disk>
<controller type='usb' index='0' model='qemu-xhci' ports='15'>
<address type='pci' domain='0x0000' bus='0x02' slot='0x00' function='0x0'/>
@@ -192,7 +169,7 @@ or other application using the libvirt API.
<driver type='virtiofs' queue='1024'/>
<binary path='/usr/libexec/virtiofsd' xattr='on'/>
<source dir='/mnt/hdd/Roms'/>
- <target dir='SteamLibraryA'/>
+ <target dir='HostMountA'/>
<address type='pci' domain='0x0000' bus='0x06' slot='0x00' function='0x0'/>
</filesystem>
<interface type='bridge'>
@@ -201,18 +178,6 @@ or other application using the libvirt API.
<model type='virtio'/>
<address type='pci' domain='0x0000' bus='0x01' slot='0x00' function='0x0'/>
</interface>
- <serial type='pty'>
- <target type='isa-serial' port='0'>
- <model name='isa-serial'/>
- </target>
- </serial>
- <console type='pty'>
- <target type='serial' port='0'/>
- </console>
- <channel type='spicevmc'>
- <target type='virtio' name='com.redhat.spice.0'/>
- <address type='virtio-serial' controller='0' bus='0' port='1'/>
- </channel>
<channel type='qemu-vdagent'>
<source>
<clipboard copypaste='yes'/>
@@ -220,8 +185,11 @@ or other application using the libvirt API.
<target type='virtio' name='org.qemu.guest_agent.0'/>
<address type='virtio-serial' controller='0' bus='0' port='2'/>
</channel>
- <input type='tablet' bus='usb'>
- <address type='usb' bus='0' port='1'/>
+ <input type='mouse' bus='virtio'>
+ <address type='pci' domain='0x0000' bus='0x0b' slot='0x00' function='0x0'/>
+ </input>
+ <input type='keyboard' bus='virtio'>
+ <address type='pci' domain='0x0000' bus='0x0c' slot='0x00' function='0x0'/>
</input>
<input type='mouse' bus='ps2'/>
<input type='keyboard' bus='ps2'/>
@@ -230,22 +198,47 @@ or other application using the libvirt API.
</tpm>
<graphics type='spice' port='5900' autoport='no' listen='0.0.0.0'>
<listen type='address' address='0.0.0.0'/>
+ <channel name='main' mode='insecure'/>
+ <channel name='record' mode='insecure'/>
+ <image compression='auto_glz'/>
+ <jpeg compression='never'/>
+ <zlib compression='auto'/>
+ <playback compression='on'/>
+ <streaming mode='filter'/>
+ <clipboard copypaste='yes'/>
+ <filetransfer enable='no'/>
<gl enable='no'/>
</graphics>
- <sound model='ich6'>
- <address type='pci' domain='0x0000' bus='0x10' slot='0x01' function='0x0'/>
- </sound>
- <audio id='1' type='spice'/>
+ <audio id='1' type='none'/>
<video>
- <model type='qxl' ram='65536' vram='65536' vgamem='65536' heads='1' primary='yes'/>
- <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x0'/>
+ <model type='none'/>
</video>
- <redirdev bus='usb' type='spicevmc'>
- <address type='usb' bus='0' port='2'/>
- </redirdev>
+ <hostdev mode='subsystem' type='pci' managed='yes'>
+ <source>
+ <address domain='0x0000' bus='0x12' slot='0x00' function='0x3'/>
+ </source>
+ <address type='pci' domain='0x0000' bus='0x05' slot='0x00' function='0x0'/>
+ </hostdev>
+ <hostdev mode='subsystem' type='pci' managed='yes'>
+ <source>
+ <address domain='0x0000' bus='0x10' slot='0x00' function='0x0'/>
+ </source>
+ <address type='pci' domain='0x0000' bus='0x09' slot='0x00' function='0x0'/>
+ </hostdev>
+ <hostdev mode='subsystem' type='pci' managed='yes'>
+ <source>
+ <address domain='0x0000' bus='0x10' slot='0x00' function='0x1'/>
+ </source>
+ <address type='pci' domain='0x0000' bus='0x0a' slot='0x00' function='0x0'/>
+ </hostdev>
<watchdog model='itco' action='reset'/>
<memballoon model='virtio'>
<address type='pci' domain='0x0000' bus='0x04' slot='0x00' function='0x0'/>
</memballoon>
+ <shmem name='looking-glass'>
+ <model type='ivshmem-plain'/>
+ <size unit='M'>64</size>
+ <address type='pci' domain='0x0000' bus='0x10' slot='0x01' function='0x0'/>
+ </shmem>
</devices>
</domain>
diff --git a/hosts/iroha/libvirt/qemu/soy.xml b/hosts/iroha/libvirt/qemu/soy.xml
index 63b8b2a..672957b 100644
--- a/hosts/iroha/libvirt/qemu/soy.xml
+++ b/hosts/iroha/libvirt/qemu/soy.xml
@@ -58,13 +58,6 @@ or other application using the libvirt API.
<boot order='1'/>
<address type='pci' domain='0x0000' bus='0x04' slot='0x00' function='0x0'/>
</disk>
- <disk type='file' device='cdrom'>
- <driver name='qemu' type='raw'/>
- <source file='/home/andrew/isos/ubuntu-23.04-desktop-amd64.iso'/>
- <target dev='sda' bus='sata'/>
- <readonly/>
- <address type='drive' controller='0' bus='0' target='0' unit='0'/>
- </disk>
<controller type='usb' index='0' model='qemu-xhci' ports='15'>
<address type='pci' domain='0x0000' bus='0x02' slot='0x00' function='0x0'/>
</controller>
diff --git a/hosts/iroha/libvirt/qemu/xp.xml b/hosts/iroha/libvirt/qemu/xp.xml
index 6549f0d..2ac5a2a 100644
--- a/hosts/iroha/libvirt/qemu/xp.xml
+++ b/hosts/iroha/libvirt/qemu/xp.xml
@@ -27,14 +27,13 @@ or other application using the libvirt API.
<features>
<acpi/>
<apic/>
- <hyperv mode='custom'>
- <relaxed state='on'/>
- <vapic state='on'/>
- <spinlocks state='on' retries='8191'/>
+ <hyperv mode='passthrough'>
</hyperv>
<vmport state='off'/>
+ <smm state='off'/>
+ <msrs unknown='ignore'/>
</features>
- <cpu mode='host-passthrough' check='none' migratable='on'>
+ <cpu mode='host-passthrough' check='none' migratable='off'>
<topology sockets='1' dies='1' clusters='1' cores='2' threads='1'/>
</cpu>
<clock offset='localtime'>
@@ -67,7 +66,7 @@ or other application using the libvirt API.
</disk>
<disk type='file' device='cdrom'>
<driver name='qemu' type='raw'/>
- <source file='/home/andrew/isos/virtio-win-0.1.262.iso'/>
+ <source file='/home/andrew/isos/virtio-win-0.1.266.iso'/>
<target dev='hdc' bus='ide'/>
<readonly/>
<address type='drive' controller='0' bus='1' target='0' unit='0'/>