BUG at cpuidle_play_dead
Hi,
I'm hitting this BUG as the last thing during shutdown:
BUG: unable to handle kernel NULL pointer dereference at 00000000000002d8 IP: [<ffffffff814ab60d>] cpuidle_play_dead+0x1d/0xb0
It's because drv is NULL. The problem is gone if I do this:
drivers/cpuidle/cpuidle.c +5 -0
@@ -83,6 +83,11 @@ int cpuidle_play_dead(void)int i, dead_state =-1 ;int power_usage =-1 ; +if (!drv) { +printk ("DRIVER IS NULL\n" ); +return -ENODEV ; + } +/* Find lowest-power state that supports long-term idle */ for (i =CPUIDLE_DRIVER_STATE_START ; i < drv->state_count; i++) {struct cpuidle_state *s = &drv->states[i];
thanks,
Signature · 2 lines
js suse labs
Quoted 23 lines · Jiri Slaby
Hi,
I'm hitting this BUG as the last thing during shutdown:
BUG: unable to handle kernel NULL pointer dereference at 00000000000002d8 IP: [<ffffffff814ab60d>] cpuidle_play_dead+0x1d/0xb0It's because drv is NULL. The problem is gone if I do this:
drivers/cpuidle/cpuidle.c +5
-0@@ -83,6 +83,11 @@ int cpuidle_play_dead(void)int i, dead_state =-1 ;int power_usage =-1 ; +if (!drv) { +printk ("DRIVER IS NULL\n" ); +return -ENODEV ; + } +/* Find lowest-power state that supports long-term idle */ for (i =CPUIDLE_DRIVER_STATE_START ; i< drv->state_count; i++) {struct cpuidle_state *s =&drv->states[i];
Quoted 1 line
thanks,
This was already fixed in https://lkml.org/lkml/2012/3/31/249.
Len, please apply that patch.
Thanks.
-boris