* Fail to mount ubifs
@ 2010-01-11 18:56 Jon Ringle
2010-01-12 0:20 ` Jon Ringle
0 siblings, 1 reply; 17+ messages in thread
From: Jon Ringle @ 2010-01-11 18:56 UTC (permalink / raw)
To: linux-mtd
Hi,
I'm having problems with mounting ubifs. Flash is 32MB NOR (Intel
strata JS28F256P30T95).
Linux-2.6.31.11 with backport updates from
git://git.infradead.org/~dedekind/ubifs-v2.6.31.git
It fails to mount even if I truncate the volume with 'ubiupdatevol -t
/dev/ubi0_2'.
Thanks for your help.
Jon
$ grep _UBI kernelconfig-2.6.31
CONFIG_MTD_UBI=m
CONFIG_MTD_UBI_WL_THRESHOLD=4096
CONFIG_MTD_UBI_BEB_RESERVE=1
CONFIG_MTD_UBI_GLUEBI=m
# CONFIG_MTD_UBI_DEBUG is not set
CONFIG_UBIFS_FS=m
# CONFIG_UBIFS_FS_XATTR is not set
# CONFIG_UBIFS_FS_ADVANCED_COMPR is not set
CONFIG_UBIFS_FS_LZO=y
CONFIG_UBIFS_FS_ZLIB=y
CONFIG_UBIFS_FS_DEBUG=y
CONFIG_UBIFS_FS_DEBUG_MSG_LVL=0
CONFIG_UBIFS_FS_DEBUG_CHKS=y
(initramfs) lsmod
Module Size Used by
ubifs 376300 0
gluebi 6616 2
ixp4xx_eth 13972 0
pcimsg 9144 0
ubi 84092 3 ubifs,gluebi
ixp4xx 3532 1
redboot 4128 0
(initramfs) cat /proc/mtd
dev: size erasesize name
mtd0: 00080000 00020000 "RedBoot"
mtd1: 01f20000 00020000 "ubi"
mtd2: 00001000 00020000 "RedBoot config"
mtd3: 00020000 00020000 "FIS directory"
mtd4: 00352080 0001ff80 "kernel"
mtd5: 00d34000 0001ff80 "squashfs"
mtd6: 00dfc800 0001ff80 "ubifs"
(initramfs) ubinfo -a
UBI version: 1
Count of UBI devices: 1
UBI control device major/minor: 10:60
Present UBI devices: ubi0
ubi0
Volumes count: 3
Logical eraseblock size: 130944 bytes, f KiB
Total amount of logical eraseblocks: 249 (32605056 bytes, f MiB)
Amount of available logical eraseblocks: 0 (0 bytes)
Maximum count of volumes 128
Count of bad physical eraseblocks: 0
Count of reserved physical eraseblocks: 0
Current maximum erase counter value: 65
Minimum input/output unit size: 1 byte
Character device major/minor: 253:0
Present volumes: 0, 1, 2
Volume ID: 0 (on ubi0)
Type: static
Alignment: 1
Size: 27 LEBs (3535488 bytes, f MiB)
Data bytes: 3481728 bytes (f MiB)
State: OK
Name: kernel
Character device major/minor: 253:1
-----------------------------------
Volume ID: 1 (on ubi0)
Type: static
Alignment: 1
Size: 106 LEBs (13880064 bytes, f MiB)
Data bytes: 13844480 bytes (f MiB)
State: OK
Name: squashfs
Character device major/minor: 253:2
-----------------------------------
Volume ID: 2 (on ubi0)
Type: dynamic
Alignment: 1
Size: 112 LEBs (14665728 bytes, f MiB)
State: OK
Name: ubifs
Character device major/minor: 253:3
(initramfs) mount -t ubifs ubi0:ubifs /mnt
[ 49.510000] UBIFS DBG (pid 1495): ubifs_bg_thread: background
thread "ubifs_bgt0_2" started, PID 1495
[ 49.590000] UBIFS: recovery needed
[ 49.800000] UBIFS error (pid 1491): check_lpt_crc: invalid crc in
LPT node: crc cbcb calc cbfb
[ 49.810000] [<c01822bc>] (unwind_backtrace+0x0/0x160) from
[<bf071a34>] (check_lpt_crc+0x9c/0xb0 [ubifs])
[ 49.820000] [<bf071a34>] (check_lpt_crc+0x9c/0xb0 [ubifs]) from
[<bf071b24>] (unpack_pnode+0xdc/0xfc [ubifs])
[ 49.830000] [<bf071b24>] (unpack_pnode+0xdc/0xfc [ubifs]) from
[<bf071d8c>] (scan_get_pnode+0x248/0x2ec [ubifs])
[ 49.840000] [<bf071d8c>] (scan_get_pnode+0x248/0x2ec [ubifs]) from
[<bf072738>] (ubifs_lpt_scan_nolock+0x3f8/0x518 [ubifs])
[ 49.850000] [<bf072738>] (ubifs_lpt_scan_nolock+0x3f8/0x518
[ubifs]) from [<bf0754b8>] (dbg_check_lprops+0xf8/0x2e4 [ubifs])
[ 49.860000] [<bf0754b8>] (dbg_check_lprops+0xf8/0x2e4 [ubifs]) from
[<bf0654e4>] (do_commit+0x12c/0xa80 [ubifs])
[ 49.870000] [<bf0654e4>] (do_commit+0x12c/0xa80 [ubifs]) from
[<bf0784dc>] (ubifs_rcvry_gc_commit+0x9c/0x718 [ubifs])
[ 49.880000] [<bf0784dc>] (ubifs_rcvry_gc_commit+0x9c/0x718 [ubifs])
from [<bf051fec>] (mount_ubifs+0x69c/0x1620 [ubifs])
[ 49.890000] [<bf051fec>] (mount_ubifs+0x69c/0x1620 [ubifs]) from
[<bf053d20>] (ubifs_fill_super+0x318/0x42c [ubifs])
[ 49.910000] [<bf053d20>] (ubifs_fill_super+0x318/0x42c [ubifs])
from [<bf053f0c>] (ubifs_get_sb+0xd8/0x22c [ubifs])
[ 49.920000] [<bf053f0c>] (ubifs_get_sb+0xd8/0x22c [ubifs]) from
[<c01f5360>] (vfs_kern_mount+0x68/0x12c)
[ 49.930000] [<c01f5360>] (vfs_kern_mount+0x68/0x12c) from
[<c01f5468>] (do_kern_mount+0x34/0xdc)
[ 49.940000] [<c01f5468>] (do_kern_mount+0x34/0xdc) from
[<c020dad0>] (do_mount+0x210/0x244)
[ 49.940000] [<c020dad0>] (do_mount+0x210/0x244) from [<c020dba0>]
(sys_mount+0x9c/0xd0)
[ 49.950000] [<c020dba0>] (sys_mount+0x9c/0xd0) from [<c017c9e0>]
(ret_fast_syscall+0x0/0x2c)
[ 49.960000] UBIFS error (pid 1491): do_commit: commit failed, error -22
[ 49.970000] UBIFS warning (pid 1491): ubifs_ro_mode: switched to
read-only mode, error -22
[ 49.980000] [<c01822bc>] (unwind_backtrace+0x0/0x160) from
[<bf0654a8>] (do_commit+0xf0/0xa80 [ubifs])
[ 49.990000] [<bf0654a8>] (do_commit+0xf0/0xa80 [ubifs]) from
[<bf0784dc>] (ubifs_rcvry_gc_commit+0x9c/0x718 [ubifs])
[ 50.000000] [<bf0784dc>] (ubifs_rcvry_gc_commit+0x9c/0x718 [ubifs])
from [<bf051fec>] (mount_ubifs+0x69c/0x1620 [ubifs])
[ 50.010000] [<bf051fec>] (mount_ubifs+0x69c/0x1620 [ubifs]) from
[<bf053d20>] (ubifs_fill_super+0x318/0x42c [ubifs])
[ 50.020000] [<bf053d20>] (ubifs_fill_super+0x318/0x42c [ubifs])
from [<bf053f0c>] (ubifs_get_sb+0xd8/0x22c [ubifs])
[ 50.030000] [<bf053f0c>] (ubifs_get_sb+0xd8/0x22c [ubifs]) from
[<c01f5360>] (vfs_kern_mount+0x68/0x12c)
[ 50.040000] [<c01f5360>] (vfs_kern_mount+0x68/0x12c) from
[<c01f5468>] (do_kern_mount+0x34/0xdc)
[ 50.050000] [<c01f5468>] (do_kern_mount+0x34/0xdc) from
[<c020dad0>] (do_mount+0x210/0x244)
[ 50.060000] [<c020dad0>] (do_mount+0x210/0x244) from [<c020dba0>]
(sys_mount+0x9c/0xd0)
[ 50.070000] [<c020dba0>] (sys_mount+0x9c/0xd0) from [<c017c9e0>]
(ret_fast_syscall+0x0/0x2c)
[ 50.200000] UBIFS error (pid 1491): check_lpt_crc: invalid crc in
LPT node: crc cbcb calc cbfb
[ 50.210000] [<c01822bc>] (unwind_backtrace+0x0/0x160) from
[<bf071a34>] (check_lpt_crc+0x9c/0xb0 [ubifs])
[ 50.220000] [<bf071a34>] (check_lpt_crc+0x9c/0xb0 [ubifs]) from
[<bf071b24>] (unpack_pnode+0xdc/0xfc [ubifs])
[ 50.230000] [<bf071b24>] (unpack_pnode+0xdc/0xfc [ubifs]) from
[<bf071d8c>] (scan_get_pnode+0x248/0x2ec [ubifs])
[ 50.250000] [<bf071d8c>] (scan_get_pnode+0x248/0x2ec [ubifs]) from
[<bf072738>] (ubifs_lpt_scan_nolock+0x3f8/0x518 [ubifs])
[ 50.260000] [<bf072738>] (ubifs_lpt_scan_nolock+0x3f8/0x518
[ubifs]) from [<bf0754b8>] (dbg_check_lprops+0xf8/0x2e4 [ubifs])
[ 50.270000] [<bf0754b8>] (dbg_check_lprops+0xf8/0x2e4 [ubifs]) from
[<bf051ff4>] (mount_ubifs+0x6a4/0x1620 [ubifs])
[ 50.280000] [<bf051ff4>] (mount_ubifs+0x6a4/0x1620 [ubifs]) from
[<bf053d20>] (ubifs_fill_super+0x318/0x42c [ubifs])
[ 50.290000] [<bf053d20>] (ubifs_fill_super+0x318/0x42c [ubifs])
from [<bf053f0c>] (ubifs_get_sb+0xd8/0x22c [ubifs])
[ 50.300000] [<bf053f0c>] (ubifs_get_sb+0xd8/0x22c [ubifs]) from
[<c01f5360>] (vfs_kern_mount+0x68/0x12c)
[ 50.310000] [<c01f5360>] (vfs_kern_mount+0x68/0x12c) from
[<c01f5468>] (do_kern_mount+0x34/0xdc)
[ 50.320000] [<c01f5468>] (do_kern_mount+0x34/0xdc) from
[<c020dad0>] (do_mount+0x210/0x244)
[ 50.330000] [<c020dad0>] (do_mount+0x210/0x244) from [<c020dba0>]
(sys_mount+0x9c/0xd0)
[ 50.340000] [<c020dba0>] (sys_mount+0x9c/0xd0) from [<c017c9e0>]
(ret_fast_syscall+0x0/0x2c)
[ 50.350000] UBIFS DBG (pid 1495): ubifs_bg_thread: background
thread "ubifs_bgt0_2" stops
mount: Invalid argument
(initramfs) ubiupdatevol -t /dev/ubi0_2
(initramfs) mount -t ubifs ubi0:ubifs /mnt
[ 115.910000] UBIFS: default file-system created
[ 115.980000] UBIFS DBG (pid 1501): ubifs_bg_thread: background
thread "ubifs_bgt0_2" started, PID 1501
[ 116.260000] UBIFS error (pid 1499): check_lpt_crc: invalid crc in
LPT node: crc cbcb calc cbfb
[ 116.270000] [<c01822bc>] (unwind_backtrace+0x0/0x160) from
[<bf071a34>] (check_lpt_crc+0x9c/0xb0 [ubifs])
[ 116.280000] [<bf071a34>] (check_lpt_crc+0x9c/0xb0 [ubifs]) from
[<bf071b24>] (unpack_pnode+0xdc/0xfc [ubifs])
[ 116.290000] [<bf071b24>] (unpack_pnode+0xdc/0xfc [ubifs]) from
[<bf071d8c>] (scan_get_pnode+0x248/0x2ec [ubifs])
[ 116.300000] [<bf071d8c>] (scan_get_pnode+0x248/0x2ec [ubifs]) from
[<bf072738>] (ubifs_lpt_scan_nolock+0x3f8/0x518 [ubifs])
[ 116.310000] [<bf072738>] (ubifs_lpt_scan_nolock+0x3f8/0x518
[ubifs]) from [<bf0754b8>] (dbg_check_lprops+0xf8/0x2e4 [ubifs])
[ 116.320000] [<bf0754b8>] (dbg_check_lprops+0xf8/0x2e4 [ubifs]) from
[<bf051ff4>] (mount_ubifs+0x6a4/0x1620 [ubifs])
[ 116.340000] [<bf051ff4>] (mount_ubifs+0x6a4/0x1620 [ubifs]) from
[<bf053d20>] (ubifs_fill_super+0x318/0x42c [ubifs])
[ 116.350000] [<bf053d20>] (ubifs_fill_super+0x318/0x42c [ubifs])
from [<bf053f0c>] (ubifs_get_sb+0xd8/0x22c [ubifs])
[ 116.360000] [<bf053f0c>] (ubifs_get_sb+0xd8/0x22c [ubifs]) from
[<c01f5360>] (vfs_kern_mount+0x68/0x12c)
[ 116.370000] [<c01f5360>] (vfs_kern_mount+0x68/0x12c) from
[<c01f5468>] (do_kern_mount+0x34/0xdc)
[ 116.380000] [<c01f5468>] (do_kern_mount+0x34/0xdc) from
[<c020dad0>] (do_mount+0x210/0x244)
[ 116.380000] [<c020dad0>] (do_mount+0x210/0x244) from [<c020dba0>]
(sys_mount+0x9c/0xd0)
[ 116.390000] [<c020dba0>] (sys_mount+0x9c/0xd0) from [<c017c9e0>]
(ret_fast_syscall+0x0/0x2c)
[ 116.400000] UBIFS DBG (pid 1501): ubifs_bg_thread: background
thread "ubifs_bgt0_2" stops
mount: Invalid argument
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: Fail to mount ubifs
2010-01-11 18:56 Fail to mount ubifs Jon Ringle
@ 2010-01-12 0:20 ` Jon Ringle
2010-01-12 4:50 ` Artem Bityutskiy
2010-01-12 21:33 ` Artem Bityutskiy
0 siblings, 2 replies; 17+ messages in thread
From: Jon Ringle @ 2010-01-12 0:20 UTC (permalink / raw)
To: linux-mtd
I should be able to mount an empty ubi volume as ubifs right?
But I get this on a freshly made volume:
UBIFS error (pid 1493): check_lpt_crc: invalid crc in LPT node: crc
cbcb calc cbfb
I'm not sure what to try now...
Jon
(initramfs) ubinfo -a
UBI version: 1
Count of UBI devices: 1
UBI control device major/minor: 10:60
Present UBI devices: ubi0
ubi0
Volumes count: 2
Logical eraseblock size: 130944 bytes, f KiB
Total amount of logical eraseblocks: 249 (32605056 bytes, f MiB)
Amount of available logical eraseblocks: 112 (14665728 bytes, f MiB)
Maximum count of volumes 128
Count of bad physical eraseblocks: 0
Count of reserved physical eraseblocks: 0
Current maximum erase counter value: 72
Minimum input/output unit size: 1 byte
Character device major/minor: 253:0
Present volumes: 0, 1
Volume ID: 0 (on ubi0)
Type: static
Alignment: 1
Size: 27 LEBs (3535488 bytes, f MiB)
Data bytes: 3481728 bytes (f MiB)
State: OK
Name: kernel
Character device major/minor: 253:1
-----------------------------------
Volume ID: 1 (on ubi0)
Type: static
Alignment: 1
Size: 106 LEBs (13880064 bytes, f MiB)
Data bytes: 13844480 bytes (f MiB)
State: OK
Name: squashfs
Character device major/minor: 253:2
(initramfs)
(initramfs) ubimkvol -m -N ubifs /dev/ubi0
Set volume size to 14665728
Volume ID 2, size 112 LEBs (14665728 bytes, f MiB), LEB size 130944
bytes (f KiB), dynamic, name "ubifs", alignment 1
(initramfs)
(initramfs) mkdir /mnt
(initramfs) mount -t ubifs ubi0:ubifs /mnt
[ 277.900000] UBIFS: default file-system created
[ 277.980000] UBIFS DBG (pid 1497): ubifs_bg_thread: background
thread "ubifs_bgt0_2" started, PID 1497
[ 278.260000] UBIFS error (pid 1493): check_lpt_crc: invalid crc in
LPT node: crc cbcb calc cbfb
[ 278.260000] [<c01822bc>] (unwind_backtrace+0x0/0x160) from
[<bf071a34>] (check_lpt_crc+0x9c/0xb0 [ubifs])
[ 278.270000] [<bf071a34>] (check_lpt_crc+0x9c/0xb0 [ubifs]) from
[<bf071b24>] (unpack_pnode+0xdc/0xfc [ubifs])
[ 278.280000] [<bf071b24>] (unpack_pnode+0xdc/0xfc [ubifs]) from
[<bf071d8c>] (scan_get_pnode+0x248/0x2ec [ubifs])
[ 278.300000] [<bf071d8c>] (scan_get_pnode+0x248/0x2ec [ubifs]) from
[<bf072738>] (ubifs_lpt_scan_nolock+0x3f8/0x518 [ubifs])
[ 278.310000] [<bf072738>] (ubifs_lpt_scan_nolock+0x3f8/0x518
[ubifs]) from [<bf0754b8>] (dbg_check_lprops+0xf8/0x2e4 [ubifs])
[ 278.320000] [<bf0754b8>] (dbg_check_lprops+0xf8/0x2e4 [ubifs]) from
[<bf051ff4>] (mount_ubifs+0x6a4/0x1620 [ubifs])
[ 278.330000] [<bf051ff4>] (mount_ubifs+0x6a4/0x1620 [ubifs]) from
[<bf053d20>] (ubifs_fill_super+0x318/0x42c [ubifs])
[ 278.340000] [<bf053d20>] (ubifs_fill_super+0x318/0x42c [ubifs])
from [<bf053f0c>] (ubifs_get_sb+0xd8/0x22c [ubifs])
[ 278.350000] [<bf053f0c>] (ubifs_get_sb+0xd8/0x22c [ubifs]) from
[<c01f5360>] (vfs_kern_mount+0x68/0x12c)
[ 278.360000] [<c01f5360>] (vfs_kern_mount+0x68/0x12c) from
[<c01f5468>] (do_kern_mount+0x34/0xdc)
[ 278.370000] [<c01f5468>] (do_kern_mount+0x34/0xdc) from
[<c020dad0>] (do_mount+0x210/0x244)
[ 278.380000] [<c020dad0>] (do_mount+0x210/0x244) from [<c020dba0>]
(sys_mount+0x9c/0xd0)
[ 278.390000] [<c020dba0>] (sys_mount+0x9c/0xd0) from [<c017c9e0>]
(ret_fast_syscall+0x0/0x2c)
[ 278.400000] UBIFS DBG (pid 1497): ubifs_bg_thread: background
thread "ubifs_bgt0_2" stops
mount: Invalid argument
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: Fail to mount ubifs
2010-01-12 0:20 ` Jon Ringle
@ 2010-01-12 4:50 ` Artem Bityutskiy
2010-01-12 12:07 ` Jon Ringle
2010-01-12 20:23 ` Jon Ringle
2010-01-12 21:33 ` Artem Bityutskiy
1 sibling, 2 replies; 17+ messages in thread
From: Artem Bityutskiy @ 2010-01-12 4:50 UTC (permalink / raw)
To: Jon Ringle; +Cc: linux-mtd
Hi,
On Mon, 2010-01-11 at 19:20 -0500, Jon Ringle wrote:
> I should be able to mount an empty ubi volume as ubifs right?
> But I get this on a freshly made volume:
> UBIFS error (pid 1493): check_lpt_crc: invalid crc in LPT node: crc
> cbcb calc cbfb
>
> I'm not sure what to try now...
As this entry suggests:
http://www.linux-mtd.infradead.org/doc/ubifs.html#L_how_send_bugreport
- validate your flash/driver with the MTD tests - looks like you have a
problem there.
> (initramfs) ubinfo -a
> UBI version: 1
> Count of UBI devices: 1
> UBI control device major/minor: 10:60
> Present UBI devices: ubi0
>
> ubi0
> Volumes count: 2
> Logical eraseblock size: 130944 bytes, f KiB
Hmm, this f KiB looks weird.
--
Best Regards,
Artem Bityutskiy (Артём Битюцкий)
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: Fail to mount ubifs
2010-01-12 4:50 ` Artem Bityutskiy
@ 2010-01-12 12:07 ` Jon Ringle
2010-01-12 21:37 ` Artem Bityutskiy
2010-01-12 20:23 ` Jon Ringle
1 sibling, 1 reply; 17+ messages in thread
From: Jon Ringle @ 2010-01-12 12:07 UTC (permalink / raw)
To: dedekind1; +Cc: linux-mtd
On Mon, Jan 11, 2010 at 11:50 PM, Artem Bityutskiy <dedekind1@gmail.com> wrote:
> Hi,
>
> On Mon, 2010-01-11 at 19:20 -0500, Jon Ringle wrote:
>> I should be able to mount an empty ubi volume as ubifs right?
>> But I get this on a freshly made volume:
>> UBIFS error (pid 1493): check_lpt_crc: invalid crc in LPT node: crc
>> cbcb calc cbfb
>>
>> I'm not sure what to try now...
>
> As this entry suggests:
> http://www.linux-mtd.infradead.org/doc/ubifs.html#L_how_send_bugreport
>
> - validate your flash/driver with the MTD tests - looks like you have a
> problem there.
I will try the tests today and report back.
>> (initramfs) ubinfo -a
>> UBI version: 1
>> Count of UBI devices: 1
>> UBI control device major/minor: 10:60
>> Present UBI devices: ubi0
>>
>> ubi0
>> Volumes count: 2
>> Logical eraseblock size: 130944 bytes, f KiB
>
> Hmm, this f KiB looks weird.
Why is it weird? It is 128 bytes less than my PEB size of 0x20000.
Jon
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: Fail to mount ubifs
2010-01-12 4:50 ` Artem Bityutskiy
2010-01-12 12:07 ` Jon Ringle
@ 2010-01-12 20:23 ` Jon Ringle
2010-01-12 20:49 ` Jon Ringle
2010-01-12 21:30 ` Artem Bityutskiy
1 sibling, 2 replies; 17+ messages in thread
From: Jon Ringle @ 2010-01-12 20:23 UTC (permalink / raw)
To: dedekind1; +Cc: linux-mtd
On Mon, Jan 11, 2010 at 11:50 PM, Artem Bityutskiy <dedekind1@gmail.com> wrote:
> As this entry suggests:
> http://www.linux-mtd.infradead.org/doc/ubifs.html#L_how_send_bugreport
>
> - validate your flash/driver with the MTD tests - looks like you have a
> problem there.
Trying to run mtd_readtest I get a seg fault:
(initramfs) lsmod
Module Size Used by
(initramfs) modprobe redboot
(initramfs) modprobe ixp4xx
[ 37.570000] IXP4XX-Flash.0: Found 1 x16 devices at 0x0 in 16-bit bank
[ 37.570000] Intel/Sharp Extended Query Table at 0x010A
[ 37.580000] Intel/Sharp Extended Query Table at 0x010A
[ 37.580000] Intel/Sharp Extended Query Table at 0x010A
[ 37.590000] Intel/Sharp Extended Query Table at 0x010A
[ 37.590000] Intel/Sharp Extended Query Table at 0x010A
[ 37.600000] Using buffer write method
[ 37.600000] Using auto-unlock on power-up/resume
[ 37.610000] cfi_cmdset_0001: Erase suspend on write enabled
[ 37.610000] Searching for RedBoot partition table in IXP4XX-Flash.0
at offset 0x1fc0000
[ 37.680000] 4 RedBoot partitions found on MTD device IXP4XX-Flash.0
[ 37.690000] Creating 4 MTD partitions on "IXP4XX-Flash.0":
[ 37.700000] 0x000000000000-0x000000080000 : "RedBoot"
[ 37.700000] 0x000000080000-0x000001fa0000 : "ubi"
[ 37.710000] 0x000001fa0000-0x000001fa1000 : "RedBoot config"
[ 37.720000] mtd: partition "RedBoot config" doesn't end on an erase
block -- leaving writable anyway
[ 37.730000] 0x000001fc0000-0x000001fe0000 : "FIS directory"
(initramfs) cat /proc/mtd
dev: size erasesize name
mtd0: 00080000 00020000 "RedBoot"
mtd1: 01f20000 00020000 "ubi"
mtd2: 00001000 00020000 "RedBoot config"
mtd3: 00020000 00020000 "FIS directory"
(initramfs) lsmod
Module Size Used by
ixp4xx 3532 0
redboot 4128 0
(initramfs) modprobe mtd_readtest dev=1
[ 67.430000]
[ 67.430000] =================================================
[ 67.440000] mtd_readtest: MTD device: 1
[ 67.440000] mtd_readtest: not NAND flash, assume page size is 512 bytes.
[ 67.450000] mtd_readtest: MTD device size 32636928, eraseblock size
131072, page size 512, count of eraseblocks 249, pages per eraseblock
131072, OOB size 0
[ 67.470000] mtd_readtest: scanning for bad eraseblocks
[ 67.470000] Unable to handle kernel NULL pointer dereference at
virtual address 00000000
[ 67.480000] pgd = cf978000
[ 67.480000] [00000000] *pgd=0d49e031, *pte=00000000, *ppte=00000000
[ 67.490000] Internal error: Oops: 0 [#1] PREEMPT
[ 67.490000] Modules linked in: mtd_readtest(+) ixp4xx redboot
[ 67.490000] CPU: 0 Not tainted (2.6.31.11-isc #3)
[ 67.490000] PC is at 0x0
[ 67.490000] LR is at scan_for_bad_eraseblocks+0x88/0x10c [mtd_readtest]
[ 67.490000] pc : [<00000000>] lr : [<bf00d28c>] psr: 20000013
[ 67.490000] sp : cf951ef0 ip : 00020000 fp : bf00e18c
[ 67.490000] r10: 00000000 r9 : bf00e178 r8 : cd4e9e00
[ 67.490000] r7 : 01f20000 r6 : bf00e18c r5 : bf00e184 r4 : 00000000
[ 67.490000] r3 : 00000000 r2 : 00000000 r1 : cf97e400 r0 : cf97e400
[ 67.490000] Flags: nzCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment user
[ 67.490000] Control: 000039ff Table: 0f978000 DAC: 00000015
[ 67.490000] Process modprobe (pid: 706, stack limit = 0xcf950270)
[ 67.490000] Stack: (0xcf951ef0 to 0xcf952000)
[ 67.490000] 1ee0: 00020000
bf00e180 00000000 01f20000
[ 67.490000] 1f00: 000000f9 bf00e188 bf00e178 bf011120 00020000
00000200 000000f9 00020000
[ 67.490000] 1f20: 00000000 ffffffff 00000000 0001102a 40000180
c059172c 00000000 bf011000
[ 67.490000] 1f40: cf950000 00000000 40000160 c01c02bc c0575498
c01f3770 00000000 00000000
[ 67.490000] 1f60: 0001102a 0001102a 40000180 bf00e03c 00000000
c01c0b64 cf950000 00000000
[ 67.490000] 1f80: 40000160 c0203c80 00001000 00000003 00000000
00000000 00000000 40000180
[ 67.490000] 1fa0: 00000080 c01c09e0 00000000 00000000 40010000
0001102a 40000180 00000000
[ 67.490000] 1fc0: 00000000 00000000 40000180 00000080 400001a0
400003f0 00000000 40000160
[ 67.490000] 1fe0: 00000000 bedd7a60 00010650 00011564 60000010
40010000 7465456e 64007072
[ 67.490000] Code: bad PC value.
[ 67.640000] ---[ end trace 57fa54383f645c78 ]---
Segment violation
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: Fail to mount ubifs
2010-01-12 20:23 ` Jon Ringle
@ 2010-01-12 20:49 ` Jon Ringle
2010-01-12 21:23 ` Jon Ringle
2010-01-12 21:38 ` Artem Bityutskiy
2010-01-12 21:30 ` Artem Bityutskiy
1 sibling, 2 replies; 17+ messages in thread
From: Jon Ringle @ 2010-01-12 20:49 UTC (permalink / raw)
To: dedekind1; +Cc: linux-mtd
On Tue, Jan 12, 2010 at 3:23 PM, Jon Ringle <jon@ringle.org> wrote:
> On Mon, Jan 11, 2010 at 11:50 PM, Artem Bityutskiy <dedekind1@gmail.com> wrote:
>> As this entry suggests:
>> http://www.linux-mtd.infradead.org/doc/ubifs.html#L_how_send_bugreport
>>
>> - validate your flash/driver with the MTD tests - looks like you have a
>> problem there.
>
> Trying to run mtd_readtest I get a seg fault:
> [ 67.470000] Unable to handle kernel NULL pointer dereference at
> virtual address 00000000
> [ 67.480000] pgd = cf978000
> [ 67.480000] [00000000] *pgd=0d49e031, *pte=00000000, *ppte=00000000
> [ 67.490000] Internal error: Oops: 0 [#1] PREEMPT
> [ 67.490000] Modules linked in: mtd_readtest(+) ixp4xx redboot
> [ 67.490000] CPU: 0 Not tainted (2.6.31.11-isc #3)
> [ 67.490000] PC is at 0x0
> [ 67.490000] LR is at scan_for_bad_eraseblocks+0x88/0x10c [mtd_readtest]
I patched mtd_readtest.c with this:
diff --git a/drivers/mtd/tests/mtd_readtest.c b/drivers/mtd/tests/mtd_readtest.c
index 79fc453..9edd658 100644
--- a/drivers/mtd/tests/mtd_readtest.c
+++ b/drivers/mtd/tests/mtd_readtest.c
@@ -130,7 +130,7 @@ static int is_block_bad(int ebnum)
loff_t addr = ebnum * mtd->erasesize;
int ret;
- ret = mtd->block_isbad(mtd, addr);
+ ret = mtd->block_isbad ? mtd->block_isbad(mtd, addr) : 0;
if (ret)
printk(PRINT_PREF "block %d is bad\n", ebnum);
return ret;
After this, I ran mtd_readtest and it seemed to complete, but then
hang after it was done:
(initramfs) modprobe mtd_readtest dev=1
[ 194.530000]
[ 194.530000] =================================================
[ 194.540000] mtd_readtest: MTD device: 1
[ 194.540000] mtd_readtest: not NAND flash, assume page size is 512 bytes.
[ 194.550000] mtd_readtest: MTD device size 32636928, eraseblock size
131072, page size 512, count of eraseblocks 249, pages per eraseblock
131072, OOB size 0
[ 194.570000] mtd_readtest: scanning for bad eraseblocks
[ 194.570000] mtd_readtest: scanned 249 eraseblocks, 0 are bad
[ 194.580000] mtd_readtest: testing page read
[ 194.960000] ------------[ cut here ]------------
[ 194.960000] WARNING: at kernel/sched.c:5175 do_page_fault+0x16c/0x1ec()
[ 194.960000] Modules linked in: mtd_readtest(+)
^ permalink raw reply related [flat|nested] 17+ messages in thread
* Re: Fail to mount ubifs
2010-01-12 20:49 ` Jon Ringle
@ 2010-01-12 21:23 ` Jon Ringle
2010-01-12 21:38 ` Artem Bityutskiy
1 sibling, 0 replies; 17+ messages in thread
From: Jon Ringle @ 2010-01-12 21:23 UTC (permalink / raw)
To: dedekind1; +Cc: linux-mtd
mtd_speedtest results:
(initramfs) modprobe mtd_speedtest dev=1
[ 34.930000]
[ 34.930000] =================================================
[ 34.940000] mtd_speedtest: MTD device: 1
[ 34.940000] mtd_speedtest: not NAND flash, assume page size is 512 bytes.
[ 34.950000] mtd_speedtest: MTD device size 32636928, eraseblock
size 131072, page size 512, count of eraseblocks 249, pages per
eraseblock 131072, OOB size 0
[ 34.970000] mtd_speedtest: scanning for bad eraseblocks
[ 34.970000] mtd_speedtest: scanned 249 eraseblocks, 0 are bad
[ 247.150000] mtd_speedtest: testing eraseblock write speed
[ 280.020000] mtd_speedtest: eraseblock write speed is 969 KiB/s
[ 280.030000] mtd_speedtest: testing eraseblock read speed
[ 295.500000] mtd_speedtest: eraseblock read speed is 2060 KiB/s
[ 508.300000] mtd_speedtest: testing page write speed
[ 545.620000] mtd_speedtest: error: write failed at 0x1f20000
[ 545.620000] mtd_speedtest: error -22 occurred
[ 545.630000] =================================================
FATAL: Error inserting mtd_speedtest
(/lib/modules/2.6.31.11-isc/kernel/drivers/mtd/tests/mtd_speedtest.ko):
Invalid argument
The device size is 32636928 (0x1f20000), so why is the test trying to
write at 0x1f20000? This is one byte past the end of device address
space.
Jon
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: Fail to mount ubifs
2010-01-12 20:23 ` Jon Ringle
2010-01-12 20:49 ` Jon Ringle
@ 2010-01-12 21:30 ` Artem Bityutskiy
2010-01-13 0:15 ` Jon Ringle
1 sibling, 1 reply; 17+ messages in thread
From: Artem Bityutskiy @ 2010-01-12 21:30 UTC (permalink / raw)
To: Jon Ringle; +Cc: linux-mtd
On Tue, 2010-01-12 at 15:23 -0500, Jon Ringle wrote:
> On Mon, Jan 11, 2010 at 11:50 PM, Artem Bityutskiy <dedekind1@gmail.com> wrote:
> > As this entry suggests:
> > http://www.linux-mtd.infradead.org/doc/ubifs.html#L_how_send_bugreport
> >
> > - validate your flash/driver with the MTD tests - looks like you have a
> > problem there.
>
> Trying to run mtd_readtest I get a seg fault:
Oh, yeas, you have NOR, the tests were made and used on NAND, and had
problems with NOR. But there was a fix recently:
http://git.infradead.org/users/dedekind/l2-mtd-2.6.git/commit/1ae356eafcdff6fa5c59d66072dc7577632a6d68
And you must be already have this one:
http://git.infradead.org/users/dedekind/l2-mtd-2.6.git/commit/4c2b8a62bb0e35f2db0f713b4101b265be7fa985
--
Best Regards,
Artem Bityutskiy (Артём Битюцкий)
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: Fail to mount ubifs
2010-01-12 0:20 ` Jon Ringle
2010-01-12 4:50 ` Artem Bityutskiy
@ 2010-01-12 21:33 ` Artem Bityutskiy
1 sibling, 0 replies; 17+ messages in thread
From: Artem Bityutskiy @ 2010-01-12 21:33 UTC (permalink / raw)
To: Jon Ringle; +Cc: linux-mtd
On Mon, 2010-01-11 at 19:20 -0500, Jon Ringle wrote:
> I should be able to mount an empty ubi volume as ubifs right?
> But I get this on a freshly made volume:
> UBIFS error (pid 1493): check_lpt_crc: invalid crc in LPT node: crc
> cbcb calc cbfb
Yes.
>
> I'm not sure what to try now...
>
> Jon
>
> (initramfs) ubinfo -a
> UBI version: 1
> Count of UBI devices: 1
> UBI control device major/minor: 10:60
> Present UBI devices: ubi0
>
> ubi0
> Volumes count: 2
> Logical eraseblock size: 130944 bytes, f KiB
> Total amount of logical eraseblocks: 249 (32605056 bytes, f MiB)
> Amount of available logical eraseblocks: 112 (14665728 bytes, f MiB)
> Maximum count of volumes 128
> Count of bad physical eraseblocks: 0
> Count of reserved physical eraseblocks: 0
> Current maximum erase counter value: 72
> Minimum input/output unit size: 1 byte
> Character device major/minor: 253:0
> Present volumes: 0, 1
>
> Volume ID: 0 (on ubi0)
> Type: static
> Alignment: 1
> Size: 27 LEBs (3535488 bytes, f MiB)
> Data bytes: 3481728 bytes (f MiB)
> State: OK
> Name: kernel
> Character device major/minor: 253:1
> -----------------------------------
> Volume ID: 1 (on ubi0)
> Type: static
> Alignment: 1
> Size: 106 LEBs (13880064 bytes, f MiB)
> Data bytes: 13844480 bytes (f MiB)
> State: OK
> Name: squashfs
> Character device major/minor: 253:2
> (initramfs)
> (initramfs) ubimkvol -m -N ubifs /dev/ubi0
> Set volume size to 14665728
> Volume ID 2, size 112 LEBs (14665728 bytes, f MiB), LEB size 130944
> bytes (f KiB), dynamic, name "ubifs", alignment 1
> (initramfs)
> (initramfs) mkdir /mnt
> (initramfs) mount -t ubifs ubi0:ubifs /mnt
> [ 277.900000] UBIFS: default file-system created
> [ 277.980000] UBIFS DBG (pid 1497): ubifs_bg_thread: background
> thread "ubifs_bgt0_2" started, PID 1497
> [ 278.260000] UBIFS error (pid 1493): check_lpt_crc: invalid crc in
> LPT node: crc cbcb calc cbfb
> [ 278.260000] [<c01822bc>] (unwind_backtrace+0x0/0x160) from
> [<bf071a34>] (check_lpt_crc+0x9c/0xb0 [ubifs])
> [ 278.270000] [<bf071a34>] (check_lpt_crc+0x9c/0xb0 [ubifs]) from
> [<bf071b24>] (unpack_pnode+0xdc/0xfc [ubifs])
> [ 278.280000] [<bf071b24>] (unpack_pnode+0xdc/0xfc [ubifs]) from
> [<bf071d8c>] (scan_get_pnode+0x248/0x2ec [ubifs])
> [ 278.300000] [<bf071d8c>] (scan_get_pnode+0x248/0x2ec [ubifs]) from
> [<bf072738>] (ubifs_lpt_scan_nolock+0x3f8/0x518 [ubifs])
> [ 278.310000] [<bf072738>] (ubifs_lpt_scan_nolock+0x3f8/0x518
> [ubifs]) from [<bf0754b8>] (dbg_check_lprops+0xf8/0x2e4 [ubifs])
> [ 278.320000] [<bf0754b8>] (dbg_check_lprops+0xf8/0x2e4 [ubifs]) from
> [<bf051ff4>] (mount_ubifs+0x6a4/0x1620 [ubifs])
> [ 278.330000] [<bf051ff4>] (mount_ubifs+0x6a4/0x1620 [ubifs]) from
> [<bf053d20>] (ubifs_fill_super+0x318/0x42c [ubifs])
> [ 278.340000] [<bf053d20>] (ubifs_fill_super+0x318/0x42c [ubifs])
> from [<bf053f0c>] (ubifs_get_sb+0xd8/0x22c [ubifs])
> [ 278.350000] [<bf053f0c>] (ubifs_get_sb+0xd8/0x22c [ubifs]) from
> [<c01f5360>] (vfs_kern_mount+0x68/0x12c)
> [ 278.360000] [<c01f5360>] (vfs_kern_mount+0x68/0x12c) from
> [<c01f5468>] (do_kern_mount+0x34/0xdc)
> [ 278.370000] [<c01f5468>] (do_kern_mount+0x34/0xdc) from
> [<c020dad0>] (do_mount+0x210/0x244)
> [ 278.380000] [<c020dad0>] (do_mount+0x210/0x244) from [<c020dba0>]
> (sys_mount+0x9c/0xd0)
> [ 278.390000] [<c020dba0>] (sys_mount+0x9c/0xd0) from [<c017c9e0>]
> (ret_fast_syscall+0x0/0x2c)
> [ 278.400000] UBIFS DBG (pid 1497): ubifs_bg_thread: background
> thread "ubifs_bgt0_2" stops
> mount: Invalid argument
Do you see this problem with mtdram, which emulates NOR in RAM? The
problem is very strange. See modinfo mtdram for its parameters.
--
Best Regards,
Artem Bityutskiy (Артём Битюцкий)
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: Fail to mount ubifs
2010-01-12 12:07 ` Jon Ringle
@ 2010-01-12 21:37 ` Artem Bityutskiy
2010-01-13 0:40 ` Jon Ringle
0 siblings, 1 reply; 17+ messages in thread
From: Artem Bityutskiy @ 2010-01-12 21:37 UTC (permalink / raw)
To: Jon Ringle; +Cc: linux-mtd
On Tue, 2010-01-12 at 07:07 -0500, Jon Ringle wrote:
> On Mon, Jan 11, 2010 at 11:50 PM, Artem Bityutskiy <dedekind1@gmail.com> wrote:
> > Hi,
> >
> > On Mon, 2010-01-11 at 19:20 -0500, Jon Ringle wrote:
> >> I should be able to mount an empty ubi volume as ubifs right?
> >> But I get this on a freshly made volume:
> >> UBIFS error (pid 1493): check_lpt_crc: invalid crc in LPT node: crc
> >> cbcb calc cbfb
> >>
> >> I'm not sure what to try now...
> >
> > As this entry suggests:
> > http://www.linux-mtd.infradead.org/doc/ubifs.html#L_how_send_bugreport
> >
> > - validate your flash/driver with the MTD tests - looks like you have a
> > problem there.
>
> I will try the tests today and report back.
>
> >> (initramfs) ubinfo -a
> >> UBI version: 1
> >> Count of UBI devices: 1
> >> UBI control device major/minor: 10:60
> >> Present UBI devices: ubi0
> >>
> >> ubi0
> >> Volumes count: 2
> >> Logical eraseblock size: 130944 bytes, f KiB
> >
> > Hmm, this f KiB looks weird.
>
> Why is it weird? It is 128 bytes less than my PEB size of 0x20000.
Because "f" is strange, I did not expect this.
The print is:
printf("%s%.1f KiB", p, (double)bytes / 1024);
see ubiutils_print_bytes() in mtd-utils/ubi-utils/src/common.c
Not sure why it prints "f KiB" on your system.
--
Best Regards,
Artem Bityutskiy (Артём Битюцкий)
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: Fail to mount ubifs
2010-01-12 20:49 ` Jon Ringle
2010-01-12 21:23 ` Jon Ringle
@ 2010-01-12 21:38 ` Artem Bityutskiy
1 sibling, 0 replies; 17+ messages in thread
From: Artem Bityutskiy @ 2010-01-12 21:38 UTC (permalink / raw)
To: Jon Ringle; +Cc: linux-mtd
On Tue, 2010-01-12 at 15:49 -0500, Jon Ringle wrote:
> On Tue, Jan 12, 2010 at 3:23 PM, Jon Ringle <jon@ringle.org> wrote:
> > On Mon, Jan 11, 2010 at 11:50 PM, Artem Bityutskiy <dedekind1@gmail.com> wrote:
> >> As this entry suggests:
> >> http://www.linux-mtd.infradead.org/doc/ubifs.html#L_how_send_bugreport
> >>
> >> - validate your flash/driver with the MTD tests - looks like you have a
> >> problem there.
> >
> > Trying to run mtd_readtest I get a seg fault:
> > [ 67.470000] Unable to handle kernel NULL pointer dereference at
> > virtual address 00000000
> > [ 67.480000] pgd = cf978000
> > [ 67.480000] [00000000] *pgd=0d49e031, *pte=00000000, *ppte=00000000
> > [ 67.490000] Internal error: Oops: 0 [#1] PREEMPT
> > [ 67.490000] Modules linked in: mtd_readtest(+) ixp4xx redboot
> > [ 67.490000] CPU: 0 Not tainted (2.6.31.11-isc #3)
> > [ 67.490000] PC is at 0x0
> > [ 67.490000] LR is at scan_for_bad_eraseblocks+0x88/0x10c [mtd_readtest]
>
> I patched mtd_readtest.c with this:
> diff --git a/drivers/mtd/tests/mtd_readtest.c b/drivers/mtd/tests/mtd_readtest.c
> index 79fc453..9edd658 100644
> --- a/drivers/mtd/tests/mtd_readtest.c
> +++ b/drivers/mtd/tests/mtd_readtest.c
> @@ -130,7 +130,7 @@ static int is_block_bad(int ebnum)
> loff_t addr = ebnum * mtd->erasesize;
> int ret;
>
> - ret = mtd->block_isbad(mtd, addr);
> + ret = mtd->block_isbad ? mtd->block_isbad(mtd, addr) : 0;
> if (ret)
> printk(PRINT_PREF "block %d is bad\n", ebnum);
> return ret;
>
> After this, I ran mtd_readtest and it seemed to complete, but then
> hang after it was done:
> (initramfs) modprobe mtd_readtest dev=1
> [ 194.530000]
> [ 194.530000] =================================================
> [ 194.540000] mtd_readtest: MTD device: 1
> [ 194.540000] mtd_readtest: not NAND flash, assume page size is 512 bytes.
> [ 194.550000] mtd_readtest: MTD device size 32636928, eraseblock size
> 131072, page size 512, count of eraseblocks 249, pages per eraseblock
> 131072, OOB size 0
> [ 194.570000] mtd_readtest: scanning for bad eraseblocks
> [ 194.570000] mtd_readtest: scanned 249 eraseblocks, 0 are bad
> [ 194.580000] mtd_readtest: testing page read
> [ 194.960000] ------------[ cut here ]------------
> [ 194.960000] WARNING: at kernel/sched.c:5175 do_page_fault+0x16c/0x1ec()
> [ 194.960000] Modules linked in: mtd_readtest(+)
Do you see this on mtdram on your x86 PC?
--
Best Regards,
Artem Bityutskiy (Артём Битюцкий)
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: Fail to mount ubifs
2010-01-12 21:30 ` Artem Bityutskiy
@ 2010-01-13 0:15 ` Jon Ringle
2010-01-13 7:03 ` Jon Ringle
0 siblings, 1 reply; 17+ messages in thread
From: Jon Ringle @ 2010-01-13 0:15 UTC (permalink / raw)
To: dedekind1; +Cc: linux-mtd
On Tue, Jan 12, 2010 at 4:30 PM, Artem Bityutskiy <dedekind1@gmail.com> wrote:
> Oh, yeas, you have NOR, the tests were made and used on NAND, and had
> problems with NOR. But there was a fix recently:
>
> http://git.infradead.org/users/dedekind/l2-mtd-2.6.git/commit/1ae356eafcdff6fa5c59d66072dc7577632a6d68
After applying this patch I was able to successfully run mtd_readtest,
mtd_speedtest and mtd_stresstest (I think all other don't apply to
NOR):
(initramfs) cat /proc/mtd
dev: size erasesize name
mtd0: 00080000 00020000 "RedBoot"
mtd1: 01f20000 00020000 "ubi"
mtd2: 00001000 00020000 "RedBoot config"
mtd3: 00020000 00020000 "FIS directory"
(initramfs) modprobe redboot
(initramfs) modprobe ixp4xx
[ 34.020000] IXP4XX-Flash.0: Found 1 x16 devices at 0x0 in 16-bit bank
[ 34.020000] Intel/Sharp Extended Query Table at 0x010A
[ 34.030000] Intel/Sharp Extended Query Table at 0x010A
[ 34.030000] Intel/Sharp Extended Query Table at 0x010A
[ 34.040000] Intel/Sharp Extended Query Table at 0x010A
[ 34.040000] Intel/Sharp Extended Query Table at 0x010A
[ 34.050000] Using buffer write method
[ 34.050000] Using auto-unlock on power-up/resume
[ 34.060000] cfi_cmdset_0001: Erase suspend on write enabled
[ 34.060000] Searching for RedBoot partition table in IXP4XX-Flash.0
at offset 0x1fc0000
[ 34.130000] 4 RedBoot partitions found on MTD device IXP4XX-Flash.0
[ 34.140000] Creating 4 MTD partitions on "IXP4XX-Flash.0":
[ 34.150000] 0x000000000000-0x000000080000 : "RedBoot"
[ 34.150000] 0x000000080000-0x000001fa0000 : "ubi"
[ 34.160000] 0x000001fa0000-0x000001fa1000 : "RedBoot config"
[ 34.170000] mtd: partition "RedBoot config" doesn't end on an erase
block -- leaving writable anyway
[ 34.180000] 0x000001fc0000-0x000001fe0000 : "FIS directory"
(initramfs) modprobe mtd_readtest dev=1
[ 42.860000]
[ 42.860000] =================================================
[ 42.870000] mtd_readtest: MTD device: 1
[ 42.870000] mtd_readtest: not NAND flash, assume page size is 512 bytes.
[ 42.880000] mtd_readtest: MTD device size 32636928, eraseblock size
131072, page size 512, count of eraseblocks 249, pages per eraseblock
256, OOB size 0
[ 42.900000] mtd_readtest: testing page read
[ 58.770000] mtd_readtest: finished
[ 58.770000] =================================================
(initramfs) modprobe mtd_speedtest dev=1
[ 74.140000]
[ 74.140000] =================================================
[ 74.150000] mtd_speedtest: MTD device: 1
[ 74.150000] mtd_speedtest: not NAND flash, assume page size is 512 bytes.
[ 74.160000] mtd_speedtest: MTD device size 32636928, eraseblock
size 131072, page size 512, count of eraseblocks 249, pages per
eraseblock 256, OOB size 0
[ 287.670000] mtd_speedtest: testing eraseblock write speed
[ 320.600000] mtd_speedtest: eraseblock write speed is 967 KiB/s
[ 320.600000] mtd_speedtest: testing eraseblock read speed
[ 336.040000] mtd_speedtest: eraseblock read speed is 2065 KiB/s
[ 549.940000] mtd_speedtest: testing page write speed
[ 585.750000] mtd_speedtest: page write speed is 890 KiB/s
[ 585.750000] mtd_speedtest: testing page read speed
[ 601.320000] mtd_speedtest: page read speed is 2048 KiB/s
[ 815.710000] mtd_speedtest: testing 2 page write speed
[ 848.680000] mtd_speedtest: 2 page write speed is 966 KiB/s
[ 848.690000] mtd_speedtest: testing 2 page read speed
[ 864.180000] mtd_speedtest: 2 page read speed is 2058 KiB/s
[ 864.180000] mtd_speedtest: Testing erase speed
[ 1078.540000] mtd_speedtest: erase speed is 148 KiB/s
[ 1078.540000] mtd_speedtest: finished
[ 1078.540000] =================================================
(initramfs) modprobe mtd_stresstest dev=1
[ 1152.240000]
[ 1152.240000] =================================================
[ 1152.250000] mtd_stresstest: MTD device: 1
[ 1152.250000] mtd_stresstest: not NAND flash, assume page size is 512 bytes.
[ 1152.260000] mtd_stresstest: MTD device size 32636928, eraseblock
size 131072, page size 512, count of eraseblocks 249, pages per
eraseblock 256, OOB size 0
[ 1152.280000] mtd_stresstest: doing operations
[ 1152.290000] mtd_stresstest: 0 operations done
[ 1650.340000] mtd_stresstest: 1024 operations done
[ 2190.950000] mtd_stresstest: 2048 operations done
[ 2717.250000] mtd_stresstest: 3072 operations done
[ 3226.910000] mtd_stresstest: 4096 operations done
[ 3723.830000] mtd_stresstest: 5120 operations done
[ 4284.190000] mtd_stresstest: 6144 operations done
[ 4850.920000] mtd_stresstest: 7168 operations done
[ 5383.650000] mtd_stresstest: 8192 operations done
[ 5868.380000] mtd_stresstest: 9216 operations done
[ 6280.290000] mtd_stresstest: finished, 10000 operations done
[ 6280.300000] =================================================
I also tried mtdram (running on the target system) configured with the
same total_size and erase_size as my physical mtd device and had no
problem at all:
(initramfs) lsmod
Module Size Used by
squashfs 43612 0
zlib_inflate 16128 1 squashfs
gluebi 6616 0
ixp4xx_eth 13972 0
pcimsg 9144 0
ubi 84092 1 gluebi
mtdram 3424 1
(initramfs) cat /proc/mtd
dev: size erasesize name
mtd0: 01f20000 00020000 "mtdram test device"
mtd1: 0038e1dc 0001ff80 "kernel"
mtd2: 00d34000 0001ff80 "squashfs"
(initramfs) ubinfo -a
UBI version: 1
Count of UBI devices: 1
UBI control device major/minor: 10:60
Present UBI devices: ubi0
ubi0
Volumes count: 2
Logical eraseblock size: 130944 bytes, f KiB
Total amount of logical eraseblocks: 249 (32605056 bytes, f MiB)
Amount of available logical eraseblocks: 110 (14403840 bytes, f MiB)
Maximum count of volumes 128
Count of bad physical eraseblocks: 0
Count of reserved physical eraseblocks: 0
Current maximum erase counter value: 7
Minimum input/output unit size: 1 byte
Character device major/minor: 253:0
Present volumes: 0, 1
Volume ID: 0 (on ubi0)
Type: static
Alignment: 1
Size: 29 LEBs (3797376 bytes, f MiB)
Data bytes: 3727836 bytes (f MiB)
State: OK
Name: kernel
Character device major/minor: 253:1
-----------------------------------
Volume ID: 1 (on ubi0)
Type: static
Alignment: 1
Size: 106 LEBs (13880064 bytes, f MiB)
Data bytes: 13844480 bytes (f MiB)
State: OK
Name: squashfs
Character device major/minor: 253:2
(initramfs) ubimkvol -m -N ubifs /dev/ubi0
Set volume size to 14403840
Volume ID 2, size 110 LEBs (14403840 bytes, f MiB), LEB size 130944
bytes (f KiB), dynamic, name "ubifs", alignment 1
(initramfs) mkdir /mnt
(initramfs) mount -t ubifs ubi0:ubifs /mnt
[ 280.430000] UBIFS: default file-system created
[ 280.460000] UBIFS DBG (pid 1495): ubifs_bg_thread: background
thread "ubifs_bgt0_2" started, PID 1495
[ 280.610000] UBIFS: mounted UBI device 0, volume 2, name "ubifs"
[ 280.610000] UBIFS: file system size: 13094400 bytes (12787 KiB,
12 MiB, 100 LEBs)
[ 280.620000] UBIFS: journal size: 1047553 bytes (1023 KiB, 0
MiB, 6 LEBs)
[ 280.630000] UBIFS: media format: w4/r0 (latest is w4/r0)
[ 280.630000] UBIFS: default compressor: lzo
[ 280.640000] UBIFS: reserved for root: 618480 bytes (603 KiB)
[ 280.640000] UBIFS DBG (pid 1482): mount_ubifs: compiled on:
Jan 12 2010 at 17:02:37
[ 280.650000] UBIFS DBG (pid 1482): mount_ubifs: min. I/O unit size: 8 bytes
[ 280.660000] UBIFS DBG (pid 1482): mount_ubifs: LEB size:
130944 bytes (127 KiB)
[ 280.670000] UBIFS DBG (pid 1482): mount_ubifs: data journal heads: 1
[ 280.670000] UBIFS DBG (pid 1482): mount_ubifs: UUID:
36A57898-E179-4127-B506-B56B8F6EE5FF
[ 280.680000] UBIFS DBG (pid 1482): mount_ubifs: big_lpt 0
[ 280.690000] UBIFS DBG (pid 1482): mount_ubifs: log LEBs: 3 (3 - 5)
[ 280.700000] UBIFS DBG (pid 1482): mount_ubifs: LPT area LEBs: 2 (6 - 7)
[ 280.700000] UBIFS DBG (pid 1482): mount_ubifs: orphan area LEBs: 2 (8 - 9)
[ 280.710000] UBIFS DBG (pid 1482): mount_ubifs: main area LEBs:
100 (10 - 109)
[ 280.720000] UBIFS DBG (pid 1482): mount_ubifs: index LEBs: 1
[ 280.720000] UBIFS DBG (pid 1482): mount_ubifs: total index bytes:
48 (0 KiB, 0 MiB)
[ 280.730000] UBIFS DBG (pid 1482): mount_ubifs: key hash type: 0
[ 280.740000] UBIFS DBG (pid 1482): mount_ubifs: tree fanout: 8
[ 280.750000] UBIFS DBG (pid 1482): mount_ubifs: reserved GC LEB: 12
[ 280.750000] UBIFS DBG (pid 1482): mount_ubifs: first main LEB: 10
[ 280.760000] UBIFS DBG (pid 1482): mount_ubifs: max. znode size 240
[ 280.770000] UBIFS DBG (pid 1482): mount_ubifs: max. index node size 192
[ 280.770000] UBIFS DBG (pid 1482): mount_ubifs: node sizes:
data 48, inode 160, dentry 56
[ 280.780000] UBIFS DBG (pid 1482): mount_ubifs: node sizes:
trun 56, sb 4096, master 512
[ 280.790000] UBIFS DBG (pid 1482): mount_ubifs: node sizes:
ref 64, cmt. start 32, orph 32
[ 280.800000] UBIFS DBG (pid 1482): mount_ubifs: max. node sizes:
data 4144, inode 4256 dentry 312
[ 280.810000] UBIFS DBG (pid 1482): mount_ubifs: dead watermark: 56
[ 280.810000] UBIFS DBG (pid 1482): mount_ubifs: dark watermark: 4256
[ 280.820000] UBIFS DBG (pid 1482): mount_ubifs: LEB overhead: 2480
[ 280.830000] UBIFS DBG (pid 1482): mount_ubifs: max. dark space:
425600 (415 KiB, 0 MiB)
[ 280.840000] UBIFS DBG (pid 1482): mount_ubifs: maximum bud bytes:
654721 (639 KiB, 0 MiB)
[ 280.840000] UBIFS DBG (pid 1482): mount_ubifs: BG commit bud bytes:
523777 (511 KiB, 0 MiB)
[ 280.850000] UBIFS DBG (pid 1482): mount_ubifs: current bud bytes
0 (0 KiB, 0 MiB)
[ 280.860000] UBIFS DBG (pid 1482): mount_ubifs: max. seq. number: 7
[ 280.870000] UBIFS DBG (pid 1482): mount_ubifs: commit number: 0
What else can I try? I still have the failure to mount ubifs on the
physical device, but all applicable mtd tests for NOR pass on it and
mtdram works as expected on the target system.
Jon
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: Fail to mount ubifs
2010-01-12 21:37 ` Artem Bityutskiy
@ 2010-01-13 0:40 ` Jon Ringle
0 siblings, 0 replies; 17+ messages in thread
From: Jon Ringle @ 2010-01-13 0:40 UTC (permalink / raw)
To: dedekind1; +Cc: linux-mtd
On Tue, Jan 12, 2010 at 4:37 PM, Artem Bityutskiy <dedekind1@gmail.com> wrote:
>> >> Logical eraseblock size: 130944 bytes, f KiB
>> >
>> > Hmm, this f KiB looks weird.
>>
>> Why is it weird? It is 128 bytes less than my PEB size of 0x20000.
>
> Because "f" is strange, I did not expect this.
> The print is:
> printf("%s%.1f KiB", p, (double)bytes / 1024);
>
> see ubiutils_print_bytes() in mtd-utils/ubi-utils/src/common.c
>
> Not sure why it prints "f KiB" on your system.
Apparently the printf implementation in klibc does not support %f that
is used in
ubiutils_print_bytes()
Jon
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: Fail to mount ubifs
2010-01-13 0:15 ` Jon Ringle
@ 2010-01-13 7:03 ` Jon Ringle
2010-01-13 7:55 ` Artem Bityutskiy
0 siblings, 1 reply; 17+ messages in thread
From: Jon Ringle @ 2010-01-13 7:03 UTC (permalink / raw)
To: dedekind1, Deepak Saxena; +Cc: linux-mtd
I believe that there is an alignment problem due to the read function
mapped to ixp4xx_read16.
I enabled the following:
CONFIG_MTD_UBI_DEBUG=y
CONFIG_MTD_UBI_DEBUG_MSG=y
CONFIG_MTD_UBI_DEBUG_MSG_EBA=y
(initramfs) mount -t ubifs ubi0:ubifs /mnt0
[ 1693.480000] UBI DBG (pid 2323): ubi_open_volume_path: open volume
ubi0:ubifs, mode 1
[ 1693.490000] UBI DBG (pid 2323): ubi_open_volume_nm: open device 0,
volume ubifs, mode 1
[ 1693.490000] UBI DBG (pid 2323): ubi_open_volume: open device 0,
volume 2, mode 1
[ 1693.500000] UBI DBG (pid 2323): ubi_open_volume: open device 0,
volume 2, mode 2
[ 1693.510000] UBI DBG (pid 2323): ubi_is_mapped: test LEB 2:0
<snip...>
[ 1694.130000] UBI DBG (pid 2323): ubi_is_mapped: test LEB 2:109
[ 1694.140000] UBI DBG (pid 2323): ubi_leb_change: atomically write
560 bytes to LEB 2:6
[ 1694.150000] UBI DBG (pid 2323): ubi_eba_atomic_leb_change: change
LEB 2:6, PEB -1, write VID hdr to PEB 5
11 bytes starting at LEB 2:6:545 has the following data:
0xb7 0xe2 0x02 0xd5 0x9f 0x00 0x00 0xe0 0x7f 0x00 0x00
<snip...>
[ 1694.520000] UBI DBG (pid 2323): ubi_leb_read: read 11 bytes from LEB 2:6:545
[ 1694.530000] UBI DBG (pid 2323): ubi_eba_read_leb: read 11 bytes
from offset 545 of LEB 2:6, PEB 5
[ 1694.540000] UBIFS error (pid 2323): check_lpt_crc: invalid crc in
LPT node: crc e2e2 calc e2b7
11 bytes starting at LEB 2:6:545 has the following data:
0xe2 0xe2 0x02 0xd5 0x9f 0x00 0x00 0xe0 0x7f 0x00 0x00
[ 1694.550000] [<c01ca2bc>] (unwind_backtrace+0x0/0x160) from
[<bf096a34>] (check_lpt_crc+0x9c/0xb0 [ubifs])
[ 1694.560000] [<bf096a34>] (check_lpt_crc+0x9c/0xb0 [ubifs]) from
[<bf096f44>] (unpack_ltab+0x114/0x118 [ubifs])
[ 1694.570000] [<bf096f44>] (unpack_ltab+0x114/0x118 [ubifs]) from
[<bf097d28>] (lpt_init_rd+0x110/0x6f8 [ubifs])
[ 1694.580000] [<bf097d28>] (lpt_init_rd+0x110/0x6f8 [ubifs]) from
[<bf098e4c>] (ubifs_lpt_init+0x30/0x54 [ubifs])
[ 1694.590000] [<bf098e4c>] (ubifs_lpt_init+0x30/0x54 [ubifs]) from
[<bf076cb8>] (mount_ubifs+0x368/0x1620 [ubifs])
[ 1694.600000] [<bf076cb8>] (mount_ubifs+0x368/0x1620 [ubifs]) from
[<bf078d20>] (ubifs_fill_super+0x318/0x42c [ubifs])
[ 1694.610000] [<bf078d20>] (ubifs_fill_super+0x318/0x42c [ubifs])
from [<bf078f0c>] (ubifs_get_sb+0xd8/0x22c [ubifs])
[ 1694.620000] [<bf078f0c>] (ubifs_get_sb+0xd8/0x22c [ubifs]) from
[<c023d360>] (vfs_kern_mount+0x68/0x12c)
[ 1694.630000] [<c023d360>] (vfs_kern_mount+0x68/0x12c) from
[<c023d468>] (do_kern_mount+0x34/0xdc)
[ 1694.640000] [<c023d468>] (do_kern_mount+0x34/0xdc) from
[<c0255ad0>] (do_mount+0x210/0x244)
[ 1694.650000] [<c0255ad0>] (do_mount+0x210/0x244) from [<c0255ba0>]
(sys_mount+0x9c/0xd0)
[ 1694.660000] [<c0255ba0>] (sys_mount+0x9c/0xd0) from [<c01c49e0>]
(ret_fast_syscall+0x0/0x2c)
Looking into drivers/mtd/maps/ixp4xx.c I see that the read function is
ixp4xx_read16(). It seems to me that there is an alignment problem.
The read starts at offset 545 which in unaligned with a 16-bit read
that is done by ixp4xx_read16().
Jon
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: Fail to mount ubifs
2010-01-13 7:03 ` Jon Ringle
@ 2010-01-13 7:55 ` Artem Bityutskiy
2010-01-13 8:06 ` Artem Bityutskiy
0 siblings, 1 reply; 17+ messages in thread
From: Artem Bityutskiy @ 2010-01-13 7:55 UTC (permalink / raw)
To: Jon Ringle; +Cc: linux-mtd, Deepak Saxena
On Wed, 2010-01-13 at 02:03 -0500, Jon Ringle wrote:
> I believe that there is an alignment problem due to the read function
> mapped to ixp4xx_read16.
>
> I enabled the following:
> CONFIG_MTD_UBI_DEBUG=y
> CONFIG_MTD_UBI_DEBUG_MSG=y
> CONFIG_MTD_UBI_DEBUG_MSG_EBA=y
>
> (initramfs) mount -t ubifs ubi0:ubifs /mnt0
> [ 1693.480000] UBI DBG (pid 2323): ubi_open_volume_path: open volume
> ubi0:ubifs, mode 1
> [ 1693.490000] UBI DBG (pid 2323): ubi_open_volume_nm: open device 0,
> volume ubifs, mode 1
> [ 1693.490000] UBI DBG (pid 2323): ubi_open_volume: open device 0,
> volume 2, mode 1
> [ 1693.500000] UBI DBG (pid 2323): ubi_open_volume: open device 0,
> volume 2, mode 2
> [ 1693.510000] UBI DBG (pid 2323): ubi_is_mapped: test LEB 2:0
> <snip...>
> [ 1694.130000] UBI DBG (pid 2323): ubi_is_mapped: test LEB 2:109
> [ 1694.140000] UBI DBG (pid 2323): ubi_leb_change: atomically write
> 560 bytes to LEB 2:6
> [ 1694.150000] UBI DBG (pid 2323): ubi_eba_atomic_leb_change: change
> LEB 2:6, PEB -1, write VID hdr to PEB 5
> 11 bytes starting at LEB 2:6:545 has the following data:
> 0xb7 0xe2 0x02 0xd5 0x9f 0x00 0x00 0xe0 0x7f 0x00 0x00
>
> <snip...>
> [ 1694.520000] UBI DBG (pid 2323): ubi_leb_read: read 11 bytes from LEB 2:6:545
> [ 1694.530000] UBI DBG (pid 2323): ubi_eba_read_leb: read 11 bytes
> from offset 545 of LEB 2:6, PEB 5
> [ 1694.540000] UBIFS error (pid 2323): check_lpt_crc: invalid crc in
> LPT node: crc e2e2 calc e2b7
> 11 bytes starting at LEB 2:6:545 has the following data:
> 0xe2 0xe2 0x02 0xd5 0x9f 0x00 0x00 0xe0 0x7f 0x00 0x00
>
> [ 1694.550000] [<c01ca2bc>] (unwind_backtrace+0x0/0x160) from
> [<bf096a34>] (check_lpt_crc+0x9c/0xb0 [ubifs])
> [ 1694.560000] [<bf096a34>] (check_lpt_crc+0x9c/0xb0 [ubifs]) from
> [<bf096f44>] (unpack_ltab+0x114/0x118 [ubifs])
> [ 1694.570000] [<bf096f44>] (unpack_ltab+0x114/0x118 [ubifs]) from
> [<bf097d28>] (lpt_init_rd+0x110/0x6f8 [ubifs])
> [ 1694.580000] [<bf097d28>] (lpt_init_rd+0x110/0x6f8 [ubifs]) from
> [<bf098e4c>] (ubifs_lpt_init+0x30/0x54 [ubifs])
> [ 1694.590000] [<bf098e4c>] (ubifs_lpt_init+0x30/0x54 [ubifs]) from
> [<bf076cb8>] (mount_ubifs+0x368/0x1620 [ubifs])
> [ 1694.600000] [<bf076cb8>] (mount_ubifs+0x368/0x1620 [ubifs]) from
> [<bf078d20>] (ubifs_fill_super+0x318/0x42c [ubifs])
> [ 1694.610000] [<bf078d20>] (ubifs_fill_super+0x318/0x42c [ubifs])
> from [<bf078f0c>] (ubifs_get_sb+0xd8/0x22c [ubifs])
> [ 1694.620000] [<bf078f0c>] (ubifs_get_sb+0xd8/0x22c [ubifs]) from
> [<c023d360>] (vfs_kern_mount+0x68/0x12c)
> [ 1694.630000] [<c023d360>] (vfs_kern_mount+0x68/0x12c) from
> [<c023d468>] (do_kern_mount+0x34/0xdc)
> [ 1694.640000] [<c023d468>] (do_kern_mount+0x34/0xdc) from
> [<c0255ad0>] (do_mount+0x210/0x244)
> [ 1694.650000] [<c0255ad0>] (do_mount+0x210/0x244) from [<c0255ba0>]
> (sys_mount+0x9c/0xd0)
> [ 1694.660000] [<c0255ba0>] (sys_mount+0x9c/0xd0) from [<c01c49e0>]
> (ret_fast_syscall+0x0/0x2c)
>
> Looking into drivers/mtd/maps/ixp4xx.c I see that the read function is
> ixp4xx_read16(). It seems to me that there is an alignment problem.
> The read starts at offset 545 which in unaligned with a 16-bit read
> that is done by ixp4xx_read16().
Yeah, most probably. Too bad we do not have a test for this. Care to
extend MTD tests?
--
Best Regards,
Artem Bityutskiy (Артём Битюцкий)
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: Fail to mount ubifs
2010-01-13 7:55 ` Artem Bityutskiy
@ 2010-01-13 8:06 ` Artem Bityutskiy
2010-01-13 14:20 ` Jon Ringle
0 siblings, 1 reply; 17+ messages in thread
From: Artem Bityutskiy @ 2010-01-13 8:06 UTC (permalink / raw)
To: Jon Ringle; +Cc: linux-mtd, Deepak Saxena
On Wed, 2010-01-13 at 09:55 +0200, Artem Bityutskiy wrote:
> On Wed, 2010-01-13 at 02:03 -0500, Jon Ringle wrote:
> > I believe that there is an alignment problem due to the read function
> > mapped to ixp4xx_read16.
> >
> > I enabled the following:
> > CONFIG_MTD_UBI_DEBUG=y
> > CONFIG_MTD_UBI_DEBUG_MSG=y
> > CONFIG_MTD_UBI_DEBUG_MSG_EBA=y
> >
> > (initramfs) mount -t ubifs ubi0:ubifs /mnt0
> > [ 1693.480000] UBI DBG (pid 2323): ubi_open_volume_path: open volume
> > ubi0:ubifs, mode 1
> > [ 1693.490000] UBI DBG (pid 2323): ubi_open_volume_nm: open device 0,
> > volume ubifs, mode 1
> > [ 1693.490000] UBI DBG (pid 2323): ubi_open_volume: open device 0,
> > volume 2, mode 1
> > [ 1693.500000] UBI DBG (pid 2323): ubi_open_volume: open device 0,
> > volume 2, mode 2
> > [ 1693.510000] UBI DBG (pid 2323): ubi_is_mapped: test LEB 2:0
> > <snip...>
> > [ 1694.130000] UBI DBG (pid 2323): ubi_is_mapped: test LEB 2:109
> > [ 1694.140000] UBI DBG (pid 2323): ubi_leb_change: atomically write
> > 560 bytes to LEB 2:6
> > [ 1694.150000] UBI DBG (pid 2323): ubi_eba_atomic_leb_change: change
> > LEB 2:6, PEB -1, write VID hdr to PEB 5
> > 11 bytes starting at LEB 2:6:545 has the following data:
> > 0xb7 0xe2 0x02 0xd5 0x9f 0x00 0x00 0xe0 0x7f 0x00 0x00
> >
> > <snip...>
> > [ 1694.520000] UBI DBG (pid 2323): ubi_leb_read: read 11 bytes from LEB 2:6:545
> > [ 1694.530000] UBI DBG (pid 2323): ubi_eba_read_leb: read 11 bytes
> > from offset 545 of LEB 2:6, PEB 5
> > [ 1694.540000] UBIFS error (pid 2323): check_lpt_crc: invalid crc in
> > LPT node: crc e2e2 calc e2b7
> > 11 bytes starting at LEB 2:6:545 has the following data:
> > 0xe2 0xe2 0x02 0xd5 0x9f 0x00 0x00 0xe0 0x7f 0x00 0x00
> >
> > [ 1694.550000] [<c01ca2bc>] (unwind_backtrace+0x0/0x160) from
> > [<bf096a34>] (check_lpt_crc+0x9c/0xb0 [ubifs])
> > [ 1694.560000] [<bf096a34>] (check_lpt_crc+0x9c/0xb0 [ubifs]) from
> > [<bf096f44>] (unpack_ltab+0x114/0x118 [ubifs])
> > [ 1694.570000] [<bf096f44>] (unpack_ltab+0x114/0x118 [ubifs]) from
> > [<bf097d28>] (lpt_init_rd+0x110/0x6f8 [ubifs])
> > [ 1694.580000] [<bf097d28>] (lpt_init_rd+0x110/0x6f8 [ubifs]) from
> > [<bf098e4c>] (ubifs_lpt_init+0x30/0x54 [ubifs])
> > [ 1694.590000] [<bf098e4c>] (ubifs_lpt_init+0x30/0x54 [ubifs]) from
> > [<bf076cb8>] (mount_ubifs+0x368/0x1620 [ubifs])
> > [ 1694.600000] [<bf076cb8>] (mount_ubifs+0x368/0x1620 [ubifs]) from
> > [<bf078d20>] (ubifs_fill_super+0x318/0x42c [ubifs])
> > [ 1694.610000] [<bf078d20>] (ubifs_fill_super+0x318/0x42c [ubifs])
> > from [<bf078f0c>] (ubifs_get_sb+0xd8/0x22c [ubifs])
> > [ 1694.620000] [<bf078f0c>] (ubifs_get_sb+0xd8/0x22c [ubifs]) from
> > [<c023d360>] (vfs_kern_mount+0x68/0x12c)
> > [ 1694.630000] [<c023d360>] (vfs_kern_mount+0x68/0x12c) from
> > [<c023d468>] (do_kern_mount+0x34/0xdc)
> > [ 1694.640000] [<c023d468>] (do_kern_mount+0x34/0xdc) from
> > [<c0255ad0>] (do_mount+0x210/0x244)
> > [ 1694.650000] [<c0255ad0>] (do_mount+0x210/0x244) from [<c0255ba0>]
> > (sys_mount+0x9c/0xd0)
> > [ 1694.660000] [<c0255ba0>] (sys_mount+0x9c/0xd0) from [<c01c49e0>]
> > (ret_fast_syscall+0x0/0x2c)
> >
> > Looking into drivers/mtd/maps/ixp4xx.c I see that the read function is
> > ixp4xx_read16(). It seems to me that there is an alignment problem.
> > The read starts at offset 545 which in unaligned with a 16-bit read
> > that is done by ixp4xx_read16().
>
> Yeah, most probably. Too bad we do not have a test for this. Care to
> extend MTD tests?
I mean, add an 'mtd_align', and verify reading from various unaligned
addresses. This will help you to verify your flash, and help the
community as well.
--
Best Regards,
Artem Bityutskiy (Артём Битюцкий)
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: Fail to mount ubifs
2010-01-13 8:06 ` Artem Bityutskiy
@ 2010-01-13 14:20 ` Jon Ringle
0 siblings, 0 replies; 17+ messages in thread
From: Jon Ringle @ 2010-01-13 14:20 UTC (permalink / raw)
To: dedekind1; +Cc: linux-mtd, Deepak Saxena
On Wed, Jan 13, 2010 at 3:06 AM, Artem Bityutskiy <dedekind1@gmail.com> wrote:
> On Wed, 2010-01-13 at 09:55 +0200, Artem Bityutskiy wrote:
>> On Wed, 2010-01-13 at 02:03 -0500, Jon Ringle wrote:
>> > Looking into drivers/mtd/maps/ixp4xx.c I see that the read function is
>> > ixp4xx_read16(). It seems to me that there is an alignment problem.
>> > The read starts at offset 545 which in unaligned with a 16-bit read
>> > that is done by ixp4xx_read16().
>>
>> Yeah, most probably. Too bad we do not have a test for this. Care to
>> extend MTD tests?
>
> I mean, add an 'mtd_align', and verify reading from various unaligned
> addresses. This will help you to verify your flash, and help the
> community as well.
I fixed the issue in the ixp4xx map driver. I will look into creating
a mtd_aligntest as time permits.
Jon
^ permalink raw reply [flat|nested] 17+ messages in thread
end of thread, other threads:[~2010-01-13 14:20 UTC | newest]
Thread overview: 17+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-01-11 18:56 Fail to mount ubifs Jon Ringle
2010-01-12 0:20 ` Jon Ringle
2010-01-12 4:50 ` Artem Bityutskiy
2010-01-12 12:07 ` Jon Ringle
2010-01-12 21:37 ` Artem Bityutskiy
2010-01-13 0:40 ` Jon Ringle
2010-01-12 20:23 ` Jon Ringle
2010-01-12 20:49 ` Jon Ringle
2010-01-12 21:23 ` Jon Ringle
2010-01-12 21:38 ` Artem Bityutskiy
2010-01-12 21:30 ` Artem Bityutskiy
2010-01-13 0:15 ` Jon Ringle
2010-01-13 7:03 ` Jon Ringle
2010-01-13 7:55 ` Artem Bityutskiy
2010-01-13 8:06 ` Artem Bityutskiy
2010-01-13 14:20 ` Jon Ringle
2010-01-12 21:33 ` Artem Bityutskiy
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox