Bug 4569

Summary: Kernel crashes when started with kvm enabled
Product: [Build System, Metadata & Runtime] OE-Core Reporter: Khem Raj <raj.khem>
Component: kernelAssignee: Darren Hart <dvhart>
Status: RESOLVED DUPLICATE QA Contact:
Severity: normal    
Priority: Medium CC: bruce.ashfield, cristian.iorga, mihai.lindner, sstncr, tom.zanussi
Version: 1.5   
Target Milestone: 1.5   
Hardware: x86   
OS: x86_64   
Whiteboard:
OS type for building Yocto: --- Type of Regression: Regression (Used to work)
Verified: Documentation change: No (bug/feature does not impact docs)

Description Khem Raj 2013-05-29 03:44:58 UTC
Kernel crashes on qemux86-64 when trying to boot with kvm enabled


Steps to reproduce.

1. Build core-image-minimal with systemd enabled

2. launch it in qemux86-64 with kvm enabled on runqemu cmdline

runqemu ./deploy/eglibc/images/qemux86-64/bzImage-qemux86-64.bin ./deploy/eglibc/images/qemux86-64/systemd-image-qemux86-64.ext3 nographic kvm

The same works fine without kvm. The host I am on is Fedora-19 and gcc 4.8 on host (Fedora) as well as for target (OE)

trimmed logs
============

Linux version 3.8.11-yocto-standard (khem@fedora) (gcc version 4.8.0 (GCC) ) #1 SMP PREEMPT Mon May 27 14:49:59 PDT 2013
...
...

