Kernel crashes when CONFIG_MTD_NAND_VERIFY_WRITE=y
Fabio Estevam
festevam at gmail.com
Thu Aug 9 19:43:54 EDT 2012
Hi,
When enabling CONFIG_MTD_NAND_VERIFY_WRITE=y on a mx28evk board
running 3.6-rc1 I get the following crash:
root at freescale /$ dd if=/dev/zero of=/dev/mtd0 bs=128k count=1
[ 41.070000] Unable to handle kernel NULL pointer dereference at virtual addr0
[ 41.080000] pgd = c77ac000
[ 41.080000] [00000000] *pgd=4773c831, *pte=00000000, *ppte=00000000
[ 41.090000] Internal error: Oops: 17 [#1] ARM
[ 41.090000] Modules linked in:
[ 41.090000] CPU: 0 Not tainted (3.6.0-rc1-next-20120809-00002-ga25d017-d)
[ 41.090000] PC is at nand_verify_buf+0x18/0x5c
[ 41.090000] LR is at nand_write_page+0xc0/0x140
[ 41.090000] pc : [<c023e7d4>] lr : [<c023fcfc>] psr: 20000013
[ 41.090000] sp : c7779de4 ip : 00000000 fp : c6e60000
[ 41.090000] r10: 00000000 r9 : 00020000 r8 : 00000000
[ 41.090000] r7 : 00000000 r6 : c6e60000 r5 : c762cb10 r4 : 00000000
[ 41.090000] r3 : c762c8a8 r2 : 00000800 r1 : c6e60000 r0 : 00000000
[ 41.090000] Flags: nzCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment user
[ 41.090000] Control: 0005317f Table: 477ac000 DAC: 00000015
[ 41.090000] Process dd (pid: 427, stack limit = 0xc7778270)
[ 41.090000] Stack: (0xc7779de4 to 0xc777a000)
[ 41.090000] 9de0: c762c8a8 c762c8a8 c0246ba8 00000800 c762cb10 c7620
[ 41.090000] 9e00: 00000001 c0240c98 00000000 00000001 00000000 00000007 c7620
[ 41.090000] 9e20: 00000000 c6e60000 00000000 ffffffff 00000000 00020000 00000
[ 41.090000] 9e40: 0000007f 00000000 c77cc400 c004a934 00000000 c762cb10 c7620
[ 41.090000] 9e60: 00000000 80000000 00000000 80000000 00000000 c0241010 c7775
[ 41.090000] 9e80: 00000000 00020000 00000000 00020000 00000000 00000000 c6e60
[ 41.090000] 9ea0: 00020000 00000400 00000000 c0238368 00020000 c7779f28 c6e60
[ 41.090000] 9ec0: 00020000 c7779f80 c77c7ae0 b6dde008 c7778000 c7779f28 c6e68
[ 41.090000] 9ee0: 00020000 c7779f28 c6e60000 00000005 c04f46dc 00000000 c7770
[ 41.090000] 9f00: b6dde008 c6e60000 00000000 c00085a0 c7778000 c7688cc8 00000
[ 41.090000] 9f20: 00000000 00000000 00000000 00020000 00000000 c77b7f00 00028
[ 41.090000] 9f40: c7779f80 c7778000 00000000 00000000 00000000 c00cc054 00000
[ 41.090000] 9f60: c000f298 c77b7f00 b6dde008 00020000 00000004 00000000 0000c
[ 41.090000] 9f80: 00000000 00000000 b6f4d4d0 00000000 00020000 b6dde008 b6f48
[ 41.090000] 9fa0: c7778000 c000f1a0 00020000 b6dde008 00000001 b6dde008 0002c
[ 41.090000] 9fc0: 00020000 b6dde008 b6f4d4d0 00000004 00098a30 b6dde008 00000
[ 41.090000] 9fe0: 00000001 bebc5b68 0000f338 b6eb60bc 60000010 00000001 00000
[ 41.090000] [<c023e7d4>] (nand_verify_buf+0x18/0x5c) from [<c762c8a8>] (0xc7)
[ 41.090000] Code: e59030dc da00000d e5934000 e5d10000 (e5d43000)
[ 41.320000] ---[ end trace 92fce7df493d29ed ]---
The same write command works if CONFIG_MTD_NAND_VERIFY_WRITE is unselected.
Any ideas?
Thanks,
Fabio Estevam
More information about the linux-mtd
mailing list