KVM virtualisation configured, but not available.

gaz_c

New Member
Mar 5, 2022
6
0
1
38
Hi!

So I'm new to using Proxmox and apologies if this question has been asked many times before but i'm really struggling to resolve an issue that i currently getting on my server that i've recently set up.

After creating a new VM (with no matter what config) I am getting this message when trying to start the VM:
TASK ERROR: KVM virtualisation configured, but not available. Either disable in VM configuration or enable in BIOS.

I've done so much googling, many results lead back to this forum of others with similar scenarios, some of the questions back to the OP ask what the results are from some commands like dmesg, etc, which i've tried to run which have unfortunately led me nowhere!

Steps i've already taken
  • Reset BIos
  • Checked bios to ensure VT-d and cpu virtualisation is enabled
  • I've even tried unchecking the kvm hardware virtualisation in the options of the vm
  • lsmod | grep kvm returns nothing.
  • ls -l /etc/modprobe.d returns
    Code:
    total 12
    -rw-r--r-- 1 root root  51 Feb 21 20:47 iommu_unsafe_interrupts.conf
    -rw-r--r-- 1 root root  25 Feb 21 18:54 kvm-amd.conf
    -rw-r--r-- 1 root root 171 Nov 24 17:32 pve-blacklist.conf
    I dont know why there is a kvm-amd.conf should this be kvm-intel.conf?!
in /etc/modules:
Code:
vfio
vfio_iommu_type1
vfio_pci
vfio_virqfd

Could I be missing something here like a kvm module for the intel processor? or is the proxmox server not seeing the cpu vt-d being enabled?

Hopefully this is enough for someone to help me troubleshoot this!

Thank you in advance.

Cheers
Garry






 
Did you verify that your CPU supports VT-d and virtualization support? Both your mainboard/BIOS and CPU need to support it. If just your BIOS supports it but your CPU not, then you can set whatever you want in the BIOS and it won't work. Updating the BIOS might also be a good idea if that is a known bug that got fixed meanwhile.
 
Thanks for your reply. Yes the cpu supports both VT-d and virtualisation and my bios is up to date, it’s so strange I’ve had a proxmox server running before on the same hardware.. so not sure what else to do?

Are there any additional configurations I need to check or add? Or specific commands to run?
 