ACPI: Core revision 20121018
ftrace: allocating 24165 entries in 95 pages
..TIMER: vector=0x30 apic1=0 pin1=2 apic2=-1 pin2=-1
smpboot: CPU0: Intel(R) Core(TM) i5-2520M CPU @ 2.50GHz (fam: 06, model: 2a, stepping: 07)
Performance Events: 
general protection fault: 0000 [#1] PREEMPT SMP 
Modules linked in:
CPU 0 
Pid: 1, comm: swapper/0 Not tainted 3.8.11-yocto-standard #1 Bochs Bochs
RIP: 0010:[<ffffffff81ccbb09>]  [<ffffffff81ccbb09>] intel_pmu_init+0x2d9/0x77b
RSP: 0000:ffff88000791de20  EFLAGS: 00000202
RAX: 0000000000000003 RBX: 0000000000000000 RCX: 0000000000000345
RDX: 0000000000000003 RSI: 0000000000000730 RDI: 0000ffffffffffff
RBP: ffff88000791de28 R08: 0000000000000001 R09: 0000000000000007
R10: ffffffff81ca6160 R11: 0000000000000000 R12: ffffffff81ccaede
R13: 0000000000000000 R14: 0000000000000000 R15: 0000000000000000
FS:  0000000000000000(0000) GS:ffff880007c00000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000000000000000 CR3: 0000000001c0b000 CR4: 00000000000406f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
Process swapper/0 (pid: 1, threadinfo ffff88000791c000, task ffff880007920000)
Stack:
 ffffffff81d5acd8 ffff88000791de48 ffffffff81ccaf11 ffffffff81d5acd8
 ffffffff81ccaede ffff88000791de78 ffffffff810002aa ffffffff81d5acd8
 0000000000000001 0000000000000000 0000000000000000 ffff88000791df38
Call Trace:
 [<ffffffff81ccaf11>] init_hw_perf_events+0x33/0x3d5
 [<ffffffff81ccaede>] ? check_bugs+0x2d/0x2d
 [<ffffffff810002aa>] do_one_initcall+0x10a/0x150
 [<ffffffff81cc3c1b>] kernel_init_freeable+0xb8/0x214
 [<ffffffff816782e7>] ? _raw_spin_unlock_irq+0x17/0x40
 [<ffffffff81069b6e>] ? finish_task_switch+0x4e/0xb0
 [<ffffffff81661fb0>] ? rest_init+0x80/0x80
 [<ffffffff81661fbe>] kernel_init+0xe/0x180
 [<ffffffff8167f8dc>] ret_from_fork+0x7c/0xb0
 [<ffffffff81661fb0>] ? rest_init+0x80/0x80
Code: a6 fd ff 44 89 0d f0 a6 fd ff 89 0d 92 a7 fd ff 7e 2b 83 e2 1f b8 03 00 00 00 b9 45 03 00 00 83 fa 02 0f 4f c2 89 05 b7 a6 fd ff <0f> 32 48 c1 e2 20 89 c0 48 09 c2 48 89 15 3d a7 fd ff e8 d0 a3 
RIP  [<ffffffff81ccbb09>] intel_pmu_init+0x2d9/0x77b
 RSP <ffff88000791de20>
---[ end trace 7e3ebb916ee30054 ]---
Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b
Comment 1 Darren Hart 2013-05-30 14:55:11 UTC
Have you been able to verify this is an issue with gcc 4.7 as well or is this specific to gcc 4.8?
Comment 2 Darren Hart 2013-05-30 14:56:22 UTC
.
Comment 3 Mihai Lindner 2013-05-30 15:31:29 UTC
This might also be a duplicate of bug 3908, and possibly unrelated to gcc 4.8 bumping in.
Comment 4 Khem Raj 2013-05-30 16:37:38 UTC
(In reply to comment #1)
> Have you been able to verify this is an issue with gcc 4.7 as well or is
> this specific to gcc 4.8?

No I haven't verified if it works with 4.7 or not. It was an information for reproducing the problem.
Comment 5 Khem Raj 2013-05-30 16:39:49 UTC
(In reply to comment #3)
> This might also be a duplicate of bug 3908, and possibly unrelated to gcc
> 4.8 bumping in.

yes most likely its same bug.
Comment 6 Cristian Iorga 2013-09-02 09:35:32 UTC
Additional test case:

poky head: c7994f83baa678a4670472e1f037bfc16cb1e3be

bitbake core-image-sato
Machine: qemux86-64

Host machine: Ubuntu x86-64 13.04

Kernel: uname -a
Linux sentry 3.8.0-27-generic #40-Ubuntu SMP Tue Jul 9 00:17:05 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux

GCC: gcc --version
gcc (Ubuntu/Linaro 4.7.3-1ubuntu1) 4.7.3
Copyright (C) 2012 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

runqemu qemux86-64 core-image-sato kvm serial 
Output log:
ubik@sentry:/mnt/Yo/yoctoproject/build$ runqemu qemux86-64 core-image-sato kvm serial
Assuming core-image-sato really means /mnt/Yo/yoctoproject/build/tmp/deploy/images/core-image-sato-qemux86-64.ext3

Continuing with the following parameters:
KERNEL: [/mnt/Yo/yoctoproject/build/tmp/deploy/images/bzImage-qemux86-64.bin]
ROOTFS: [/mnt/Yo/yoctoproject/build/tmp/deploy/images/core-image-sato-qemux86-64.ext3]
FSTYPE: [ext3]
Setting up tap interface under sudo
Acquiring lockfile for tap0...
Interrupt character is '^]'
Running qemu-system-x86_64...
/mnt/Yo/yoctoproject/build/tmp/sysroots/x86_64-linux/usr/bin/qemu-system-x86_64 -kernel /mnt/Yo/yoctoproject/build/tmp/deploy/images/bzImage-qemux86-64.bin -net nic,model=virtio -net tap,vlan=0,ifname=tap0,script=no,downscript=no,vhost=on -drive file=/mnt/Yo/yoctoproject/build/tmp/deploy/images/core-image-sato-qemux86-64.ext3,if=virtio -show-cursor -usb -usbdevice wacom-tablet -vga vmware -no-reboot -serial stdio -enable-kvm -cpu host -m 128 --append "vga=0 uvesafb.mode_option=640x480-32 root=/dev/vda rw mem=128M ip=192.168.7.2::192.168.7.1:255.255.255.0 oprofile.timer=1 console=ttyS0"
Initializing cgroup subsys cpuset
Initializing cgroup subsys cpu
Initializing cgroup subsys cpuacct
Linux version 3.10.9-yocto-standard (build@yoctobuild1) (gcc version 4.8.1 (GCC) ) #1 SMP PREEMPT Mon Sep 2 00:57:00 EEST 2013
Command line: vga=0 uvesafb.mode_option=640x480-32 root=/dev/vda rw mem=128M ip=192.168.7.2::192.168.7.1:255.255.255.0 oprofile.timer=1  console=ttyS0
e820: BIOS-provided physical RAM map:
BIOS-e820: [mem 0x0000000000000000-0x000000000009fbff] usable
BIOS-e820: [mem 0x000000000009fc00-0x000000000009ffff] reserved
BIOS-e820: [mem 0x00000000000f0000-0x00000000000fffff] reserved
BIOS-e820: [mem 0x0000000000100000-0x0000000007ffdfff] usable
BIOS-e820: [mem 0x0000000007ffe000-0x0000000007ffffff] reserved
BIOS-e820: [mem 0x00000000feffc000-0x00000000feffffff] reserved
BIOS-e820: [mem 0x00000000fffc0000-0x00000000ffffffff] reserved
NX (Execute Disable) protection: active
e820: user-defined physical RAM map:
user: [mem 0x0000000000000000-0x000000000009fbff] usable
user: [mem 0x000000000009fc00-0x000000000009ffff] reserved
user: [mem 0x00000000000f0000-0x00000000000fffff] reserved
user: [mem 0x0000000000100000-0x0000000007ffdfff] usable
user: [mem 0x0000000007ffe000-0x0000000007ffffff] reserved
user: [mem 0x00000000feffc000-0x00000000feffffff] reserved
user: [mem 0x00000000fffc0000-0x00000000ffffffff] reserved
SMBIOS 2.4 present.
No AGP bridge found
e820: last_pfn = 0x7ffe max_arch_pfn = 0x400000000
x86 PAT enabled: cpu 0, old 0x70406, new 0x7010600070106
found SMP MP-table at [mem 0x000fdaf0-0x000fdaff] mapped at [ffff8800000fdaf0]
Scanning 1 areas for low memory corruption
init_memory_mapping: [mem 0x00000000-0x000fffff]
init_memory_mapping: [mem 0x07c00000-0x07dfffff]
init_memory_mapping: [mem 0x04000000-0x07bfffff]
init_memory_mapping: [mem 0x00100000-0x03ffffff]
init_memory_mapping: [mem 0x07e00000-0x07ffdfff]
ACPI: RSDP 00000000000fd990 00014 (v00 BOCHS )
ACPI: RSDT 0000000007ffe4b0 00034 (v01 BOCHS  BXPCRSDT 00000001 BXPC 00000001)
ACPI: FACP 0000000007ffff80 00074 (v01 BOCHS  BXPCFACP 00000001 BXPC 00000001)
ACPI: DSDT 0000000007ffe4f0 011A9 (v01   BXPC   BXDSDT 00000001 INTL 20100528)
ACPI: FACS 0000000007ffff40 00040
ACPI: SSDT 0000000007fff800 00735 (v01 BOCHS  BXPCSSDT 00000001 BXPC 00000001)
ACPI: APIC 0000000007fff6e0 00078 (v01 BOCHS  BXPCAPIC 00000001 BXPC 00000001)
ACPI: HPET 0000000007fff6a0 00038 (v01 BOCHS  BXPCHPET 00000001 BXPC 00000001)
Zone ranges:
  DMA      [mem 0x00001000-0x00ffffff]
  DMA32    [mem 0x01000000-0xffffffff]
  Normal   empty
Movable zone start for each node
Early memory node ranges
  node   0: [mem 0x00001000-0x0009efff]
  node   0: [mem 0x00100000-0x07ffdfff]
ACPI: PM-Timer IO Port: 0xb008
ACPI: LAPIC (acpi_id[0x00] lapic_id[0x00] enabled)
ACPI: LAPIC_NMI (acpi_id[0xff] dfl dfl lint[0x1])
ACPI: IOAPIC (id[0x00] address[0xfec00000] gsi_base[0])
IOAPIC[0]: apic_id 0, version 17, address 0xfec00000, GSI 0-23
ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 dfl dfl)
ACPI: INT_SRC_OVR (bus 0 bus_irq 5 global_irq 5 high level)
ACPI: INT_SRC_OVR (bus 0 bus_irq 9 global_irq 9 high level)
ACPI: INT_SRC_OVR (bus 0 bus_irq 10 global_irq 10 high level)
ACPI: INT_SRC_OVR (bus 0 bus_irq 11 global_irq 11 high level)
Using ACPI (MADT) for SMP configuration information
ACPI: HPET id: 0x8086a201 base: 0xfed00000
smpboot: Allowing 1 CPUs, 0 hotplug CPUs
e820: [mem 0x08000000-0xfeffbfff] available for PCI devices
setup_percpu: NR_CPUS:24 nr_cpumask_bits:24 nr_cpu_ids:1 nr_node_ids:1
PERCPU: Embedded 27 pages/cpu @ffff880007c00000 s79616 r8192 d22784 u2097152
Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 32135
Kernel command line: vga=0 uvesafb.mode_option=640x480-32 root=/dev/vda rw mem=128M ip=192.168.7.2::192.168.7.1:255.255.255.0 oprofile.timer=1  console=ttyS0
PID hash table entries: 512 (order: 0, 4096 bytes)
Dentry cache hash table entries: 16384 (order: 5, 131072 bytes)
Inode-cache hash table entries: 8192 (order: 4, 65536 bytes)
xsave: enabled xstate_bv 0x7, cntxt size 0x340
Checking aperture...
No AGP bridge found
Memory: 112940k/131064k available (6911k kernel code, 392k absent, 17732k reserved, 6097k data, 1072k init)
SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
Preemptible hierarchical RCU implementation.
	RCU restricting CPUs from NR_CPUS=24 to nr_cpu_ids=1.
NR_IRQS:4352 nr_irqs:256 16
Console: colour VGA+ 80x25
console [ttyS0] enabled
allocated 524288 bytes of page_cgroup
please try 'cgroup_disable=memory' option if you don't want memory cgroups
tsc: Fast TSC calibration using PIT
tsc: Detected 3392.338 MHz processor
Calibrating delay loop (skipped), value calculated using timer frequency.. 6784.67 BogoMIPS (lpj=3392338)
pid_max: default: 32768 minimum: 301
Security Framework initialized
Mount-cache hash table entries: 256
Initializing cgroup subsys debug
Initializing cgroup subsys memory
Initializing cgroup subsys devices
Initializing cgroup subsys freezer
Initializing cgroup subsys net_cls
Initializing cgroup subsys blkio
mce: CPU supports 10 MCE banks
Last level iTLB entries: 4KB 0, 2MB 0, 4MB 0
Last level dTLB entries: 4KB 0, 2MB 0, 4MB 0
tlb_flushall_shift: 5
Freeing SMP alternatives: 28k freed
ACPI: Core revision 20130328
ACPI: All ACPI Tables successfully acquired
ftrace: allocating 25244 entries in 99 pages
..TIMER: vector=0x30 apic1=0 pin1=2 apic2=-1 pin2=-1
smpboot: CPU0: Intel(R) Core(TM) i7-2600 CPU @ 3.40GHz (fam: 06, model: 2a, stepping: 07)
Performance Events: 
general protection fault: 0000 [#1] PREEMPT SMP 
Modules linked in:
CPU: 0 PID: 1 Comm: swapper/0 Not tainted 3.10.9-yocto-standard #1
Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011
task: ffff880007050000 ti: ffff880007058000 task.ti: ffff880007058000
RIP: 0010:[<ffffffff81cd30fd>]  [<ffffffff81cd30fd>] intel_pmu_init+0x2d9/0x7a7
RSP: 0000:ffff880007059e08  EFLAGS: 00000202
RAX: 0000000000000003 RBX: 0000000000000000 RCX: 0000000000000345
RDX: 0000000000000003 RSI: 0000000000000730 RDI: 0000ffffffffffff
RBP: ffff880007059e10 R08: 0000000000000001 R09: 0000000000000007
R10: ffffffff81cab920 R11: 0000000000000000 R12: 0000000000000000
R13: 0000000000000000 R14: 0000000000000000 R15: 0000000000000000
FS:  0000000000000000(0000) GS:ffff880007c00000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: ffff880001ee3000 CR3: 0000000001c0b000 CR4: 00000000000406f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
Stack:
 ffffffff81cd216a ffff880007059e48 ffffffff81cd21a3 ffffffff81cd216a
 0000000000000000 0000000000000000 0000000000000000 0000000000000000
 ffff880007059e78 ffffffff810002d2 ffffffff81db8430 0000000000000001
Call Trace:
 [<ffffffff81cd216a>] ? check_bugs+0x2d/0x2d
 [<ffffffff81cd21a3>] init_hw_perf_events+0x39/0x502
 [<ffffffff81cd216a>] ? check_bugs+0x2d/0x2d
 [<ffffffff810002d2>] do_one_initcall+0x102/0x160
 [<ffffffff81ccaebd>] kernel_init_freeable+0xb8/0x219
 [<ffffffff816b4997>] ? _raw_spin_unlock_irq+0x17/0x40
 [<ffffffff81068bee>] ? finish_task_switch+0x4e/0xb0
 [<ffffffff8169da10>] ? rest_init+0x90/0x90
 [<ffffffff8169da1e>] kernel_init+0xe/0x180
 [<ffffffff816bc19c>] ret_from_fork+0x7c/0xb0
 [<ffffffff8169da10>] ? rest_init+0x90/0x90
Code: 88 fd ff 44 89 0d cc 88 fd ff 89 0d 7e 89 fd ff 7e 2b 83 e2 1f b8 03 00 00 00 b9 45 03 00 00 83 fa 02 0f 4f c2 89 05 93 88 fd ff <0f> 32 48 c1 e2 20 89 c0 48 09 c2 48 89 15 29 89 fd ff e8 0c 2b 
RIP  [<ffffffff81cd30fd>] intel_pmu_init+0x2d9/0x7a7
 RSP <ffff880007059e08>
---[ end trace 2972643e8c975320 ]---
Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b
Comment 7 Stefan Stanacar 2013-10-03 11:08:53 UTC
Hey Khem,

I'm pretty sure this is a duplicate of #3908, which should be fixed now. If that's not the case for you, reopen this one.

*** This bug has been marked as a duplicate of bug 3908 ***