How to enable Virtualization AMD-V Aspire one AO725 from BIOS or otherwise
Solution 1
Included procedure for both Intel and AMD as if anyone is on either. Also included some information that you know like grep
for svm
– for completeness sake.
Checking support
Check if visualization is available
-
Intel check if
vmx
is found (VT-x
)grep -o "^flags\s*:.*\svmx\(\s\|$\)" /proc/cpuinfo
-
AMD check if
svm
is found (AMD-V
)grep -o "^flags\s*:.*\ssvm\(\s\|$\)" /proc/cpuinfo
If not found, one are most likely out of luck.
One can also check flags from BIOS by dmidecode
dmidecode --type 4 | grep -i virt
VME (Virtual mode extension) # On a specific i386
Checking status - require root privileges
Read the machine/model specific registers (MSR), (man msr
), using msr-tools
if not enabled (read fails) load msr by:
modprobe msr
Then use rdmsr
, (quick intoduction) to read processor MSR's.
Intel
For Intel processors one can check current status by reading IA32_FEATURE_CONTROL
(1) from the processor.
The IA32_FEATURE_CONTROL MSR (at address
03AH
) provides feature control bits that configure operation of VMX and SMX.
Execute commands:
rdmsr -f 0:0 0x3a # Read bit-field 0 (Lock-bit)
rdmsr -f 2:2 0x3a # Read bit-field 2 (Enable VMX outside SMX operation)
These commands should give:
0:0 2:2
0 ENABLED (Not 100% sure about this one, `kvm-ok` reports VMX
as enabled when 0 – perhaps meant as modifiable.)
1 1 ENABLED
1 0 DISABLED
Bit 2 enables VMX outside SMX operation. If this bit is clear, an attempt to execute VMXON will cause a general- protection exception if executed outside SMX operation. Attempts to set this bit on logical processors that do not support VMX operation cause general-protection exceptions.
(1) Intel® 64 and IA-32 Architectures Software Developer’s Manual Vol. 2C 5-1 pp 1072.
AMD
Read Extended Feature Enable Register (EFER)(2) pp. 55, 103 in PDF where bit 12 is "Secure Virtual Machine Enable" (SVME) which indicate whether hardware virtualization is enabled.
Execute command:
rdmsr -f 12:12 0xc0000080 # If set (1), SVME is enabled.
Secure Virtual Machine Enable (SVME) Bit. Bit 12, read/write. Enables the SVM extensions. When this bit is zero, the SVM instructions cause #UD exceptions. EFER.SVME defaults to a reset value of zero. The effect of turning off EFER.SVME while a guest is running is undefined; therefore, the VMM should always prevent guests from writing EFER. SVM extensions can be disabled by setting VM_CR.SVME_DISABLE.
To check if it is disabled for session check VM_CR.SVME_DISABLE
(2) pp 57, 504 (105, 552 in PDF)
Execute command:
rdmsr -f 4:4 0xc0010114 # If set (1), it is disabled.
as in: you would have to enable in BIOS.
SVMDIS — Bit 4. When this bit is set, writes to EFER treat the SVME bit as MBZ. When this bit is clear, EFER.SVME can be written normally. This bit does not prevent CPUID from reporting that SVM is available. Setting SVMDIS while EFER.SVME is 1 generates a #GP fault, regardless of the current state of VM_CR.LOCK. This bit is not affected by SKINIT. It is cleared by INIT when LOCK is cleared to 0; otherwise, it is not affected.
(2) AMD64 Architecture Programmer’s Manual, Volume 2: System Programming.
KVM
If KVM modules are loaded you'll need to remove them by:
sudo modprobe -r kvm_intel
sudo modprobe -r kvm_amd
for Intel and AMD respectively as they clash with Virtual Box. Ref.
Enabling
For your specific model I guess @Anthon has said plenty.
As he mention, by using UEFI
you most likely would have to reinstall your host system. Other risks by upgrading BIOS is a lot of things where a few
could be:
- New BIOS could trigger latent bugs in hardware.
- The flash of BIOS could crash due to software corruption etc.
- One could have downloaded wrong BIOS (for a different model).
- Computer could crash, loose power in the mids of flash. (AKA freak accident).
- N^x unknown factors could play in.
- etc.
If flash crashes it could render your PC completely unbootable and a fix could prove to be hard. (You can't i.e. boot and fix BIOS.)
You should have a backup of current BIOS and a USB rescue stick.
Search the web, e.g. look at this. Check if your model has "built-in BIOS recovery routine" as mentioned in last post on that page. (As you can see even that can give trouble).
And yes, again as mentioned by Anthon. If you do not have any other PC easily accessible for web-search in case of failure, it is far from recommended.
If you are willing to hack, risk unknown repercussions etc. you can try to use a "unofficial BIOS version". This thread at BOIS-Mods have both software and a general discussion. Would read entire thread thoroughly and ask if any questions.
Depending on your level of interest, time, and knowledge you could also try to hack this on your own ;)
Solution 2
The output from lscpu
indicates what the CPU is capable of doing, not necessarily that this is enabled in the BIOS or that you go into the BIOS and can configure it.
The bios manual of the machine does not have any indication that you can set this, but normally browsing through the limited number of CPU options in your BIOS will show you if you can.
If you cannot find it and you probably have to go for the UEFI capable upgrade of your BIOS provided by Acer which enables (in UEFI mode) the AMD-V. That most likely will require a reinstallation of your host system.
An alternative is try and install ZHGBIOS.FD from BIOS version 1.05 download at the ACER website, there is supposedly an option to set ZSM under Power -> Advanced CPU Control.
If you have not done BIOS upgrades before and/or if this is the only machine you have to get to the Internet in case things go wrong, I cannot recommend either of these options.
Dzamo Norton
Updated on September 18, 2022Comments
-
Dzamo Norton almost 2 years
I'm try to use the virtualbox to virtualize a 64-bit system but the error that I get is:
La aceleración VT-x/AMD-V ha sido habilitada, pero no es funcional. Su sistema invitado de 64-bit fallára al detectar una CPU de 64-bit y no podrá arrancar. Compruebe que VT-x/AMD-V están habilitadas en la BIOS de su computadora anfitrión.
For the ones not knowing Spanish, google translate gives:
VT-x/AMD-V acceleration has been enabled but is not functional. Its system of 64-bit guest will fail to detect a 64-bit CPU and will not boot. Check VT-x/AMD-V are enabled in the BIOS of your host computer.
I've checked the AMD V CPU Virtualization Extensions with the following command:
grep --color svm /proc/cpuinfo
The output is:
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid perfmperf pni monitor ssse3 cx16 popcnt lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch ibs skinit wdt arat cpb hw_pstate npt lbrv svm_lock nrip_save pausefilter flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf pni monitor ssse3 cx16 popcnt lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch ibs skinit wdt arat cpb hw_pstate npt lbrv svm_lock nrip_save pausefilter
Running the command
lscpu
Architecture: x86_64 CPU op-mode(s): 32-bit, 64-bit Byte Order: Little Endian CPU(s): 2 On-line CPU(s) list: 0,1 Thread(s) per core: 1 Core(s) per socket: 2 Socket(s): 1 NUMA node(s): 1 Vendor ID: AuthenticAMD CPU family: 20 Model: 2 Stepping: 0 CPU MHz: 800.000 BogoMIPS: 1996.36 Virtualization: AMD-V L1d cache: 32K L1i cache: 32K L2 cache: 512K NUMA node0 CPU(s): 0,1
Update
Run the command:
grep -o "^flags\s*:.*\ssvm\(\s\|$\)" /proc/cpuinfo
the output is:
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf pni monitor ssse3 cx16 popcnt lahf_lm cmp_legacy svm flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf pni monitor ssse3 cx16 popcnt lahf_lm cmp_legacy svm
so, It's possible fixed it's from the bios or otherwise.
How to fix the mistake? Is it possible at all?
-
Runium about 11 years@CristianChaparroA.: Ah. no, extremely sorry. Forgot to update the
grep
line. Was meaning to update it. From the output you posted you havesvm
. Else I have updated the answer with some more bla bla. ;)