I believe the error is not about VT-d (i.e., PCI passthrough) but about VT-x being disabled. What does grep flags /proc/cpuinfo | tail -n 1 show? Does it contain vmx (for Intel, AMD's called svm)?
As a work-around you could disable KVM hardware acceleration in VM Options but that would make the VM very, very slow.
 
The output from that command is:

Code:
root@proxmoxgc:~# grep flags /proc/cpuinfo | tail -n 1
vmx flags       : vnmi preemption_timer invvpid ept_x_only flexpriority tsc_offset vtpr mtf vapic ept vpid unrestricted_guest

I have already tried disabling the KVM hardware in VM options but that just then gives me another error like this
TASK ERROR: start failed: QEMU exited with code 1

Thanks
 
The output looks strange: almost no flags and vmx at the front of the line. Are you running Proxmox inside some VMWare software instead of real hardware?

EDIT: I was completely wrong, Intel (Xeon?) processors have vmx flags: line as well, which I didn't know. It was just that the flags: line was truncated.
 
Last edited:
No, I'm not running Proxmox on any VMware or existing virtualisation method. This is installed directly on hardware with nothing else - for what it's worth, I've got it running on a HP Proliant MicroServer Gen 8, with an intel 1265L v2 CPU and 16gb RAM. Using an SSD as the disk where Proxmox is directly installed on.

Not sure if this would affect the kvm error or not but I have also got a 4 port NIC installed in a PCI slot which I am passing through using 'pci-passthough' to Proxmox (to do this I had to enable some iommu settings).

Any other ideas? or should I try a fresh install?

Cheers,
Garry
 
Sorry, but I really did not expect plain hardware to have the unrestricted_guest flag. Given the flags you showed, it looks like your CPU does not support vmx with the current Proxmox Linux kernel. What is the output of pveversion?

If your CPU is an Ivy Bridge Intel Xeon E3-1265L v2 then it should definitely support vmx. But it should also show many more flags. Can you show the whole output of cat /proc/cpuinfo? Maybe you need to enable things in the BIOS or update the BIOS?

EDIT: Since your VM won't start, I'm assuming you run the commands on the Proxmox host and not inside a VM.
 
Last edited:
Yeah it's an odd one! so output of pvevefsion is pve-manager/7.1-7/df5740ad (running kernel: 5.13.19-1-pve)

Output of cat /proc/cpuinfo is:

(prints out the below 8 times with minimal differences, assuming this is because it's per processor core or threads or something..)

Code:
processor       : 0
vendor_id       : GenuineIntel
cpu family      : 6
model           : 58
model name      : Intel(R) Xeon(R) CPU E3-1265L V2 @ 2.50GHz
stepping        : 9
microcode       : 0x1c
cpu MHz         : 1842.590
cache size      : 8192 KB
physical id     : 0
siblings        : 8
core id         : 0
cpu cores       : 4
apicid          : 0
initial apicid  : 0
fpu             : yes
fpu_exception   : yes
cpuid level     : 13
wp              : yes
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 cpuid aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm cpuid_fault epb pti tpr_shadow vnmi flexpriority ept vpid fsgsbase smep erms xsaveopt dtherm ida arat pln pts
vmx flags       : vnmi preemption_timer invvpid ept_x_only flexpriority tsc_offset vtpr mtf vapic ept vpid unrestricted_guest
bugs            : cpu_meltdown spectre_v1 spectre_v2 spec_store_bypass l1tf mds swapgs itlb_multihit srbds
bogomips        : 4988.59
clflush size    : 64
cache_alignment : 64
address sizes   : 36 bits physical, 48 bits virtual
power management:
 
That looks normal (now that you copied the whole line) and it does contain vmx. It does indeed repeat for each thread
Is there anything in journalctl that can give more information about the problem with starting the VM?
Have you tried updating your Proxmox (no-subscription is at 7.1-10)? Maybe try installing pve-kernel-5.15 after updating?
 
Sorry for delay in coming back

I'm not sure how to update the Proxmox server or the kernel more specifically. The current version of Proxmox I have is just based on the latest .iso available which I downloaded from here (7.1-2) I then made this into a bootable usb to install.

Is there a command to install the latest kernel? Tempted to try a new fresh install if not!

Cheers
 
I have the same problem but I am running ProxMox in VirtualBox on W11. I have the same setup on my old system that is running W10 and there everything runs fine. Old machine is an I7-6700, the new an AMD5700-X. Compared the 2 setups from the virtual machines and they are the same.
 
Does VirtualBox on Windows 11 support nested virtual machines? Maybe it needs to be enabled in Windows 11 or VirtualBox, but I don't have experience with either.
 
I had the same problem as @warner_k. I found the solution on the VirtualBox forum. You have to completely disable Hyper-V in Win10/11 and there is an extra step for Win11.

First, follow the same solution as Win 10 to disable Hyper-V as documented here.
https://www.cyberithub.com/solved-cannot-enable-nested-vt-x-amd-v-without-nested-paging/

For Win 11 there is another step required. You need to disable Memory integrity
Go to Settings > Privacy & Security > Windows Security > Device Security > Core isolation > Core isolation details, and disable "Memory integrity" and reboot.

As soon as I did that the Enable Nested VT-x/AMD-V checkbox on VirtualBox was no longer greyed out. Checked that and when I started the VM I then had the "V" icon in the lower right of the VM window indicating nested virtualization was working. I think before it was a green turtle icon.

Just enabling the greyed-out check box using the command line solution lets you check the box but it still won't work until you disable memory integrity. The ProxMox documentation should probably be updated to include this extra step for Win11.
 
Last edited:
Sorry for delay in coming back

I'm not sure how to update the Proxmox server or the kernel more specifically. The current version of Proxmox I have is just based on the latest .iso available which I downloaded from here (7.1-2) I then made this into a bootable usb to install.

Is there a command to install the latest kernel? Tempted to try a new fresh install if not!

Cheers
Hi,
Do you find a solution ? I’ve the same problem since I’ve update to kernel 5.15.

I’m using Proxmox on a go dl380p Gen8 and the bios is up to date.
 
I believe the error is not about VT-d (i.e., PCI passthrough) but about VT-x being disabled. What does grep flags /proc/cpuinfo | tail -n 1 show? Does it contain vmx (for Intel, AMD's called svm)?
As a work-around you could disable KVM hardware acceleration in VM Options but that would make the VM very, very slow.
Dear colleague, I don't have "vmx" for my Intel, but in the BIOS I have "Intel virtualization = Enable" and "KVM hardware acceleration = disable".
Does this mean that virtual machines cannot be run on this hardware with these settings?
 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!