From 669e85b513bcc8f56b2f5184a3aa4dc59f620dbc Mon Sep 17 00:00:00 2001 From: ahaas25 Date: Sun, 23 Feb 2025 23:24:37 -0500 Subject: [PATCH] fix structure --- kvm.conf => hooks/kvm.conf | 0 qemu => hooks/qemu | 0 hooks/qemu.d/win11/prepare/begin/start.sh | 41 +++++++++++++++++++++++ hooks/qemu.d/win11/release/end/stop.sh | 37 ++++++++++++++++++++ 4 files changed, 78 insertions(+) rename kvm.conf => hooks/kvm.conf (100%) rename qemu => hooks/qemu (100%) create mode 100644 hooks/qemu.d/win11/prepare/begin/start.sh create mode 100644 hooks/qemu.d/win11/release/end/stop.sh diff --git a/kvm.conf b/hooks/kvm.conf similarity index 100% rename from kvm.conf rename to hooks/kvm.conf diff --git a/qemu b/hooks/qemu similarity index 100% rename from qemu rename to hooks/qemu diff --git a/hooks/qemu.d/win11/prepare/begin/start.sh b/hooks/qemu.d/win11/prepare/begin/start.sh new file mode 100644 index 0000000..03bc62b --- /dev/null +++ b/hooks/qemu.d/win11/prepare/begin/start.sh @@ -0,0 +1,41 @@ +#!/bin/bash +# Helpful to read output when debugging +set -x + +## Load the config file with our environmental variables +#source "/etc/libvirt/hooks/kvm.conf" + +# Stop display manager +systemctl stop gdm3 +# Stop ollama +# systemctl stop ollama + +# Unbind VTconsoles +echo 0 > /sys/class/vtconsole/vtcon0/bind +echo 0 > /sys/class/vtconsole/vtcon1/bind + +# Unbind EFI-Framebuffer +echo efi-framebuffer.0 > /sys/bus/platform/drivers/efi-framebuffer/unbind + +# Avoid a race condition +sleep 2 + +# Unload all Nvidia drivers +modprobe -r nvidia_drm +modprobe -r nvidia_uvm +modprobe -r nvidia_modeset +modprobe -r drm_kms_helper +modprobe -r nvidia +modprobe -r i2c_nvidia_gpu +modprobe -r drm + +# Unbind the GPU from display driver +#virsh nodedev-detach $VIRSH_GPU_VIDEO +#virsh nodedev-detach $VIRSH_GPU_AUDIO +virsh nodedev-detach pci_0000_08_00_0 +virsh nodedev-detach pci_0000_08_00_1 + +# Load VFIO kernel module +modprobe vfio +modprobe vfio_pci +modprobe vfio_iommu_type1 diff --git a/hooks/qemu.d/win11/release/end/stop.sh b/hooks/qemu.d/win11/release/end/stop.sh new file mode 100644 index 0000000..282cfd2 --- /dev/null +++ b/hooks/qemu.d/win11/release/end/stop.sh @@ -0,0 +1,37 @@ +#!/bin/bash +set -x + +## Load the config file +#source "/etc/libvirt/hooks/kvm.conf" + +# Unload VFIO-PCI Kernel Driver +modprobe -r vfio_pci +modprobe -r vfio_iommu_type1 +modprobe -r vfio + +# Re-Bind GPU to AMD Driver +#virsh nodedev-reattach $VIRSH_GPU_VIDEO +#virsh nodedev-reattach $VIRSH_GPU_AUDIO +virsh nodedev-reattach pci_0000_08_00_0 +virsh nodedev-reattach pci_0000_08_00_1 + + +# Rebind VT consoles +echo 1 > /sys/class/vtconsole/vtcon0/bind +echo 0 > /sys/class/vtconsole/vtcon1/bind + +#nvidia-xconfig --query-gpu-info > /dev/null 2>&1 +# Re-Bind EFI-Framebuffer +echo "efi-framebuffer.0" > /sys/bus/platform/drivers/efi-framebuffer/bind + +#Load nvidia driver +modprobe nvidia_drm +modprobe nvidia_uvm +modprobe nvidia_modeset +modprobe drm_kms_helper +modprobe nvidia +modprobe i2c_nvidia_gpu +modprobe drm + +# Restart Display Manager +systemctl start gdm3