VM unrestricted guest capability required

Status
Not open for further replies.

fogNL

Cadet
Joined
Apr 9, 2015
Messages
6
I've been trying to take advantage of iohyve in my FreeNAS 9.10 install (FreeNAS-9.10.1-U2 (f045a8b)) to get either Ubuntu or Debian installed. My system has a Xeon W3505. I've followed different guides, all of which are pretty much the same, but I can't seem to get it going. I've tried both ubuntu and debian, here is the output from my last attempt:


[root@baal] ~# iohyve set debsrv0 ram=2G cpu=1 os=debian loader=grub-bhyve
Setting debsrv0 ram=2G...
Setting debsrv0 cpu=1...
Setting debsrv0 os=debian...
Setting debsrv0 loader=grub-bhyve...
[root@baal] ~# iohyve install debsrv0 debian-8.6.0-amd64-netinst.iso
Installing debsrv0...
VM unrestricted guest capability required
Error in initializing VM
[root@baal] ~# vm exit[0]
reason VMX
rip 0x0000000000000000
inst_length 0
status 0
exit_reason 33
qualification 0x0000000000000000
inst_type 0
inst_error 0


Launching console in another session just ends with "Connected", and nothing else happens when pressing enter. Double checked bios, all virtualization options are enabled.

Any ideas on this one?
 

m0nkey_

MVP
Joined
Oct 27, 2015
Messages
2,739
Is VT-x enabled in your BIOS?

You can check by running: grep VT-x /var/run/dmesg.boot

You should then see something like this:
Code:
[root@tardis] ~# grep VT-x /var/run/dmesg.boot
  VT-x: PAT,HLT,MTF,PAUSE,EPT,UG,VPID
  VT-x: PAT,HLT,MTF,PAUSE,EPT,UG,VPID

If you see EPT and UG, you're good to go.
 

fogNL

Cadet
Joined
Apr 9, 2015
Messages
6
Code:
fog@baal:~$ grep VT-x /var/run/dmesg.boot
  VT-x: PAT,HLT,MTF,PAUSE,EPT,VPID
fog@baal:~$ 


So what's UG? I guess this is my problem.
 

m0nkey_

MVP
Joined
Oct 27, 2015
Messages
2,739
You will need to check the BIOS for VT-x and VT-d. If you have both, enable them, otherwise just make sure VT-x is enabled.
 

fogNL

Cadet
Joined
Apr 9, 2015
Messages
6
If I remember correctly, only VT-d was listed in the BIOS. I will double-check though, but I went through all bios options to ensure everything was on.
 

fogNL

Cadet
Joined
Apr 9, 2015
Messages
6
I double-checked my BIOS, and the only options for virtualization have been enabled; Virtualization for Direct I/O and Virtualization.

According to https://www.freebsd.org/doc/handbook/virtualization-host-bhyve.html :
The bhyve design requires a processor that supports Intel® Extended Page Tables (EPT) or AMD® Rapid Virtualization Indexing (RVI) or Nested Page Tables (NPT). Hosting Linux® guests or FreeBSD guests with more than one vCPU requires VMX unrestricted mode support (UG).

So, if I'm missing "UG" from my CPU flags, what this tells me is that its not needed if i keep it to 1 vCPU, right? Other than the command I posted earlier of set cpu=1 is there anything else I can do? Or is it simply my hardware just won't let this work?
 

rs225

Guru
Joined
Jun 28, 2014
Messages
878
Your CPU does not support unrestricted guest. bhyve leans heavily on CPU features, while other hypervisors emulate these things in software. UG starts the virtual CPU in real mode(other hypervisors emulate this mode until the OS switches to protected mode). So, there are potentially more reasons than just cpu count that might require it.
 

fogNL

Cadet
Joined
Apr 9, 2015
Messages
6
Alright, thanks everyone for your help, I put this aside for now. I'll be looking to build a new FreeNAS system within the next year or so as the current one is a dell workstation.
 
Status
Not open for further replies.
Top