Bug 92871 - nested kvm - Warning in L0 kernel when trying to launch L2 guest in L1 guest
Summary: nested kvm - Warning in L0 kernel when trying to launch L2 guest in L1 guest
Status: NEW
Alias: None
Product: Virtualization
Classification: Unclassified
Component: kvm (show other bugs)
Hardware: All Linux
: P1 normal
Assignee: virtualization_kvm
URL:
Keywords:
Depends on:
Blocks: 94971
  Show dependency tree
 
Reported: 2015-02-06 19:46 UTC by rik.theys
Modified: 2015-03-18 19:28 UTC (History)
1 user (show)

See Also:
Kernel Version: 3.19.0-rc7
Subsystem:
Regression: No
Bisected commit-id:


Attachments

Description rik.theys 2015-02-06 19:46:49 UTC
Hi,

I've enabled nested KVM on my L0 (host) kernel and have created a guest with the CPU model copied from the host. Inside this guest I've installed libvirt and am trying to create a KVM guest (L2 guest). As soon as virt-manager tries to create the domain, the L1 guest reboots and the following WARNING is logged by the L0 kernel:

Feb 06 20:35:18 saturn kernel: ------------[ cut here ]------------
Feb 06 20:35:18 saturn kernel: WARNING: CPU: 0 PID: 2352 at arch/x86/kvm/vmx.c:9190 nested_vmx_vmexit+0x7fe/0x890 [kvm_intel]()
Feb 06 20:35:18 saturn kernel: Modules linked in: vhost_net vhost macvtap macvlan tun xt_CHECKSUM iptable_mangle ipt_MASQUERADE nf_nat_masquerade_ipv4 iptable_nat nf_nat_ipv4 nf_nat ipt_REJECT nf_reject_ipv4 bridge stp llc bnep bluetooth binfmt_misc cpufreq_userspace cpufreq_powersave cpufreq_conservative cpufreq_stats nf_conntrack_ipv6 nf_defrag_ipv6 ip6table_filter ip6_tables xt_tcpudp nf_conntrack_ipv4 nf_defrag_ipv4 xt_conntrack nf_conntrack iptable_filter ip_tables x_tables snd_hda_codec_hdmi cx88_blackbird cx2341x cx22702 cx88_dvb cx88_vp3054_i2c videobuf2_dvb dvb_core wm8775 tuner_simple tuner_types iTCO_wdt iTCO_vendor_support tda9887 tda8290 tuner snd_hda_codec_via snd_hda_codec_generic evdev snd_hda_intel cx8800 snd_hda_controller nouveau cx8802 snd_hda_codec videobuf2_dma_sg joydev cx88_alsa coretemp snd_hwdep
Feb 06 20:35:18 saturn kernel:  videobuf2_memops video mxm_wmi cx88xx wmi videobuf2_core tveeprom rc_core v4l2_common videodev media kvm_intel drm_kms_helper ttm drm snd_pcm arc4 kvm psmouse rt61pci eeprom_93cx6 rt2x00pci rt2x00mmio snd_timer rt2x00lib snd mac80211 cfg80211 i2c_algo_bit i2c_i801 soundcore serio_raw rfkill i7core_edac edac_core 8250_fintek xhci_pci xhci_hcd i2c_core lpc_ich mfd_core asus_atk0110 shpchp button acpi_cpufreq processor thermal_sys loop firewire_sbp2 fuse parport_pc ppdev lp parport autofs4 ext4 crc16 mbcache jbd2 btrfs xor raid6_pq dm_mod raid1 raid0 md_mod sg sr_mod cdrom sd_mod hid_generic usbhid hid usb_storage crc32c_intel firewire_ohci ahci libahci firewire_core crc_itu_t libata scsi_mod ehci_pci ehci_hcd r8169 mii usbcore usb_common                                                        
Feb 06 20:35:18 saturn kernel: CPU: 0 PID: 2352 Comm: qemu-system-x86 Not tainted 3.19.0-rc7 #1                        
Feb 06 20:35:18 saturn kernel: Hardware name: System manufacturer System Product Name/P7P55D-E, BIOS 1504    12/14/2010
Feb 06 20:35:18 saturn kernel:  0000000000000000 ffffffffa06f19fa ffffffff815357b8 0000000000000000                    
Feb 06 20:35:18 saturn kernel:  ffffffff8106cde1 ffff8801e4f53000 0000000000000000 0000000000000014                    
Feb 06 20:35:18 saturn kernel:  0000000000000000 0000000000000000 ffffffffa06de3ce 0000000000000000                    
Feb 06 20:35:18 saturn kernel: Call Trace:                                                                             
Feb 06 20:35:18 saturn kernel:  [<ffffffff815357b8>] ? dump_stack+0x40/0x50                                            
Feb 06 20:35:18 saturn kernel:  [<ffffffff8106cde1>] ? warn_slowpath_common+0x81/0xb0                                  
Feb 06 20:35:18 saturn kernel:  [<ffffffffa06de3ce>] ? nested_vmx_vmexit+0x7fe/0x890 [kvm_intel]                       
Feb 06 20:35:18 saturn kernel:  [<ffffffffa05d370b>] ? kvm_arch_vcpu_ioctl_run+0xd7b/0x1220 [kvm]
Feb 06 20:35:18 saturn kernel:  [<ffffffffa05cf0cc>] ? kvm_arch_vcpu_load+0x4c/0x1f0 [kvm]
Feb 06 20:35:18 saturn kernel:  [<ffffffffa05bf982>] ? kvm_vcpu_ioctl+0x322/0x5d0 [kvm]
Feb 06 20:35:18 saturn kernel:  [<ffffffff8109bdc6>] ? set_next_entity+0x56/0x70
Feb 06 20:35:18 saturn kernel:  [<ffffffff810128e0>] ? __switch_to+0x440/0x5e0
Feb 06 20:35:18 saturn kernel:  [<ffffffff811cf908>] ? do_vfs_ioctl+0x2e8/0x4f0
Feb 06 20:35:18 saturn kernel:  [<ffffffff8110161c>] ? __audit_syscall_entry+0xbc/0x110
Feb 06 20:35:18 saturn kernel:  [<ffffffff810228fb>] ? syscall_trace_enter_phase1+0xfb/0x160
Feb 06 20:35:18 saturn kernel:  [<ffffffffa05c71a4>] ? kvm_on_user_return+0x44/0x80 [kvm]
Feb 06 20:35:18 saturn kernel:  [<ffffffff811cfb91>] ? SyS_ioctl+0x81/0xa0
Feb 06 20:35:18 saturn kernel:  [<ffffffff8153b4cf>] ? int_signal+0x12/0x17
Feb 06 20:35:18 saturn kernel:  [<ffffffff8153b22d>] ? system_call_fastpath+0x16/0x1b
Feb 06 20:35:18 saturn kernel: ---[ end trace e7e11898e469021e ]---

