[problem] atmel_nand 40000000.nand: PMECC: Too many errors
Josh Wu
josh.wu at atmel.com
Thu Aug 29 05:07:45 EDT 2013
Hi, Jiri
Could you please try to write your ubi.image with the 'trimffs' option
via SAM-BA?
Or in U-Boot, use 'nand write.trimffs' to flush the ubi?
On 8/29/2013 4:59 PM, Jiří Prchal wrote:
> Hi,
> I discovered problem with writing to root UBIFS on NAND. I have tried
> kernels 3.9.7, 3.10.9 and the one from
> git://github.com/linux4sam/linux-at91.git.
> I write ubi.img in u-boot, every think is ok, booting kernel with read
> only root is ok. Booting with rw first time is ok too. But, probably
> after some writes, booting next time goes bad and after more boots
> fails totally. If I write ubi.img again in u-boot, first boot is ok. I
> have tried every settings, googling a lot, but without any improvement.
> I append truncated boot log of 3.10.9 kernel:
> ...
> [ 0.562500] ssc f0010000.ssc: Atmel SSC device at 0xc8850000 (irq 22)
> [ 0.578125] atmel_nand 40000000.nand: No DMA support for NAND access.
> [ 0.585937] ONFI param page 0 valid
> [ 0.593750] ONFI flash detected
> [ 0.593750] NAND device: Manufacturer ID: 0x2c, Chip ID: 0xaa
> (Micron MT29F2G08ABBEAH4), 256MiB, page size: 2048, OOB size: 64
> [ 0.601562] atmel_nand 40000000.nand: ONFI params, minimum required
> ECC: 4 bits in 512 bytes
> [ 0.609375] atmel_nand 40000000.nand: Initialize PMECC params, cap:
> 4, sector: 512
> [ 0.617187] Scanning device for bad blocks
> [ 0.750000] 5 ofpart partitions found on MTD device atmel_nand
> [ 0.750000] Creating 5 MTD partitions on "atmel_nand":
> [ 0.757812] 0x000000000000-0x000000040000 : "bootstrap"
> [ 0.765625] 0x000000040000-0x000000100000 : "uboot"
> [ 0.773437] 0x000000100000-0x000000140000 : "ubootenv"
> [ 0.781250] 0x000000140000-0x000000600000 : "kernel"
> [ 0.789062] 0x000000600000-0x000010000000 : "root"
> [ 0.804687] libphy: MACB_mii_bus: probed
> ...
> [ 1.101562] NET: Registered protocol family 17
> [ 1.109375] UBI: attaching mtd4 to ubi0
> [ 1.203125] atmel_nand 40000000.nand: Bit flip in data area,
> byte_pos: 1069, bit_pos: 0, 0xfe -> 0xff
> [ 1.875000] UBI: scanning is finished
> [ 1.898437] UBI: attached mtd4 (name "root", size 250 MiB) to ubi0
> [ 1.898437] UBI: PEB size: 131072 bytes (128 KiB), LEB size: 126976
> bytes
> [ 1.906250] UBI: min./max. I/O unit sizes: 2048/2048, sub-page size
> 2048
> [ 1.914062] UBI: VID header offset: 2048 (aligned 2048), data
> offset: 4096
> [ 1.921875] UBI: good PEBs: 2000, bad PEBs: 0, corrupted PEBs: 0
> [ 1.921875] UBI: user volume: 1, internal volumes: 1, max. volumes
> count: 128
> [ 1.929687] UBI: max/mean erase counter: 1/0, WL threshold: 256,
> image sequence number: 30979213
> [ 1.937500] UBI: available PEBs: 0, total reserved PEBs: 2000, PEBs
> reserved for bad PEB handling: 40
> [ 1.945312] at91_rtc fffffeb0.rtc: setting system clock to
> 2007-01-01 00:00:17 UTC (1167609617)
> [ 1.953125] atmel_mci f0008000.mmc: version: 0x504
> [ 1.953125] atmel_mci f0008000.mmc: using dma0chan0 for DMA transfers
> [ 1.960937] UBI: background thread "ubi_bgt0d" started, PID 386
> [ 2.015625] atmel_mci f0008000.mmc: Atmel MCI controller at
> 0xf0008000 irq 23, 1 slots
> [ 2.023437] atmel_nand 40000000.nand: PMECC: Too many errors
> [ 2.039062] UBI warning: ubi_io_read: error -74 (ECC error) while
> reading 126976 bytes from PEB 3:4096, read only 126976 bytes, retry
> [ 2.046875] UBIFS: background thread "ubifs_bgt0_0" started, PID 391
> [ 2.054687] atmel_nand 40000000.nand: PMECC: Too many errors
> [ 2.070312] UBI warning: ubi_io_read: error -74 (ECC error) while
> reading 126976 bytes from PEB 3:4096, read only 126976 bytes, retry
> [ 2.078125] atmel_nand 40000000.nand: PMECC: Too many errors
> [ 2.093750] UBI warning: ubi_io_read: error -74 (ECC error) while
> reading 126976 bytes from PEB 3:4096, read only 126976 bytes, retry
> [ 2.101562] atmel_nand 40000000.nand: PMECC: Too many errors
> [ 2.117187] UBI error: ubi_io_read: error -74 (ECC error) while
> reading 126976 bytes from PEB 3:4096, read 126976 bytes
> [ 2.125000] CPU: 0 PID: 1 Comm: swapper Not tainted 3.10.9cdung #20
> [ 2.132812] [<c000d558>] (unwind_backtrace+0x0/0xe4) from
> [<c000bca4>] (show_stack+0x10/0x14)
> [ 2.140625] [<c000bca4>] (show_stack+0x10/0x14) from [<c01de3b8>]
> (ubi_io_read+0x1d0/0x294)
> [ 2.148437] [<c01de3b8>] (ubi_io_read+0x1d0/0x294) from
> [<c01dbd5c>] (ubi_eba_read_leb+0x2d4/0x3dc)
> [ 2.156250] [<c01dbd5c>] (ubi_eba_read_leb+0x2d4/0x3dc) from
> [<c01db234>] (ubi_leb_read+0xd4/0x128)
> [ 2.164062] [<c01db234>] (ubi_leb_read+0xd4/0x128) from
> [<c01202c0>] (ubifs_leb_read+0x24/0x84)
> [ 2.171875] [<c01202c0>] (ubifs_leb_read+0x24/0x84) from
> [<c0127828>] (ubifs_start_scan+0x6c/0xe8)
> [ 2.179687] [<c0127828>] (ubifs_start_scan+0x6c/0xe8) from
> [<c0127b34>] (ubifs_scan+0x20/0x2d8)
> [ 2.187500] [<c0127b34>] (ubifs_scan+0x20/0x2d8) from [<c01267fc>]
> (ubifs_read_master+0x40/0xd30)
> [ 2.195312] [<c01267fc>] (ubifs_read_master+0x40/0xd30) from
> [<c011df2c>] (ubifs_mount+0xd8c/0x1560)
> [ 2.203125] [<c011df2c>] (ubifs_mount+0xd8c/0x1560) from
> [<c007d450>] (mount_fs+0x10/0xbc)
> [ 2.210937] [<c007d450>] (mount_fs+0x10/0xbc) from [<c0090ce8>]
> (vfs_kern_mount+0x4c/0xc0)
> [ 2.218750] [<c0090ce8>] (vfs_kern_mount+0x4c/0xc0) from
> [<c00929f0>] (do_mount+0x6e4/0x804)
> [ 2.226562] [<c00929f0>] (do_mount+0x6e4/0x804) from [<c0092b94>]
> (SyS_mount+0x84/0xb8)
> [ 2.234375] [<c0092b94>] (SyS_mount+0x84/0xb8) from [<c03d9d4c>]
> (mount_block_root+0x114/0x2c0)
> [ 2.242187] [<c03d9d4c>] (mount_block_root+0x114/0x2c0) from
> [<c03da0e0>] (prepare_namespace+0x88/0x1a4)
> [ 2.250000] [<c03da0e0>] (prepare_namespace+0x88/0x1a4) from
> [<c03d9aec>] (kernel_init_freeable+0x168/0x1ac)
> [ 2.257812] [<c03d9aec>] (kernel_init_freeable+0x168/0x1ac) from
> [<c02d7c00>] (kernel_init+0x8/0xe4)
> [ 2.265625] [<c02d7c00>] (kernel_init+0x8/0xe4) from [<c0009370>]
> (ret_from_fork+0x14/0x24)
> [ 2.273437] atmel_nand 40000000.nand: PMECC: Too many errors
> [ 2.289062] UBI warning: ubi_io_read: error -74 (ECC error) while
> reading 126976 bytes from PEB 4:4096, read only 126976 bytes, retry
> [ 2.296875] atmel_nand 40000000.nand: PMECC: Too many errors
> [ 2.312500] UBI warning: ubi_io_read: error -74 (ECC error) while
> reading 126976 bytes from PEB 4:4096, read only 126976 bytes, retry
> [ 2.320312] atmel_nand 40000000.nand: PMECC: Too many errors
> [ 2.335937] UBI warning: ubi_io_read: error -74 (ECC error) while
> reading 126976 bytes from PEB 4:4096, read only 126976 bytes, retry
> [ 2.343750] atmel_nand 40000000.nand: PMECC: Too many errors
> [ 2.359375] UBI error: ubi_io_read: error -74 (ECC error) while
> reading 126976 bytes from PEB 4:4096, read 126976 bytes
> [ 2.367187] CPU: 0 PID: 1 Comm: swapper Not tainted 3.10.9cdung #20
> [ 2.375000] [<c000d558>] (unwind_backtrace+0x0/0xe4) from
> [<c000bca4>] (show_stack+0x10/0x14)
> [ 2.382812] [<c000bca4>] (show_stack+0x10/0x14) from [<c01de3b8>]
> (ubi_io_read+0x1d0/0x294)
> [ 2.390625] [<c01de3b8>] (ubi_io_read+0x1d0/0x294) from
> [<c01dbd5c>] (ubi_eba_read_leb+0x2d4/0x3dc)
> [ 2.398437] [<c01dbd5c>] (ubi_eba_read_leb+0x2d4/0x3dc) from
> [<c01db234>] (ubi_leb_read+0xd4/0x128)
> [ 2.406250] [<c01db234>] (ubi_leb_read+0xd4/0x128) from
> [<c01202c0>] (ubifs_leb_read+0x24/0x84)
> [ 2.414062] [<c01202c0>] (ubifs_leb_read+0x24/0x84) from
> [<c0127828>] (ubifs_start_scan+0x6c/0xe8)
> [ 2.421875] [<c0127828>] (ubifs_start_scan+0x6c/0xe8) from
> [<c0127b34>] (ubifs_scan+0x20/0x2d8)
> [ 2.429687] [<c0127b34>] (ubifs_scan+0x20/0x2d8) from [<c0126864>]
> (ubifs_read_master+0xa8/0xd30)
> [ 2.437500] [<c0126864>] (ubifs_read_master+0xa8/0xd30) from
> [<c011df2c>] (ubifs_mount+0xd8c/0x1560)
> [ 2.445312] [<c011df2c>] (ubifs_mount+0xd8c/0x1560) from
> [<c007d450>] (mount_fs+0x10/0xbc)
> [ 2.453125] [<c007d450>] (mount_fs+0x10/0xbc) from [<c0090ce8>]
> (vfs_kern_mount+0x4c/0xc0)
> [ 2.460937] [<c0090ce8>] (vfs_kern_mount+0x4c/0xc0) from
> [<c00929f0>] (do_mount+0x6e4/0x804)
> [ 2.468750] [<c00929f0>] (do_mount+0x6e4/0x804) from [<c0092b94>]
> (SyS_mount+0x84/0xb8)
> [ 2.476562] [<c0092b94>] (SyS_mount+0x84/0xb8) from [<c03d9d4c>]
> (mount_block_root+0x114/0x2c0)
> [ 2.484375] [<c03d9d4c>] (mount_block_root+0x114/0x2c0) from
> [<c03da0e0>] (prepare_namespace+0x88/0x1a4)
> [ 2.492187] [<c03da0e0>] (prepare_namespace+0x88/0x1a4) from
> [<c03d9aec>] (kernel_init_freeable+0x168/0x1ac)
> [ 2.500000] [<c03d9aec>] (kernel_init_freeable+0x168/0x1ac) from
> [<c02d7c00>] (kernel_init+0x8/0xe4)
> [ 2.507812] [<c02d7c00>] (kernel_init+0x8/0xe4) from [<c0009370>]
> (ret_from_fork+0x14/0x24)
> [ 2.515625] UBIFS: recovery needed
> [ 2.523437] atmel_nand 40000000.nand: PMECC: Too many errors
> [ 2.531250] atmel_nand 40000000.nand: PMECC: Too many errors
> [ 2.546875] UBI warning: ubi_io_read: error -74 (ECC error) while
> reading 126976 bytes from PEB 5:4096, read only 126976 bytes, retry
> [ 2.554687] atmel_nand 40000000.nand: PMECC: Too many errors
> [ 2.562500] atmel_nand 40000000.nand: PMECC: Too many errors
> [ 2.578125] UBI warning: ubi_io_read: error -74 (ECC error) while
> reading 126976 bytes from PEB 5:4096, read only 126976 bytes, retry
> [ 2.593750] atmel_nand 40000000.nand: PMECC: Too many errors
> [ 2.593750] atmel_nand 40000000.nand: PMECC: Too many errors
> [ 2.609375] UBI warning: ubi_io_read: error -74 (ECC error) while
> reading 126976 bytes from PEB 5:4096, read only 126976 bytes, retry
> [ 2.617187] atmel_nand 40000000.nand: PMECC: Too many errors
> [ 2.617187] atmel_nand 40000000.nand: PMECC: Too many errors
> [ 2.640625] UBI error: ubi_io_read: error -74 (ECC error) while
> reading 126976 bytes from PEB 5:4096, read 126976 bytes
> [ 2.648437] CPU: 0 PID: 1 Comm: swapper Not tainted 3.10.9cdung #20
> [ 2.656250] [<c000d558>] (unwind_backtrace+0x0/0xe4) from
> [<c000bca4>] (show_stack+0x10/0x14)
> [ 2.664062] [<c000bca4>] (show_stack+0x10/0x14) from [<c01de3b8>]
> (ubi_io_read+0x1d0/0x294)
> [ 2.671875] [<c01de3b8>] (ubi_io_read+0x1d0/0x294) from
> [<c01dbd5c>] (ubi_eba_read_leb+0x2d4/0x3dc)
> [ 2.679687] [<c01dbd5c>] (ubi_eba_read_leb+0x2d4/0x3dc) from
> [<c01db234>] (ubi_leb_read+0xd4/0x128)
> [ 2.687500] [<c01db234>] (ubi_leb_read+0xd4/0x128) from
> [<c01202c0>] (ubifs_leb_read+0x24/0x84)
> [ 2.695312] [<c01202c0>] (ubifs_leb_read+0x24/0x84) from
> [<c0127828>] (ubifs_start_scan+0x6c/0xe8)
> [ 2.703125] [<c0127828>] (ubifs_start_scan+0x6c/0xe8) from
> [<c0127b34>] (ubifs_scan+0x20/0x2d8)
> [ 2.710937] [<c0127b34>] (ubifs_scan+0x20/0x2d8) from [<c0128244>]
> (ubifs_replay_journal+0x190/0x142c)
> [ 2.718750] [<c0128244>] (ubifs_replay_journal+0x190/0x142c) from
> [<c011e0c0>] (ubifs_mount+0xf20/0x1560)
> [ 2.726562] [<c011e0c0>] (ubifs_mount+0xf20/0x1560) from
> [<c007d450>] (mount_fs+0x10/0xbc)
> [ 2.734375] [<c007d450>] (mount_fs+0x10/0xbc) from [<c0090ce8>]
> (vfs_kern_mount+0x4c/0xc0)
> [ 2.742187] [<c0090ce8>] (vfs_kern_mount+0x4c/0xc0) from
> [<c00929f0>] (do_mount+0x6e4/0x804)
> [ 2.750000] [<c00929f0>] (do_mount+0x6e4/0x804) from [<c0092b94>]
> (SyS_mount+0x84/0xb8)
> [ 2.757812] [<c0092b94>] (SyS_mount+0x84/0xb8) from [<c03d9d4c>]
> (mount_block_root+0x114/0x2c0)
> [ 2.765625] [<c03d9d4c>] (mount_block_root+0x114/0x2c0) from
> [<c03da0e0>] (prepare_namespace+0x88/0x1a4)
> [ 2.773437] [<c03da0e0>] (prepare_namespace+0x88/0x1a4) from
> [<c03d9aec>] (kernel_init_freeable+0x168/0x1ac)
> [ 2.781250] [<c03d9aec>] (kernel_init_freeable+0x168/0x1ac) from
> [<c02d7c00>] (kernel_init+0x8/0xe4)
> [ 2.789062] [<c02d7c00>] (kernel_init+0x8/0xe4) from [<c0009370>]
> (ret_from_fork+0x14/0x24)
> [ 2.804687] atmel_nand 40000000.nand: PMECC: Too many errors
> [ 2.812500] atmel_nand 40000000.nand: PMECC: Too many errors
> [ 2.820312] atmel_nand 40000000.nand: PMECC: Too many errors
> [ 2.828125] atmel_nand 40000000.nand: PMECC: Too many errors
> [ 2.835937] UBI warning: ubi_io_read: error -74 (ECC error) while
> reading 40960 bytes from PEB 237:90112, read only 40960 bytes, retry
> [ 2.843750] atmel_nand 40000000.nand: PMECC: Too many errors
> [ 2.851562] atmel_nand 40000000.nand: PMECC: Too many errors
> [ 2.859375] atmel_nand 40000000.nand: PMECC: Too many errors
> [ 2.859375] atmel_nand 40000000.nand: PMECC: Too many errors
> [ 2.867187] UBI warning: ubi_io_read: error -74 (ECC error) while
> reading 40960 bytes from PEB 237:90112, read only 40960 bytes, retry
> [ 2.875000] atmel_nand 40000000.nand: PMECC: Too many errors
> [ 2.882812] atmel_nand 40000000.nand: PMECC: Too many errors
> [ 2.882812] atmel_nand 40000000.nand: PMECC: Too many errors
> [ 2.890625] atmel_nand 40000000.nand: PMECC: Too many errors
> [ 2.898437] UBI warning: ubi_io_read: error -74 (ECC error) while
> reading 40960 bytes from PEB 237:90112, read only 40960 bytes, retry
> [ 2.906250] atmel_nand 40000000.nand: PMECC: Too many errors
> [ 2.906250] atmel_nand 40000000.nand: PMECC: Too many errors
> [ 2.914062] atmel_nand 40000000.nand: PMECC: Too many errors
> [ 2.921875] atmel_nand 40000000.nand: PMECC: Too many errors
> [ 2.929687] UBI error: ubi_io_read: error -74 (ECC error) while
> reading 40960 bytes from PEB 237:90112, read 40960 bytes
> [ 2.937500] CPU: 0 PID: 1 Comm: swapper Not tainted 3.10.9cdung #20
> [ 2.945312] [<c000d558>] (unwind_backtrace+0x0/0xe4) from
> [<c000bca4>] (show_stack+0x10/0x14)
> [ 2.953125] [<c000bca4>] (show_stack+0x10/0x14) from [<c01de3b8>]
> (ubi_io_read+0x1d0/0x294)
> [ 2.960937] [<c01de3b8>] (ubi_io_read+0x1d0/0x294) from
> [<c01dbd5c>] (ubi_eba_read_leb+0x2d4/0x3dc)
> [ 2.968750] [<c01dbd5c>] (ubi_eba_read_leb+0x2d4/0x3dc) from
> [<c01db234>] (ubi_leb_read+0xd4/0x128)
> [ 2.976562] [<c01db234>] (ubi_leb_read+0xd4/0x128) from
> [<c01202c0>] (ubifs_leb_read+0x24/0x84)
> [ 2.984375] [<c01202c0>] (ubifs_leb_read+0x24/0x84) from
> [<c0127828>] (ubifs_start_scan+0x6c/0xe8)
> [ 2.992187] [<c0127828>] (ubifs_start_scan+0x6c/0xe8) from
> [<c01379f0>] (ubifs_recover_leb+0x54/0x6ac)
> [ 3.000000] [<c01379f0>] (ubifs_recover_leb+0x54/0x6ac) from
> [<c012882c>] (ubifs_replay_journal+0x778/0x142c)
> [ 3.007812] [<c012882c>] (ubifs_replay_journal+0x778/0x142c) from
> [<c011e0c0>] (ubifs_mount+0xf20/0x1560)
> [ 3.015625] [<c011e0c0>] (ubifs_mount+0xf20/0x1560) from
> [<c007d450>] (mount_fs+0x10/0xbc)
> [ 3.023437] [<c007d450>] (mount_fs+0x10/0xbc) from [<c0090ce8>]
> (vfs_kern_mount+0x4c/0xc0)
> [ 3.031250] [<c0090ce8>] (vfs_kern_mount+0x4c/0xc0) from
> [<c00929f0>] (do_mount+0x6e4/0x804)
> [ 3.039062] [<c00929f0>] (do_mount+0x6e4/0x804) from [<c0092b94>]
> (SyS_mount+0x84/0xb8)
> [ 3.046875] [<c0092b94>] (SyS_mount+0x84/0xb8) from [<c03d9d4c>]
> (mount_block_root+0x114/0x2c0)
> [ 3.054687] [<c03d9d4c>] (mount_block_root+0x114/0x2c0) from
> [<c03da0e0>] (prepare_namespace+0x88/0x1a4)
> [ 3.062500] [<c03da0e0>] (prepare_namespace+0x88/0x1a4) from
> [<c03d9aec>] (kernel_init_freeable+0x168/0x1ac)
> [ 3.070312] [<c03d9aec>] (kernel_init_freeable+0x168/0x1ac) from
> [<c02d7c00>] (kernel_init+0x8/0xe4)
> [ 3.078125] [<c02d7c00>] (kernel_init+0x8/0xe4) from [<c0009370>]
> (ret_from_fork+0x14/0x24)
> [ 3.148437] UBIFS: recovery completed
> [ 3.148437] UBIFS: mounted UBI device 0, volume 0, name "root"
> [ 3.156250] UBIFS: LEB size: 126976 bytes (124 KiB), min./max. I/O
> unit sizes: 2048 bytes/2048 bytes
> [ 3.164062] UBIFS: FS size: 246968320 bytes (235 MiB, 1945 LEBs),
> journal size 9023488 bytes (8 MiB, 72 LEBs)
> [ 3.171875] UBIFS: reserved for root: 0 bytes (0 KiB)
> [ 3.179687] UBIFS: media format: w4/r0 (latest is w4/r0), UUID
> 787BCA8A-D4DB-4306-874F-5C478BFC4132, small LPT model
> [ 3.187500] VFS: Mounted root (ubifs filesystem) on device 0:11.
> [ 3.195312] Freeing unused kernel memory: 128K (c03d9000 - c03f9000)
> init started: BusyBox v1.18.4 (2012-07-19 15:43:05 CEST)
> Initializing mdev dynamic device directory ... done
> ...
>
> Thank for any help.
Best Regards,
Josh Wu
More information about the linux-arm-kernel
mailing list