I've been banging my head on this one for quite a while now. The problem is that there is very little debug out put available. Could you see if you get the same?
Mainline kernel (I'm using commit 527d151131 right now but older kernels are also affected). Most interesting config options:
CONFIG_BL_SWITCHER=n CONFIG_ARCH_VEXPRESS_TC2_PM=y CONFIG_ARM_BIG_LITTLE_CPUIDLE=y CONFIG_ARM_BIG_LITTLE_CPUFREQ=y CONFIG_ARM_VEXPRESS_SPC_CPUFREQ=y
To crash the kernel within 5 seconds:
#!/bin/bash echo 0 > /sys/kernel/bL_switcher/active sleep 1 while true; do for i in 0 1 2 3 do echo 0 > /sys/devices/system/cpu/cpu$i/online done for i in 3 2 1 0 do echo 1 > /sys/devices/system/cpu/cpu$i/online done for i in 4 3 2 1 do echo 0 > /sys/devices/system/cpu/cpu$i/online done for i in 1 2 3 4 do echo 1 > /sys/devices/system/cpu/cpu$i/online done done
What I get is:
[...] CPU1: Booted secondary processor CPU0: Booted secondary processor Unable to handle kernel NULL pointer dereference at virtual address 0000000c pgd = c0004000
[ the output stops there ]
The last CPU to be booted up is not always the same.
Are you able to reproduce?
Nicolas