Comment 24 for bug 1097213

Revision history for this message
Naresh Kamboju (naresh-kamboju) wrote : Re: switcher_off_hotplug_cpu.sh failed on IKS kernel

complete test log can be found at: https://pastebin.linaro.org/2024/

Stackdump:
  897.050119] CPU3: Booted secondary processor
[ 897.053685] Unable to handle kernel NULL pointer dereference at virtual address 00000004 [ 897.090697] pgd = c0004000
[ 897.098781] [00000004] *pgd=00000000
[ 897.109480] Internal error: Oops: 805 [#1] SMP ARM
[ 897.123815] Modules linked in:
[ 897.133001] CPU: 2 Not tainted (3.9.0-rc3-00723-g91d15d3 #11)
[ 897.151282] PC is at run_timer_softirq+0x10c/0x288
[ 897.165622] LR is at run_timer_softirq+0x3c/0x288
[ 897.179698] pc : [<c0030ba4>] lr : [<c0030ad4>] psr: 600001d3
...
[ 899.757348] [<c0030ba4>] (run_timer_softirq+0x10c/0x288) from [<c0029544>] (__do_softirq+0xf4/0x250)
[ 899.784715] [<c0029544>] (__do_softirq+0xf4/0x250) from [<c00299ac>] (irq_exit+0x8c/0xc4)
[ 899.809219] [<c00299ac>] (irq_exit+0x8c/0xc4) from [<c000e978>] (handle_IRQ+0x3c/0x94)
[ 899.832938] [<c000e978>] (handle_IRQ+0x3c/0x94) from [<c00084f0>] (gic_handle_irq+0x28/0x5c)
[ 899.858221] [<c00084f0>] (gic_handle_irq+0x28/0x5c) from [<c000dd00>] (__irq_svc+0x40/0x50)

Reading symbols from /home/naresh/nico-linux/linux/kernel/timer.o...done.
(gdb) list *(run_timer_softirq+0x10c)
0x279c is in run_timer_softirq (include/linux/list.h:88).
83 * This is only for internal list manipulation where we know
84 * the prev/next entries already!
85 */
86 static inline void __list_del(struct list_head * prev, struct list_head * next)
87 {
88 next->prev = prev;
89 prev->next = next;
90 }
91
92 /**

Stackdump:
[ 900.344354] [<c000dd00>] (__irq_svc+0x40/0x50) from [<c02c8da8>] (bl_enter_powerdown+0x6c/0xd0)
[ 900.370414] [<c02c8da8>] (bl_enter_powerdown+0x6c/0xd0) from [<c02c6f84>] (cpuidle_enter+0x14/0x18)
[ 900.397515] [<c02c6f84>] (cpuidle_enter+0x14/0x18) from [<c02c73b4>] (cpuidle_enter_state+0x14/0x68)
[ 900.424877] [<c02c73b4>] (cpuidle_enter_state+0x14/0x68) from [<c02c74ac>] (cpuidle_idle_call+0xa4/0x198)
[ 900.453541] [<c02c74ac>] (cpuidle_idle_call+0xa4/0x198) from [<c000ee24>] (cpu_idle+0x9c/0x114)
[ 900.479598] [<c000ee24>] (cpu_idle+0x9c/0x114) from [<803d01a4>] (0x803d01a4)[ 900.500966] CPU1: stopping
[ 900.509068] [<c00142e0>] (unwind_backtrace+0x0/0xf8) from [<c00134e0>] (handle_IPI+0x198/0x1d8)

GDB disassembling code:
Reading symbols from /home/naresh/nico-linux/linux/drivers/cpuidle/arm_big_little.o...done.
(gdb) list *(bl_enter_powerdown+0x6c)
0x6c is in bl_enter_powerdown (include/linux/time.h:82).
77 */
78 static inline struct timespec timespec_sub(struct timespec lhs,
79 struct timespec rhs)
80 {
81 struct timespec ts_delta;
82 set_normalized_timespec(&ts_delta, lhs.tv_sec - rhs.tv_sec,
83 lhs.tv_nsec - rhs.tv_nsec);
84 return ts_delta;
85 }