I first hit this bug on the Debian 3.16.7-ckt4-3 kernel, but it's the first kernel I tried so the bug might be older.

This system has the following processor type:

processor       : 0
vendor_id       : GenuineIntel
cpu family      : 6
model           : 30
model name      : Intel(R) Core(TM) i5 CPU         750  @ 2.67GHz
stepping        : 5
microcode       : 0x7
cpu MHz         : 1467.000
cache size      : 8192 KB
physical id     : 0
siblings        : 4
core id         : 0
cpu cores       : 4
apicid          : 0
initial apicid  : 0
fpu             : yes
fpu_exception   : yes
cpuid level     : 11
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 aperfmperf pni dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm sse4_1 sse4_2 popcnt lahf_lm ida dtherm tpr_shadow vnmi flexpriority ept vpid
bugs            :
bogomips        : 5349.73
clflush size    : 64
cache_alignment : 64
address sizes   : 36 bits physical, 48 bits virtual
power management:

rik@saturn:~$ lscpu
Architecture:          x86_64
CPU op-mode(s):        32-bit, 64-bit
Byte Order:            Little Endian
CPU(s):                4
On-line CPU(s) list:   0-3
Thread(s) per core:    1
Core(s) per socket:    4
Socket(s):             1
NUMA node(s):          1
Vendor ID:             GenuineIntel
CPU family:            6
Model:                 30
Model name:            Intel(R) Core(TM) i5 CPU         750  @ 2.67GHz
Stepping:              5
CPU MHz:               1200.000
CPU max MHz:           2668.0000
CPU min MHz:           1200.0000
BogoMIPS:              5349.73
Virtualization:        VT-x
L1d cache:             32K
L1i cache:             32K
L2 cache:              256K
L3 cache:              8192K
NUMA node0 CPU(s):     0-3

Regards,

Rik
Comment 1 Radim Krčmář 2015-03-18 19:28:33 UTC
Fixed with "KVM: nVMX: mask unrestricted_guest if disabled on L0".
(https://lkml.org/lkml/2015/3/17/478)

Note You need to log in before you can comment on or make changes to this bug.