Bug 783038

Summary: libvirtError: internal error Cannot find suitable emulator for x86_64
Product: Red Hat Enterprise Linux 6 Reporter: Sandeep Patade <sandeep.patade>
Component: libvirtAssignee: Libvirt Maintainers <libvirt-maint>
Status: CLOSED INSUFFICIENT_DATA QA Contact: Virtualization Bugs <virt-bugs>
Severity: urgent Docs Contact:
Priority: low    
Version: 6.0CC: acathrow, dallan, dyuan, jdenemar, mprivozn, mzhan, rwu, sandeep.patade, zhpeng
Target Milestone: rc   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2012-05-11 16:33:41 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:

Description Sandeep Patade 2012-01-19 06:03:01 UTC
Hi,

I m using RHEL 6.0 with Sony Vaio laptop (x86_64 bit processor) & want to configure KVM. below mentioned is Laptop hardware details for your refrence.


#virsh nodeinfo
System Information
CPU model:           x86_64
CPU(s):              2
CPU frequency:       1600 MHz
CPU socket(s):       1
Core(s) per socket:  2
Thread(s) per core:  1
NUMA cell(s):        1
Memory size:         3891536 kB
----------------------------------------------------------------------------------
Module Information
#lsmod |grep kvm
kvm                   305081  0
----------------------------------------------------------------------------------
Whenever i start the VMM (Virtual Machine Manager) i get the below error message.


Error polling connection 'qemu:///system': internal error Cannot find suitable emulator for x86_64

Error polling connection 'qemu:///system': internal error Cannot find suitable emulator for x86_64

Traceback (most recent call last):
  File "/usr/share/virt-manager/virtManager/engine.py", line 440, in _tick
    conn.tick()
  File "/usr/share/virt-manager/virtManager/connection.py", line 1414, in tick
    newNets, self.nets) = self._update_nets()
  File "/usr/share/virt-manager/virtManager/connection.py", line 1277, in _update_nets
    lookup_func, build_class)
  File "/usr/share/virt-manager/virtManager/connection.py", line 1209, in _poll_helper
    if not check_support():
  File "/usr/share/virt-manager/virtManager/connection.py", line 501, in is_network_capable
    virtinst.support.SUPPORT_CONN_NETWORK)
  File "/usr/lib/python2.6/site-packages/virtinst/support.py", line 574, in check_conn_support
    return _check_support(conn, feature, conn)
  File "/usr/lib/python2.6/site-packages/virtinst/support.py", line 443, in _check_support
    actual_drv_ver = _hv_ver(conn, uri)
  File "/usr/lib/python2.6/site-packages/virtinst/support.py", line 376, in _hv_ver
    ret = cmd(*args)
  File "/usr/lib64/python2.6/site-packages/libvirt.py", line 2823, in getVersion
    if ret == -1: raise libvirtError ('virConnectGetVersion() failed', conn=self)
libvirtError: internal error Cannot find suitable emulator for x86_64
--------------------------------------------------------------------------------

please help me to resolve this issue.

awating your reply 

Thanks...
Sandeep.

Comment 2 Dave Allan 2012-01-19 13:39:41 UTC
Sandeep,

Thank you for taking the time to file a bug report.  Please note, however, that bugzilla is not a method for obtaining product support.  If you have a Red Hat support contract, please contact the support organization so that your request can be properly prioritized.

Dave

Comment 4 Rita Wu 2012-01-20 09:50:48 UTC
Have you ever enable the Virtualization support(vt-d or vt-x) in BIOS?

Comment 5 Sandeep Patade 2012-01-20 10:06:53 UTC
Hi Rita,

I couldn't find any option related to VT in BIOS. do you  have an alternate option to install VM. Please guide

Thanks
Sandeep.

Comment 6 Sandeep Patade 2012-01-20 10:07:33 UTC
Hi Rita,

I couldn't find any option related to VT in BIOS. do you  have an alternate
option to install VM. Please guide

Comment 7 Jiri Denemark 2012-01-20 14:25:08 UTC
What do you see in kernel logs after running the following command?
    modprobe kvm-intel

Anyway, are you sure your CPU has virt support? I heard some Sony Vaio models were even equipped with virt artificially removed...

Comment 8 Dave Allan 2012-01-20 19:51:13 UTC
Here's the KVM FAQ entry on checking to see if virt extensions are present:

http://www.linux-kvm.org/page/FAQ#How_can_I_tell_if_I_have_Intel_VT_or_AMD-V.3F

