Fixed
Created: Nov 30, 2013
Updated: Dec 3, 2018
Resolved Date: Dec 18, 2013
Found In Version: 6.0
Fix Version: 6.0.0.2
Severity: Severe
Applicable for: Wind River Linux 6
Component/s: BSP
Problem Description
======================
on ti-66ak2hxx ifconfig up a NIC will trigger kernel panic, the rootfs is nfs, it's easy
reproduce on lx28, test with
while true;do ifconfig eth1 down;ifconfig eth1 192.168.10.10
up;sleep 3;done
Expected Behavior
======================
no kernel panic
Observed Behavior
======================
root@localhost:~# ifconfig eth1 192.168.10.10 up
keystone-netcp 2090000.netcp: initializing cpsw version 1.3 (1) SGMII
identification value 0x4ed1
net eth1: netcp device eth1 opened
IPv6: ADDRCONF(NETDEV_UP): eth1: link is not ready
BUG: scheduling while atomic: swapper/0/0/0x00000102
Modules linked in: loop nfsd ofpart m25p80 mtd
CPU: 0 PID: 0 Comm: swapper/0 Not tainted 3.10.19-WR6.0.0.0_standard #1
[<c001568c>] (unwind_backtrace+0x0/0xec) from [<c0011da4>]
(show_stack+0x20/0x24)
[<c0011da4>] (show_stack+0x20/0x24) from [<c05f7b84>] (dump_stack+0x20/0x28)
[<c05f7b84>] (dump_stack+0x20/0x28) from [<c05f2120>]
(__schedule_bug+0x54/0x6c)
[<c05f2120>] (__schedule_bug+0x54/0x6c) from [<c05fabc8>]
(__schedule+0x7c/0x5e8)
[<c05fabc8>] (__schedule+0x7c/0x5e8) from [<c05fb1c4>] (schedule+0x90/0x94)
[<c05fb1c4>] (schedule+0x90/0x94) from [<c05fb560>]
(schedule_preempt_disabled+0x20/0x2c)
[<c05fb560>] (schedule_preempt_disabled+0x20/0x2c) from [<c05fa078>]
(__mutex_lock_slowpath+0x1d8/0x248)
[<c05fa078>] (__mutex_lock_slowpath+0x1d8/0x248) from [<c05fa128>]
(mutex_lock+0x40/0x58)
[<c05fa128>] (mutex_lock+0x40/0x58) from [<c044297c>]
(cpsw_timer+0x144/0x18c)
[<c044297c>] (cpsw_timer+0x144/0x18c) from [<c002ee30>]
(call_timer_fn+0xac/0x188)
[<c002ee30>] (call_timer_fn+0xac/0x188) from [<c002f4a8>]
(run_timer_softirq+0x244/0x278)
[<c002f4a8>] (run_timer_softirq+0x244/0x278) from [<c0027fec>]
(__do_softirq+0x160/0x2dc)
[<c0027fec>] (__do_softirq+0x160/0x2dc) from [<c0028210>]
(do_softirq+0x54/0x60)
[<c0028210>] (do_softirq+0x54/0x60) from [<c00284a4>] (irq_exit+0x84/0xd0)
[<c00284a4>] (irq_exit+0x84/0xd0) from [<c000eac8>] (handle_IRQ+0x7c/0xa0)
[<c000eac8>] (handle_IRQ+0x7c/0xa0) from [<c0008544>]
(gic_handle_irq+0x4c/0x70)
[<c0008544>] (gic_handle_irq+0x4c/0x70) from [<c05fca00>]
(__irq_svc+0x40/0x70)
Exception stack(0xc08adf38 to 0xc08adf80)
df20: 00000000
00000000
df40: 0075e19e 00000000 c08ac010 c08891f0 c0903084 c08ac000 80007000
412fc0f4
df60: 00000000 c08adf8c c08adf90 c08adf80 c000eca4 c000eca8 600f0013
ffffffff
[<c05fca00>] (__irq_svc+0x40/0x70) from [<c000eca8>]
(arch_cpu_idle+0x34/0x3c)
[<c000eca8>] (arch_cpu_idle+0x34/0x3c) from [<c005fe0c>]
(cpu_startup_entry+0x1cc/0x22c)
[<c005fe0c>] (cpu_startup_entry+0x1cc/0x22c) from [<c05f0e94>]
(rest_init+0x80/0x98)
[<c05f0e94>] (rest_init+0x80/0x98) from [<c0843b30>]
(start_kernel+0x334/0x394)
bad: scheduling from the idle thread!
CPU: 0 PID: 0 Comm: swapper/0 Tainted: G W
3.10.19-WR6.0.0.0_standard #1
[<c001568c>] (unwind_backtrace+0x0/0xec) from [<c0011da4>]
(show_stack+0x20/0x24)
[<c0011da4>] (show_stack+0x20/0x24) from [<c05f7b84>] (dump_stack+0x20/0x28)
[<c05f7b84>] (dump_stack+0x20/0x28) from [<c005334c>]
(dequeue_task_idle+0x28/0x38)
[<c005334c>] (dequeue_task_idle+0x28/0x38) from [<c004dc4c>]
(dequeue_task+0x3c/0x40)
[<c004dc4c>] (dequeue_task+0x3c/0x40) from [<c004e46c>]
(deactivate_task+0x38/0x3c)
[<c004e46c>] (deactivate_task+0x38/0x3c) from [<c05fac74>]
(__schedule+0x128/0x5e8)
[<c05fac74>] (__schedule+0x128/0x5e8) from [<c05fb1c4>] (schedule+0x90/0x94)
[<c05fb1c4>] (schedule+0x90/0x94) from [<c05fb560>]
(schedule_preempt_disabled+0x20/0x2c)
[<c05fb560>] (schedule_preempt_disabled+0x20/0x2c) from [<c05fa078>]
(__mutex_lock_slowpath+0x1d8/0x248)
[<c05fa078>] (__mutex_lock_slowpath+0x1d8/0x248) from [<c05fa128>]
(mutex_lock+0x40/0x58)
[<c05fa128>] (mutex_lock+0x40/0x58) from [<c044297c>]
(cpsw_timer+0x144/0x18c)
[<c044297c>] (cpsw_timer+0x144/0x18c) from [<c002ee30>]
(call_timer_fn+0xac/0x188)
[<c002ee30>] (call_timer_fn+0xac/0x188) from [<c002f4a8>]
(run_timer_softirq+0x244/0x278)
[<c002f4a8>] (run_timer_softirq+0x244/0x278) from [<c0027fec>]
(__do_softirq+0x160/0x2dc)
[<c0027fec>] (__do_softirq+0x160/0x2dc) from [<c0028210>]
(do_softirq+0x54/0x60)
[<c0028210>] (do_softirq+0x54/0x60) from [<c00284a4>] (irq_exit+0x84/0xd0)
[<c00284a4>] (irq_exit+0x84/0xd0) from [<c000eac8>] (handle_IRQ+0x7c/0xa0)
[<c000eac8>] (handle_IRQ+0x7c/0xa0) from [<c0008544>]
(gic_handle_irq+0x4c/0x70)
[<c0008544>] (gic_handle_irq+0x4c/0x70) from [<c05fca00>]
(__irq_svc+0x40/0x70)
Exception stack(0xc08adf38 to 0xc08adf80)
df20: 00000000
00000000
df40: 0075e19e 00000000 c08ac010 c08891f0 c0903084 c08ac000 80007000
412fc0f4
df60: 00000000 c08adf8c c08adf90 c08adf80 c000eca4 c000eca8 600f0013
ffffffff
[<c05fca00>] (__irq_svc+0x40/0x70) from [<c000eca8>]
(arch_cpu_idle+0x34/0x3c)
[<c000eca8>] (arch_cpu_idle+0x34/0x3c) from [<c005fe0c>]
(cpu_startup_entry+0x1cc/0x22c)
[<c005fe0c>] (cpu_startup_entry+0x1cc/0x22c) from [<c05f0e94>]
(rest_init+0x80/0x98)
[<c05f0e94>] (rest_init+0x80/0x98) from [<c0843b30>]
(start_kernel+0x334/0x394)
Unable to handle kernel NULL pointer dereference at virtual address 00000000
pgd = c0003000
[00000000] *pgd=80000800004003, *pmd=00000000
Internal error: Oops: 80000207 [#1] PREEMPT SMP ARM
Modules linked in: loop nfsd ofpart m25p80 mtd
CPU: 0 PID: 34 Comm: kworker/0:1 Tainted: G W
3.10.19-WR6.0.0.0_standard #1
Workqueue: events linkwatch_event
task: dfa71540 ti: df0e6000 task.ti: df0e6000
PC is at 0x0
LR is at enqueue_task+0x3c/0x40
pc : [<00000000>] lr : [<c004dc0c>] psr: 000f0193
sp : df0e7de8 ip : 00000498 fp : df0e7e04
r10: df0dba00 r9 : 00000000 r8 : c08ffc54
r7 : 00000000 r6 : 00000005 r5 : c0dcbac0 r4 : c08b8c80
r3 : 00000000 r2 : 00000005 r1 : c08b8c80 r0 : c0dcbac0
Flags: nzcv IRQs off FIQs on Mode SVC_32 ISA ARM Segment kernel
Control: 30c5387d Table: 0d5ab700 DAC: fffffffd
Process kworker/0:1 (pid: 34, stack limit = 0xdf0e6238)
Stack: (0xdf0e7de8 to 0xdf0e8000)
7de0: 00000100 c08b8c80 c0dcbac0 c0dcbac0 df0e7e14
df0e7e08
7e00: c004e430 c004dbdc df0e7e2c df0e7e18 c004e81c c004e404 c08b4e20
c08aaac0
7e20: df0e7e4c df0e7e30 c00501a4 c004e7f0 00000002 00000000 c08adf38
c08aa1d0
7e40: df0e7e6c df0e7e50 c0013074 c00500c4 feb62000 df0e7e90 c08b6030
df0e7ec4
7e60: df0e7e8c df0e7e70 c0008560 c0012ff0 c003c1c4 c05fc13c 200f0113
ffffffff
7e80: df0e7ee4 df0e7e90 c05fca00 c0008504 c0dcb6c0 00000000 df0e7ee8
00009a51
7ea0: c08f566c c0dcb6c0 df0e6028 c0dcef00 c08ffc54 00000000 df0dba00
df0e7ee4
7ec0: df0e7ee8 df0e7ed8 c003c1c4 c05fc13c 200f0113 ffffffff df0e7f24
df0e7ee8
7ee0: c003c1c4 c05fc118 c0dcb6c0 df0dba00 c0dcb6c0 00000000 df0e6000
df0dba00
7f00: c0dcb6c0 c0dcb6c0 df0e6000 df0dba18 df0e6028 c0dcb6d4 df0e7f5c
df0e7f28
7f20: c003c8d4 c003bfb0 00000000 df0dba00 c003c698 df905e70 00000000
df0dba00
7f40: c003c698 00000000 00000000 00000000 df0e7fac df0e7f60 c0041fd0
c003c6a4
7f60: c05fc144 00000000 df0e7f94 df0dba00 00000000 00000000 df0e7f78
df0e7f78
7f80: 00000000 00000000 df0e7f88 df0e7f88 df905e70 c0041f14 00000000
00000000
7fa0: 00000000 df0e7fb0 c000db58 c0041f20 00000000 00000000 00000000
00000000
7fc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000
00000000
7fe0: 00000000 00000000 00000000 00000000 00000013 00000000 9f0e7ff8
9f0e7ffc
[<c004dc0c>] (enqueue_task+0x3c/0x40) from [<c004e430>]
(activate_task+0x38/0x3c)
[<c004e430>] (activate_task+0x38/0x3c) from [<c004e81c>]
(ttwu_do_activate.constprop.85+0x38/0x6c)
[<c004e81c>] (ttwu_do_activate.constprop.85+0x38/0x6c) from [<c00501a4>]
(scheduler_ipi+0xec/0x184)
[<c00501a4>] (scheduler_ipi+0xec/0x184) from [<c0013074>]
(handle_IPI+0x90/0x128)
[<c0013074>] (handle_IPI+0x90/0x128) from [<c0008560>]
(gic_handle_irq+0x68/0x70)
[<c0008560>] (gic_handle_irq+0x68/0x70) from [<c05fca00>]
(__irq_svc+0x40/0x70)
Exception stack(0xdf0e7e90 to 0xdf0e7ed8)
7e80: c0dcb6c0 00000000 df0e7ee8
00009a51
7ea0: c08f566c c0dcb6c0 df0e6028 c0dcef00 c08ffc54 00000000 df0dba00
df0e7ee4
7ec0: df0e7ee8 df0e7ed8 c003c1c4 c05fc13c 200f0113 ffffffff
[<c05fca00>] (__irq_svc+0x40/0x70) from [<c05fc13c>]
(_raw_spin_unlock_irq+0x30/0x58)
[<c05fc13c>] (_raw_spin_unlock_irq+0x30/0x58) from [<c003c1c4>]
(process_one_work+0x220/0x43c)
[<c003c1c4>] (process_one_work+0x220/0x43c) from [<c003c8d4>]
(worker_thread+0x23c/0x370)
[<c003c8d4>] (worker_thread+0x23c/0x370) from [<c0041fd0>]
(kthread+0xbc/0xc8)
[<c0041fd0>] (kthread+0xbc/0xc8) from [<c000db58>] (ret_from_fork+0x14/0x20)
Code: bad PC value
---[ end trace a420d1e1f780b124 ]---
Kernel panic - not syncing: Fatal exception in interrupt
CPU2: stopping
CPU: 2 PID: 0 Comm: swapper/2 Tainted: G D W
3.10.19-WR6.0.0.0_standard #1
[<c001568c>] (unwind_backtrace+0x0/0xec) from [<c0011da4>]
(show_stack+0x20/0x24)
[<c0011da4>] (show_stack+0x20/0x24) from [<c05f7b84>] (dump_stack+0x20/0x28)
[<c05f7b84>] (dump_stack+0x20/0x28) from [<c00130b4>]
(handle_IPI+0xd0/0x128)
[<c00130b4>] (handle_IPI+0xd0/0x128) from [<c0008560>]
(gic_handle_irq+0x68/0x70)
[<c0008560>] (gic_handle_irq+0x68/0x70) from [<c05fca00>]
(__irq_svc+0x40/0x70)
Exception stack(0xdf93df70 to 0xdf93dfb8)
df60: 00000002 00000000 0020e546
00000000
df80: df93c008 c08c9fc0 30c2387d df93c000 80007000 412fc0f4 00000000
df93dfc4
dfa0: df93dfc8 df93dfb8 c000eca4 c000eca8 60000013 ffffffff
[<c05fca00>] (__irq_svc+0x40/0x70) from [<c000eca8>]
(arch_cpu_idle+0x34/0x3c)
[<c000eca8>] (arch_cpu_idle+0x34/0x3c) from [<c005fe0c>]
(cpu_startup_entry+0x1cc/0x22c)
[<c005fe0c>] (cpu_startup_entry+0x1cc/0x22c) from [<c087c548>]
(secondary_start_kernel+0x120/0x13c)
CPU1: stopping
CPU: 1 PID: 0 Comm: swapper/1 Tainted: G D W
3.10.19-WR6.0.0.0_standard #1
[<c001568c>] (unwind_backtrace+0x0/0xec) from [<c0011da4>]
(show_stack+0x20/0x24)
[<c0011da4>] (show_stack+0x20/0x24) from [<c05f7b84>] (dump_stack+0x20/0x28)
[<c05f7b84>] (dump_stack+0x20/0x28) from [<c00130b4>]
(handle_IPI+0xd0/0x128)
[<c00130b4>] (handle_IPI+0xd0/0x128) from [<c0008560>]
(gic_handle_irq+0x68/0x70)
[<c0008560>] (gic_handle_irq+0x68/0x70) from [<c05fca00>]
(__irq_svc+0x40/0x70)
Exception stack(0xdf93bf70 to 0xdf93bfb8)
bf60: 00000001 00000000 00133b2a
00000000
bf80: df93a008 c08c9fc0 30c2387d df93a000 80007000 412fc0f4 00000000
df93bfc4
bfa0: df93bfc8 df93bfb8 c000eca4 c000eca8 600f0013 ffffffff
[<c05fca00>] (__irq_svc+0x40/0x70) from [<c000eca8>]
(arch_cpu_idle+0x34/0x3c)
[<c000eca8>] (arch_cpu_idle+0x34/0x3c) from [<c005fe0c>]
(cpu_startup_entry+0x1cc/0x22c)
[<c005fe0c>] (cpu_startup_entry+0x1cc/0x22c) from [<c087c548>]
(secondary_start_kernel+0x120/0x13c)
CPU3: stopping
CPU: 3 PID: 0 Comm: swapper/3 Tainted: G D W
3.10.19-WR6.0.0.0_standard #1
[<c001568c>] (unwind_backtrace+0x0/0xec) from [<c0011da4>]
(show_stack+0x20/0x24)
[<c0011da4>] (show_stack+0x20/0x24) from [<c05f7b84>] (dump_stack+0x20/0x28)
[<c05f7b84>] (dump_stack+0x20/0x28) from [<c00130b4>]
(handle_IPI+0xd0/0x128)
[<c00130b4>] (handle_IPI+0xd0/0x128) from [<c0008560>]
(gic_handle_irq+0x68/0x70)
[<c0008560>] (gic_handle_irq+0x68/0x70) from [<c05fca00>]
(__irq_svc+0x40/0x70)
Exception stack(0xdf93ff70 to 0xdf93ffb8)
ff60: 00000003 00000000 000cd59e
00000000
ff80: df93e008 c08c9fc0 30c2387d df93e000 80007000 412fc0f4 00000000
df93ffc4
ffa0: df93ffc8 df93ffb8 c000eca4 c000eca8 60070013 ffffffff
[<c05fca00>] (__irq_svc+0x40/0x70) from [<c000eca8>]
(arch_cpu_idle+0x34/0x3c)
[<c000eca8>] (arch_cpu_idle+0x34/0x3c) from [<c005fe0c>]
(cpu_startup_entry+0x1cc/0x22c)
[<c005fe0c>] (cpu_startup_entry+0x1cc/0x22c) from [<c087c548>]
(secondary_start_kernel+0x120/0x13c)
1 configure a project
$
/mnt/home/wrt/windriver/lpg-build/cdc/fast_prod/wrlinux60/dvd_install/lx27_13fa/wrlinux-6/wrlinux/configure
\
--enable-board=ti-66ak2hxx --enable-kernel=standard
--enable-rootfs=glibc-std \
--with-layer=/home/wrt/windriver/wr-testing/userspace-new \
--with-template=feature/valgrind,feature/libhugetlbfs,feature/lttng2,feature/acl,feature/nfsd,feature/mysql,feature/mysql-odbc,feature/oprofile
\
--enable-test=yes
2. $ make fs
3. start target with nfs rootfs, on target
$ while true;do ifconfig eth1 down;ifconfig eth1 192.168.10.10 up;sleep
3;done