Wind River Support Network


LIN5-4805 : arm-coretile-express-a15-a7: another call trace when testing cpu_hotplug on preempt-rt kernel

Created: Apr 2, 2013    Updated: Dec 19, 2017
Resolved Date: May 13, 2013
Found In Version: 5.0.1
Fix Version:
Severity: Severe
Applicable for: Wind River Linux 5
Component/s: BSP - Async


It's not similar to WIND00408892
When testing cpu_hotplug on the preempt-rt kernel, call trace are triggred:

root@localhost:# echo  0 > /sys/devices/system/cpu/cpu1/online
CPU1: shutdown
root@localhost:# echo  1 > /sys/devices/system/cpu/cpu1/online
CPU1: Booted secondary processor
CPU1: Unknown IPI message 0x1
CPUFreq for CPU 1 initialized
root@localhost:# dmesg
BUG: sleeping function called from invalid context at
kernel/rtmutex.c:658 in_atomic(): 1, irqs_disabled(): 128, pid: 21,
name: migration/4 [<c0017994>] (unwind_backtrace+0x0/0x104) from
[<c0581cb4>] (dump_stack+0x20/0x24) [<c0581cb4>] (dump_stack+0x20/0x24)
from [<c005bc90>] (__might_sleep+0x11c/0x120) [<c005bc90>]
(__might_sleep+0x11c/0x120) from [<c058b0a0>]
(__rt_spin_lock+0x2c/0x38) [<c058b0a0>] (__rt_spin_lock+0x2c/0x38) from
[<c058b2f4>] (rt_read_lock+0x3c/0x4c) [<c058b2f4>]
(rt_read_lock+0x3c/0x4c) from [<c00147ac>] (__cpu_disable+0xd8/0x138)
[<c00147ac>] (__cpu_disable+0xd8/0x138) from [<c0578c84>]
(take_cpu_down+0x1c/0x44) [<c0578c84>] (take_cpu_down+0x1c/0x44) from
[<c00935e0>] (stop_machine_cpu_stop+0xe8/0x13c) [<c00935e0>]
(stop_machine_cpu_stop+0xe8/0x13c) from [<c0093760>]
(cpu_stopper_thread+0xd0/0x1b0) [<c0093760>]
(cpu_stopper_thread+0xd0/0x1b0) from [<c004bc48>] (kthread+0xa0/0xa4)
[<c004bc48>] (kthread+0xa0/0xa4) from [<c000fb38>]

Steps to Reproduce

1. configure the project with kexec support and preempt-rt kernel
/lpg-build/cdc/fast_prod/wrlinux501/dvd_install/lx07_12sp_5011/wrlinux-5/wrlinux/configure --enable-board=arm-coretile-express-a15-a7 --enable-rootfs=glibc_std --enable-kernel=preempt-rt --enable-jobs=8 --enable-parallel-pkgbuilds=4 --with-layer=/build-5.0/wr-testing/kts,/build-5.0/wr-testing/bts --enable-test=yes

2. build the kernel

3. boot the board with the kernel

4. execute following commands on target console:
# echo  0 > /sys/devices/system/cpu/cpu1/online
# echo  1 > /sys/devices/system/cpu/cpu1/online
# dmesg

Other Downloads

Live chat