Comment 9 Sandeep Patade 2012-01-21 06:39:59 UTC
(In reply to comment #7)
> What do you see in kernel logs after running the following command?
>     modprobe kvm-intel
> 
> Anyway, are you sure your CPU has virt support? I heard some Sony Vaio models
> were even equipped with virt artificially removed...

when i run the modprobe kvm-intel command it shows kvm 305081  0

Comment 10 Dave Allan 2012-01-23 02:23:20 UTC
Per the FAQ I referenced above, what is the output of:

egrep '^flags.*(vmx|svm)' /proc/cpuinfo

Comment 11 Sandeep Patade 2012-01-23 07:03:40 UTC
(In reply to comment #10)
> Per the FAQ I referenced above, what is the output of:
> 
> egrep '^flags.*(vmx|svm)' /proc/cpuinfo

In /proc/cpuinfo shows the vmx flags.

Comment 12 Dave Allan 2012-01-23 10:35:57 UTC
(In reply to comment #11)
> (In reply to comment #10)
> > Per the FAQ I referenced above, what is the output of:
> > 
> > egrep '^flags.*(vmx|svm)' /proc/cpuinfo
> 
> In /proc/cpuinfo shows the vmx flags.

Can you please provide the output?

Comment 13 Sandeep Patade 2012-01-23 10:56:05 UTC
pls see the output


flags		: fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts rep_good aperfmperf pni dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm sse4_1 lahf_lm dts tpr_shadow vnmi flexpriority
flags		: fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts rep_good aperfmperf pni dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm sse4_1 lahf_lm dts tpr_shadow vnmi flexpriority

Comment 14 zhpeng 2012-02-08 06:10:56 UTC
I can reproduce it with disabled vt-x vt-d.
And if you did not enabled vt-x vt-d, i don't think this is a bug...
Here are my steps:

Step 1:
check the hardware:

[root@pengzhimoutest ~]# egrep '^flags.*(vmx|svm)' /proc/cpuinfo
flags		: fpu vme de pse tsc msr pae mce cx8 apic 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 xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm sse4_1 sse4_2 x2apic popcnt aes xsave avx lahf_lm ida arat epb xsaveopt pln pts dts tpr_shadow vnmi flexpriority ept vpid

Step 2:
Reboot the machine and disable vt-x vt-d in BIOS.

Step 3:
Login in the RHEL
[root@zhpeng ~]# lsmod |grep kvm
kvm                   353603  0 

[root@zhpeng ~]# modprobe kvm-intel
ERROR: could not insert 'kvm_intel': Operation not supported  ----> this is because i disabled the vt-x vt-d

[root@zhpeng ~]# virt-manager --debug
...

Error polling connection 'qemu:///system': internal error Cannot find suitable
emulator for x86_64
....
libvirtError: internal error Cannot find suitable emulator for x86_64
...


So, Sandeep, will you pls check the BIOS config and this command result?

# modprobe kvm-intel

Comment 15 Dave Allan 2012-02-08 16:52:16 UTC
(In reply to comment #14)
> I can reproduce it with disabled vt-x vt-d.
> Step 2:
> Reboot the machine and disable vt-x vt-d in BIOS.

What is the output of egrep '^flags.*(vmx|svm)' /proc/cpuinfo after you disable vt-x and vt-d in the BIOS?

Comment 16 Dave Allan 2012-02-08 16:55:51 UTC
Sandeep, I looked into this problem briefly as I've heard a number of people complain about KVM not working on Sony Vaio laptops.  Does /var/log/messages contain the following line?

kvm: disabled by bios

Comment 17 zhpeng 2012-02-09 02:58:28 UTC
(In reply to comment #15)
> (In reply to comment #14)
> > I can reproduce it with disabled vt-x vt-d.
> > Step 2:
> > Reboot the machine and disable vt-x vt-d in BIOS.
> 
> What is the output of egrep '^flags.*(vmx|svm)' /proc/cpuinfo after you disable
> vt-x and vt-d in the BIOS?

Well, the output of cpuinfo is:
[root@pengzhimoutest ~]# egrep '^flags.*(vmx|svm)' /proc/cpuinfo
flags  : fpu vme de pse tsc msr pae mce cx8 apic 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 xtopology nonstop_tsc aperfmperf
pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm sse4_1
sse4_2 x2apic popcnt aes xsave avx lahf_lm ida arat epb xsaveopt pln pts dts
tpr_shadow vnmi flexpriority ept vpid
Nothing changed.



And i got this in /var/log/messages:

"Feb 9 10:53:52 zhpeng kernel: kvm: disabled by bios"

Comment 18 Dave Allan 2012-02-09 19:20:02 UTC
Ok, good to know.  Sandeep, I'd really like to hear from you as well.  This is really looking like your laptop disables virt in the BIOS.  Do you see 'disabled by bios' in /var/log/messages?

Comment 20 Dave Allan 2012-05-11 16:33:41 UTC
I'm assuming, without proof, that is is the known Sony laptop problem (See, e.g., [1]), so I'm closing as INSUFFICIENT DATA.  Sandeep, if you can find the 'disabled by bios' message in /var/log/messages, that would be confirmation.

[1] 
http://software.intel.com/en-us/forums/showthread.php?t=63409