kernel bug when hotplugging a CPU
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
linux (Debian) |
Fix Released
|
Unknown
|
|||
linux (Fedora) |
Fix Released
|
Undecided
|
|||
linux (Ubuntu) |
Confirmed
|
Medium
|
Unassigned | ||
Utopic |
Won't Fix
|
Medium
|
Unassigned | ||
linux (openSUSE) |
Fix Released
|
Medium
|
Bug Description
When I hot-plug a CPU to an Ubuntu 14.10 VM running on KVM, I get following kernel bug. Ubuntu 14.04 is not affected by this bug.
# uname -a
Linux ubuntu 3.16.0-28-generic #38-Ubuntu SMP Fri Dec 12 17:37:40 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
# dmesg
[ 109.469094] CPU1 has been hot-added
[ 109.477005] SMP alternatives: switching to SMP code
[ 109.490583] x86: Booting SMP configuration:
[ 109.490586] smpboot: Booting Node 0 Processor 1 APIC 0x1
[ 109.476344] kvm-clock: cpu 1, msr 0:3ffe6041, secondary cpu clock
[ 109.586704] kvm: enabling virtualization on CPU1
[ 109.596330] KVM setup async PF for cpu 1
[ 109.596330] kvm-stealtime: cpu 1, msr 3de2d100
[ 109.596645] microcode: CPU1: patch_level=
[ 109.596910] Will online and init hotplugged CPU: 1
[ 109.598469] kobject '(null)' (ffff88003de3b5d8): tried to add an uninitialized object, something is seriously wrong.
[ 109.599255] CPU: 0 PID: 1424 Comm: systemd-udevd Not tainted 3.16.0-28-generic #38-Ubuntu
[ 109.599257] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011
[ 109.599259] ffff880036465250 ffff88003af77c88 ffffffff81781eaa ffff88003de3b5d8
[ 109.599263] ffff88003af77cf8 ffffffff8139e896 ffff880000000020 ffff88003af77d08
[ 109.599266] ffff88003af77cb0 ffff88003af77cc8 ffffffff8137967b 0000000000000001
[ 109.599269] Call Trace:
[ 109.599276] [<ffffffff81781
[ 109.599280] [<ffffffff8139e
[ 109.599283] [<ffffffff81379
[ 109.599287] [<ffffffff8139d
[ 109.599291] [<ffffffff81378
[ 109.599293] [<ffffffff81379
[ 109.599297] [<ffffffff81376
[ 109.599300] [<ffffffff81099
[ 109.599303] [<ffffffff81099
[ 109.599306] [<ffffffff81070
[ 109.599309] [<ffffffff81070
[ 109.599312] [<ffffffff81070
[ 109.599315] [<ffffffff81778
[ 109.599319] [<ffffffff814cf
[ 109.599322] [<ffffffff814cf
[ 109.599325] [<ffffffff814cc
[ 109.599328] [<ffffffff81259
[ 109.599331] [<ffffffff81258
[ 109.599335] [<ffffffff811e1
[ 109.599338] [<ffffffff811e1
[ 109.599342] [<ffffffff81789
I initially reported this bug in openSUSE and it was fixed in the Linus tree: https:/
---
AlsaDevices: Error: command ['ls', '-l', '/dev/snd/'] failed with exit code 2: ls: cannot access /dev/snd/: No such file or directory
AplayDevices: Error: [Errno 2] No such file or directory
ApportVersion: 2.14.7-0ubuntu8
Architecture: amd64
ArecordDevices: Error: [Errno 2] No such file or directory
CRDA: Error: [Errno 2] No such file or directory
DistroRelease: Ubuntu 14.10
IwConfig:
eth0 no wireless extensions.
lo no wireless extensions.
Lsusb:
Bus 001 Device 002: ID 0627:0001 Adomax Technology Co., Ltd
Bus 001 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
MachineType: Bochs Bochs
Package: linux (not installed)
PciMultimedia:
ProcFB: 0 EFI VGA
ProcKernelCmdLine: BOOT_IMAGE=
ProcVersionSign
RelatedPackageV
linux-
linux-
linux-firmware 1.138
RfKill: Error: [Errno 2] No such file or directory
Tags: utopic utopic
Uname: Linux 3.16.0-28-generic x86_64
UnreportableReason: The report belongs to a package that is not installed.
UpgradeStatus: No upgrade log present (probably fresh install)
UserGroups:
_MarkForUpload: True
dmi.bios.date: 01/01/2011
dmi.bios.vendor: Bochs
dmi.bios.version: Bochs
dmi.chassis.type: 1
dmi.chassis.vendor: Bochs
dmi.modalias: dmi:bvnBochs:
dmi.product.name: Bochs
dmi.sys.vendor: Bochs
Changed in linux (openSUSE): | |
importance: | Unknown → Medium |
status: | Unknown → Fix Released |
Changed in linux (Debian): | |
status: | Unknown → Confirmed |
Changed in linux (Ubuntu): | |
importance: | Undecided → Medium |
tags: | added: kernel-bug-fixed-upstream kernel-da-key |
Changed in linux (Fedora): | |
importance: | Unknown → Undecided |
status: | Unknown → Fix Released |
Changed in linux (Debian): | |
status: | Confirmed → Fix Released |
When I hot-plug a CPU to an openSUSE VM running on KVM, I get following kernel oops:
# uname -a sync_source failed 171129- lamiak 04/01/2014 096>] dump_trace+ 0x86/0x330 3d4>] show_stack_ log_lvl+ 0x94/0x170 a31>] show_stack+ 0x21/0x50 482>] dump_stack+ 0x41/0x51 153>] kobject_ add+0xa3/ 0xb0 4a1>] blk_mq_ register_ hctx+0x91/ 0xb0 d5e>] blk_mq_ sysfs_register+ 0x3e/0x50 9c2>] blk_mq_ queue_reinit_ notify+ 0x72/0xb0 6bc>] notifier_ call_chain+ 0x4c/0x70 eef>] cpu_notify+ 0x1f/0x40 0d7>] _cpu_up+0x157/0x170 169>] cpu_up+0x79/0xa0 555>] cpu_subsys_ online+ 0x35/0x80 64d>] device_ online+ 0x5d/0xa0 705>] online_ store+0x75/ 0x80 27a>] kernfs_ fop_write+ 0xda/0x150 aa2>] vfs_write+ 0xb2/0x1f0 5e2>] SyS_write+0x42/0xa0 c2d>] system_ call_fastpath+ 0x1a/0x1f 4e0>] 0x7f9fbf3804df
Linux opensuse 3.16.6-2-default #1 SMP Mon Oct 20 13:47:22 UTC 2014 (feb42ea) x86_64 x86_64 x86_64 GNU/Linux
# dmesg
[ 54.927758] CPU2 has been hot-added
[ 54.928610] smpboot: Booting Node 0 Processor 2 APIC 0x2
[ 0.004000] kvm-clock: cpu 2, msr 2:403de081, secondary cpu clock
[ 54.940001] TSC synchronization [CPU#1 -> CPU#2]:
[ 54.940001] Measured 195274448514 cycles TSC warp between CPUs, turning off TSC clock.
[ 54.940001] tsc: Marking TSC unstable due to check_tsc_
[ 54.960222] KVM setup async PF for cpu 2
[ 54.960265] kvm-stealtime: cpu 2, msr 24008d240
[ 54.960342] microcode: CPU2 sig=0x306c1, pf=0x1, revision=0x1
[ 55.012464] Will online and init hotplugged CPU: 2
[ 55.012574] kobject '(null)' (ffff88024009a3d8): tried to add an uninitialized object, something is seriously wrong.
[ 55.012615] CPU: 1 PID: 892 Comm: systemd-udevd Not tainted 3.16.6-2-default #1
[ 55.012649] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.7.5-20140531_
[ 55.012688] ffff8802347cbd98 ffffffff815ca482 ffff88024009a3d8 ffffffff8130e153
[ 55.012729] ffffffff00000020 ffff8802347cbda8 ffff8802347cbd50 00000001334da7a8
[ 55.012766] 000000000000b0a0 0000000001ca6930 0000000000000002 ffff8802334da298
[ 55.012804] Call Trace:
[ 55.012845] [<ffffffff81005
[ 55.012881] [<ffffffff81005
[ 55.012919] [<ffffffff81006
[ 55.012955] [<ffffffff815ca
[ 55.012990] [<ffffffff8130e
[ 55.013027] [<ffffffff812ed
[ 55.013062] [<ffffffff812ed
[ 55.013095] [<ffffffff812eb
[ 55.013129] [<ffffffff81080
[ 55.013162] [<ffffffff8105b
[ 55.013195] [<ffffffff8105c
[ 55.013226] [<ffffffff8105c
[ 55.013260] [<ffffffff815bf
[ 55.013294] [<ffffffff8140c
[ 55.013328] [<ffffffff8140c
[ 55.013360] [<ffffffff81221
[ 55.013394] [<ffffffff811b1
[ 55.013426] [<ffffffff811b2
[ 55.013462] [<ffffffff815d0
[ 55.013517] [<00007f9fbf380
I can reproduce it on a Ubuntu 14.10 host with stock KVM and on Debian host with a custom KVM. The oops sometimes causes the virtual machine to freeze.