[U-Boot] UBIFS Problems with U-boot 2018.1 & 4.14 Linux

Otto Blom ottoblom2018 at gmail.com
Tue May 22 01:30:04 UTC 2018


Hi Richard !

To summarize the observations from the last few days.

* Linux 4.9 & U-boot 2018 behave the same when attempting to read from
a ubifs file system
* Whenever Linux 4.14 writes to a ubifs there is some form of
incompatibility introduced
causing assorted errors when the file system is read in Linux 4.9 or
U-boot. However
the files can still be read in Linux 4.14.

This lead me to suspect a problem with the OOB data. So I copied over
a 16MB textfile to
a freshly minted no-compression ubifs partition (running 4.14) and ran
a nanddump both from
Linux 4.9 and 4.14 and the contents are different - Bit errors are
present in the 4.9-dump..

See https://www.dropbox.com/s/sbi64wfqi62noxi/bit_error.png?dl=0


So I tried to write a 94Mb file directly to the NAND using
flash_eraseall /dev/mtd2
nandwrite -p /dev/mtd2 Bronte2_fw_20180509-r.bin
nanddump -f mtd2.dump /dev/mtd2 -l 94103952

And to my big surprise the file written in 4.14 reads back identically
in 4.9 and vice versa.

Any idea on what could be causing something like this ? Does ubifs use
a different writing
method compared to nandwrite ? Its almost like the two have different
ECC / OOB processing

Thanks for your time !

/Otto









On Sat, May 19, 2018 at 1:37 AM, Richard Weinberger <richard at nod.at> wrote:
> Am Samstag, 19. Mai 2018, 01:56:33 CEST schrieb Otto Blom:
>> UBIFS error (ubi0:0 pid 0): crypto_comp_decompress: cannot decompress
>> 2801 bytes, compressor lzo, error -6
>
> LZO_E_LOOKBEHIND_OVERRUN...
>
>> UBIFS error (ubi0:0 pid 0): ubifs_decompress: cannot decompress 2801
>> bytes, compressor lzo, error -6
>> ubifs_decompress RC: -6 len: 4096  out_len: 3377
>> UBIFS error (ubi0:0 pid 0): read_block: bad data node (block 3, inode 68)
>>         magic          0x6101831
>>         crc            0xf15144c6
>>         node_type      1 (data node)
>>         group_type     0 (no node group)
>>         sqnum          3276
>>         len            2849
>>         key            (68, data, 3)
>>         size           4096
>>         compr_typ      1
>>         data size      2801
>>         data:
>> UBIFS error (ubi0:0 pid 0): do_readpage: cannot read page 3 of inode
>> 68, error -22
>> Error reading file '/boot/Image'
>
> So, LZO *does* return an error.
> Did you edit the logs in your last mails? Or was some U-Boot silencing option
> enabled?

I did not edit the logs. Under the previous scenario ubifs_decompress
returned zero,
but there was a length mismatch (len != len_out). The difference between the two
scenarios is that now I'm using a freshly formatted partition that was
initialized while
running Linux 4.14. Previously I was testing with the a rootfs being
written using
the -f option of ubiformat, followed by updating a single file (/boot/Image).
Purpose of the later test was to eliminate the ubi-file being part of
the problem.

> Does it work if you disable compression?

I tried disabling compression and also switched to using a large
(16Mb) text file so it
would be easier to see any corruption. Still fails unfortunately.. See
below for the full log.
The thing that I find the most strange is that the file can still be
read correctly in Linux 4.14..

Not sure if the nanddump of the ubifs partition is of any value, but I
zipped it up and put it on
dropbox just in case

https://www.dropbox.com/s/sd8ctph9ie7u20m/rootfs.zip?dl=0



root at bronte2:~# flash_eraseall /dev/mtd2
flash_eraseall has been replaced by `flash_erase <mtddev> 0 0`; please use it
Erasing 128 Kibyte @ 7f60000 -- 99 % complete flash_erase: Skipping
bad block at 07f80000
flash_erase: Skipping bad block at 07fa0000
flash_erase: Skipping bad block at 07fc0000
flash_erase: Skipping bad block at 07fe0000
Erasing 128 Kibyte @ 7fe0000 -- 100 % complete

ubiattach /dev/ubi_ctrl -p /dev/mtd2 -d 2
ubimkvol /dev/ubi2 -N rootfs -m
mkdir -p /mnt/ubifs3
mount -t ubifs -o compr=none /dev/ubi2_0 /mnt/ubifs3
cp /tmp/iliad_big.txt /mnt/ubifs3/iliad_16M.txt
umount /mnt/ubifs3/
ubidetach -p /dev/mtd2
nanddump -f rootfs.ubi /dev/mtd2    # <---- File on dropbox


[Booting into u-boot 2018.1]

ZynqMP> ubi part misc
Bad block table found at page 262080, version 0x01
Bad block table found at page 262016, version 0x01
ubi0: attaching mtd2
ubi0: scanning is finished
ubi0 warning: ubi_calculate_reserved: number of bad PEBs (4) is above
the expected limit (0), not reserving any PEBs for bad PEB handling,
will use available PEBs (if any)
ubi0: attached mtd2 (name "mtd=2", size 128 MiB)
ubi0: PEB size: 131072 bytes (128 KiB), LEB size: 126976 bytes
ubi0: min./max. I/O unit sizes: 2048/2048, sub-page size 2048
ubi0: VID header offset: 2048 (aligned 2048), data offset: 4096
ubi0: good PEBs: 1020, bad PEBs: 4, corrupted PEBs: 0
ubi0: user volume: 1, internal volumes: 1, max. volumes count: 128
ubi0: max/mean erase counter: 2/1, WL threshold: 4096, image sequence
number: 468243014
ubi0: available PEBs: 76, total reserved PEBs: 944, PEBs reserved for
bad PEB handling: 0

ZynqMP> ubifsmount ubi0:rootfs
UBIFS DBG io: LEB 0:0, superblock node, length 4096
UBIFS DBG scan: scan LEB 1:0
UBIFS DBG scan: look at LEB 1:0 (126976 bytes left)
UBIFS DBG scan: scanning master node at LEB 1:0
UBIFS DBG scan: look at LEB 1:512 (126464 bytes left)
UBIFS DBG scan: scanning padding node at LEB 1:512
UBIFS DBG scan: 1508 bytes padded at LEB 1:512, offset now 2048
UBIFS DBG scan: look at LEB 1:2048 (124928 bytes left)
UBIFS DBG scan: scanning master node at LEB 1:2048
UBIFS DBG scan: look at LEB 1:2560 (124416 bytes left)
UBIFS DBG scan: scanning padding node at LEB 1:2560
UBIFS DBG scan: 1508 bytes padded at LEB 1:2560, offset now 4096
UBIFS DBG scan: look at LEB 1:4096 (122880 bytes left)
UBIFS DBG scan: scanning master node at LEB 1:4096
UBIFS DBG scan: look at LEB 1:4608 (122368 bytes left)
UBIFS DBG scan: scanning padding node at LEB 1:4608
UBIFS DBG scan: 1508 bytes padded at LEB 1:4608, offset now 6144
UBIFS DBG scan: look at LEB 1:6144 (120832 bytes left)
UBIFS DBG scan: scanning master node at LEB 1:6144
UBIFS DBG scan: look at LEB 1:6656 (120320 bytes left)
UBIFS DBG scan: scanning padding node at LEB 1:6656
UBIFS DBG scan: 1508 bytes padded at LEB 1:6656, offset now 8192
UBIFS DBG scan: look at LEB 1:8192 (118784 bytes left)
UBIFS DBG scan: scanning master node at LEB 1:8192
UBIFS DBG scan: look at LEB 1:8704 (118272 bytes left)
UBIFS DBG scan: scanning padding node at LEB 1:8704
UBIFS DBG scan: 1508 bytes padded at LEB 1:8704, offset now 10240
UBIFS DBG scan: look at LEB 1:10240 (116736 bytes left)
UBIFS DBG scan: scanning master node at LEB 1:10240
UBIFS DBG scan: look at LEB 1:10752 (116224 bytes left)
UBIFS DBG scan: scanning padding node at LEB 1:10752
UBIFS DBG scan: 1508 bytes padded at LEB 1:10752, offset now 12288
UBIFS DBG scan: look at LEB 1:12288 (114688 bytes left)
UBIFS DBG scan: scanning master node at LEB 1:12288
UBIFS DBG scan: look at LEB 1:12800 (114176 bytes left)
UBIFS DBG scan: scanning padding node at LEB 1:12800
UBIFS DBG scan: 1508 bytes padded at LEB 1:12800, offset now 14336
UBIFS DBG scan: look at LEB 1:14336 (112640 bytes left)
UBIFS DBG scan: scanning master node at LEB 1:14336
UBIFS DBG scan: look at LEB 1:14848 (112128 bytes left)
UBIFS DBG scan: scanning padding node at LEB 1:14848
UBIFS DBG scan: 1508 bytes padded at LEB 1:14848, offset now 16384
UBIFS DBG scan: look at LEB 1:16384 (110592 bytes left)
UBIFS DBG scan: scanning master node at LEB 1:16384
UBIFS DBG scan: look at LEB 1:16896 (110080 bytes left)
UBIFS DBG scan: scanning padding node at LEB 1:16896
UBIFS DBG scan: 1508 bytes padded at LEB 1:16896, offset now 18432
UBIFS DBG scan: look at LEB 1:18432 (108544 bytes left)
UBIFS DBG scan: hit empty space at LEB 1:18432
UBIFS DBG scan: stop scanning LEB 1 at offset 18432
UBIFS DBG scan: scan LEB 2:0
UBIFS DBG scan: look at LEB 2:0 (126976 bytes left)
UBIFS DBG scan: scanning master node at LEB 2:0
UBIFS DBG scan: look at LEB 2:512 (126464 bytes left)
UBIFS DBG scan: scanning padding node at LEB 2:512
UBIFS DBG scan: 1508 bytes padded at LEB 2:512, offset now 2048
UBIFS DBG scan: look at LEB 2:2048 (124928 bytes left)
UBIFS DBG scan: scanning master node at LEB 2:2048
UBIFS DBG scan: look at LEB 2:2560 (124416 bytes left)
UBIFS DBG scan: scanning padding node at LEB 2:2560
UBIFS DBG scan: 1508 bytes padded at LEB 2:2560, offset now 4096
UBIFS DBG scan: look at LEB 2:4096 (122880 bytes left)
UBIFS DBG scan: scanning master node at LEB 2:4096
UBIFS DBG scan: look at LEB 2:4608 (122368 bytes left)
UBIFS DBG scan: scanning padding node at LEB 2:4608
UBIFS DBG scan: 1508 bytes padded at LEB 2:4608, offset now 6144
UBIFS DBG scan: look at LEB 2:6144 (120832 bytes left)
UBIFS DBG scan: scanning master node at LEB 2:6144
UBIFS DBG scan: look at LEB 2:6656 (120320 bytes left)
UBIFS DBG scan: scanning padding node at LEB 2:6656
UBIFS DBG scan: 1508 bytes padded at LEB 2:6656, offset now 8192
UBIFS DBG scan: look at LEB 2:8192 (118784 bytes left)
UBIFS DBG scan: scanning master node at LEB 2:8192
UBIFS DBG scan: look at LEB 2:8704 (118272 bytes left)
UBIFS DBG scan: scanning padding node at LEB 2:8704
UBIFS DBG scan: 1508 bytes padded at LEB 2:8704, offset now 10240
UBIFS DBG scan: look at LEB 2:10240 (116736 bytes left)
UBIFS DBG scan: scanning master node at LEB 2:10240
UBIFS DBG scan: look at LEB 2:10752 (116224 bytes left)
UBIFS DBG scan: scanning padding node at LEB 2:10752
UBIFS DBG scan: 1508 bytes padded at LEB 2:10752, offset now 12288
UBIFS DBG scan: look at LEB 2:12288 (114688 bytes left)
UBIFS DBG scan: scanning master node at LEB 2:12288
UBIFS DBG scan: look at LEB 2:12800 (114176 bytes left)
UBIFS DBG scan: scanning padding node at LEB 2:12800
UBIFS DBG scan: 1508 bytes padded at LEB 2:12800, offset now 14336
UBIFS DBG scan: look at LEB 2:14336 (112640 bytes left)
UBIFS DBG scan: scanning master node at LEB 2:14336
UBIFS DBG scan: look at LEB 2:14848 (112128 bytes left)
UBIFS DBG scan: scanning padding node at LEB 2:14848
UBIFS DBG scan: 1508 bytes padded at LEB 2:14848, offset now 16384
UBIFS DBG scan: look at LEB 2:16384 (110592 bytes left)
UBIFS DBG scan: scanning master node at LEB 2:16384
UBIFS DBG scan: look at LEB 2:16896 (110080 bytes left)
UBIFS DBG scan: scanning padding node at LEB 2:16896
UBIFS DBG scan: 1508 bytes padded at LEB 2:16896, offset now 18432
UBIFS DBG scan: look at LEB 2:18432 (108544 bytes left)
UBIFS DBG scan: hit empty space at LEB 2:18432
UBIFS DBG scan: stop scanning LEB 2 at offset 18432
UBIFS DBG lp: space_bits 14
UBIFS DBG lp: lpt_lnum_bits 2
UBIFS DBG lp: lpt_offs_bits 17
UBIFS DBG lp: lpt_spc_bits 17
UBIFS DBG lp: pcnt_bits 8
UBIFS DBG lp: lnum_bits 10
UBIFS DBG lp: pnode_sz 17
UBIFS DBG lp: nnode_sz 12
UBIFS DBG lp: ltab_sz 11
UBIFS DBG lp: lsave_sz 323
UBIFS DBG lp: lsave_cnt 256
UBIFS DBG lp: lpt_hght 4
UBIFS DBG lp: big_lpt 0
UBIFS DBG lp: LPT root is at 7:16518
UBIFS DBG lp: LPT head is at 7:18432
UBIFS DBG lp: LPT ltab is at 7:16384
UBIFS DBG lp: LEB 7 add 12 to 13512
UBIFS DBG lp: LEB 7 add 11 to 13524
UBIFS DBG lp: LEB 7 add 12 to 13535
UBIFS DBG lp: LEB 7 add 12 to 13547
UBIFS DBG lp: LEB 7 add 12 to 13559
UBIFS DBG lp: LEB 7 add 17 to 13571
UBIFS DBG lp: LEB 159, free 124928, dirty 1000, flags 34
UBIFS DBG lp: LEB 159, free -2147483647, dirty -2147483647, flags 50
UBIFS DBG lp: LEB 159, free 124928, dirty 1000, flags 34
UBIFS DBG mnt: start replaying the journal
UBIFS DBG mnt: replay log LEB 5:0
UBIFS DBG scan: scan LEB 5:0
UBIFS DBG scan: look at LEB 5:0 (126976 bytes left)
UBIFS DBG scan: scanning commit start node at LEB 5:0
UBIFS DBG scan: look at LEB 5:32 (126944 bytes left)
UBIFS DBG scan: scanning reference node at LEB 5:32
UBIFS DBG scan: look at LEB 5:96 (126880 bytes left)
UBIFS DBG scan: scanning reference node at LEB 5:96
UBIFS DBG scan: look at LEB 5:160 (126816 bytes left)
UBIFS DBG scan: scanning padding node at LEB 5:160
UBIFS DBG scan: 1860 bytes padded at LEB 5:160, offset now 2048
UBIFS DBG scan: look at LEB 5:2048 (124928 bytes left)
UBIFS DBG scan: hit empty space at LEB 5:2048
UBIFS DBG scan: stop scanning LEB 5 at offset 2048
UBIFS DBG mnt: commit start sqnum 5167
UBIFS DBG mnt: add replay bud LEB 12:4096, head 1
UBIFS DBG log: LEB 12:4096, jhead 1 (base), bud_bytes 122880
UBIFS DBG mnt: add replay bud LEB 156:90112, head 2
UBIFS DBG log: LEB 156:90112, jhead 2 (data), bud_bytes 159744
UBIFS DBG mnt: replay log LEB 6:0
UBIFS DBG scan: scan LEB 6:0
UBIFS DBG scan: look at LEB 6:0 (126976 bytes left)
UBIFS DBG scan: hit empty space at LEB 6:0
UBIFS DBG scan: stop scanning LEB 6 at offset 0
UBIFS DBG mnt: replay bud LEB 12, head 1, offs 4096, is_last 1
UBIFS DBG scan: scan LEB 12:4096
UBIFS DBG scan: look at LEB 12:4096 (122880 bytes left)
UBIFS DBG scan: hit empty space at LEB 12:4096
UBIFS DBG scan: stop scanning LEB 12 at offset 4096
UBIFS DBG mnt: bud LEB 12 replied: dirty 0, free 122880
UBIFS DBG mnt: replay bud LEB 156, head 2, offs 90112, is_last 1
UBIFS DBG scan: scan LEB 156:90112
UBIFS DBG scan: look at LEB 156:90112 (36864 bytes left)
UBIFS DBG scan: hit empty space at LEB 156:90112
UBIFS DBG scan: stop scanning LEB 156 at offset 90112
UBIFS DBG mnt: bud LEB 156 replied: dirty 0, free 36864
UBIFS DBG lp: LEB 7 add 12 to 13588
UBIFS DBG lp: LEB 7 add 12 to 13600
UBIFS DBG lp: LEB 7 add 17 to 13612
UBIFS DBG lp: LEB 12, free 122880, dirty 3704, flags 3
UBIFS DBG lp: LEB 12, free 122880, dirty 3704, flags 19
UBIFS DBG lp: LEB 12, free 122880, dirty 3704, flags 3
UBIFS DBG io: LEB 12:4096, jhead 1 (base)
UBIFS DBG lp: LEB 7 add 17 to 13629
UBIFS DBG lp: LEB 156, free 36864, dirty 1216, flags 3
UBIFS DBG lp: LEB 156, free 36864, dirty 1216, flags 19
UBIFS DBG lp: LEB 156, free 36864, dirty 1216, flags 3
UBIFS DBG io: LEB 156:90112, jhead 2 (data)
UBIFS DBG mnt: finished, log head LEB 5:2048, max_sqnum 5172, highest_inum 65
UBIFS DBG lp: LEB 13, free 126976, dirty 0, flags 4
UBIFS DBG lp: LEB 13, free 126976, dirty 0, flags 20
UBIFS DBG lp: LEB 13, free 126976, dirty 0, flags 4
UBIFS (ubi0:0): UBIFS: mounted UBI device 0, volume 0, name "rootfs", R/O mode
UBIFS (ubi0:0): LEB size: 126976 bytes (124 KiB), min./max. I/O unit
sizes: 2048 bytes/2048 bytes
UBIFS (ubi0:0): FS size: 117960704 bytes (112 MiB, 929 LEBs), journal
size 5967872 bytes (5 MiB, 47 LEBs)
UBIFS (ubi0:0): reserved for root: 4952683 bytes (4836 KiB)
UBIFS (ubi0:0): media format: w5/r0 (latest is w4/r0), UUID
e1efcee9-698e-403a-9510-46b5cc634f84, small LPT model
UBIFS DBG tnc: search key (1, inode)
UBIFS DBG io: LEB 159:976, indexing node, length 68
UBIFS DBG tnc: LEB 159:976, level 4, 2 branch
UBIFS DBG io: LEB 11:119040, indexing node, length 188
UBIFS DBG tnc: LEB 11:119040, level 3, 8 branch
UBIFS DBG io: LEB 11:15872, indexing node, length 188
UBIFS DBG tnc: LEB 11:15872, level 2, 8 branch
UBIFS DBG io: LEB 11:3584, indexing node, length 188
UBIFS DBG tnc: LEB 11:3584, level 1, 8 branch
UBIFS DBG io: LEB 11:2048, indexing node, length 188
UBIFS DBG tnc: LEB 11:2048, level 0, 8 branch
UBIFS DBG tnc: found 1, lvl 0, n 0
UBIFS DBG io: LEB 12:2280, inode node, length 160, jhead 1 (base)
UBIFS DBG io: LEB 12:2280, inode node, length 160


ZynqMP> ubifsload 0x10000000 iliad_16M.txt
<snip>
UBIFS DBG io: LEB 101:62160, data node, length 4144
UBIFS DBG tnc: search key (65, data, 2626)
UBIFS DBG tnc: found 1, lvl 0, n 5
UBIFS DBG tnc: LEB 101:66304, key (65, data, 2626)
UBIFS DBG io: LEB 101:66304, data node, length 4144
UBIFS DBG tnc: search key (65, data, 2627)
UBIFS DBG tnc: found 1, lvl 0, n 6
UBIFS DBG tnc: LEB 101:70448, key (65, data, 2627)
UBIFS DBG io: LEB 101:70448, data node, length 4144
UBIFS DBG tnc: search key (65, data, 2628)
UBIFS DBG tnc: found 1, lvl 0, n 7
UBIFS DBG tnc: LEB 101:74592, key (65, data, 2628)
UBIFS DBG io: LEB 101:74592, data node, length 4144
UBIFS DBG tnc: search key (65, data, 2629)
UBIFS DBG io: LEB 11:76800, indexing node, length 188
UBIFS error (ubi0:0 pid 0): ubifs_check_node: bad CRC: calculated
0x9ded2d86, read 0x6f74842d
UBIFS error (ubi0:0 pid 0): ubifs_check_node: bad node at LEB 11:76800
        magic          0x6101831
        crc            0x6f74842d
        node_type      9 (indexing node)
        group_type     0 (no node group)
        sqnum          1052213
        len            188
        child_cnt      8
        level          0
        Branches:
        0: LEB 101:78736 len 4144 key (65, data, 2629)
        1: LEB 101:82880 len 4144 key (65, data, 2630)
        2: LEB 101:87024 len 4144 key (65, data, 2631)
        3: LEB 101:91168 len 536875056 key (65, data, 2632)
        4: LEB 2149:95312 len 4144 key (65, data, 2633)
        5: LEB 101:99456 len 4144 key (65, data, 2634)
        6: LEB 101:103600 len 4144 key (65, data, 2635)
UBIFS error (ubi0:0 pid 0): ubifs_read_node: expected node type 9
UBIFS error (ubi0:0 pid 0): do_readpage: cannot read page 2629 of
inode 65, error -117
Error reading file 'iliad_16M.txt'
** File not found iliad_16M.txt **

[Booted Back in Linux 4.14 and verified file can be read and matches
original file]

[Booting Linux 4.9 and when attempting to read the file I get the same
error as in U-boot]

[   51.813210] UBIFS error (ubi2:0 pid 2461): ubifs_read_superblock:
on-flash format version is w5/r0, but software only supports up to
version w4/r0
[   51.826300] UBIFS (ubi2:0): only R/O mounting is possible
[   51.862365] UBIFS (ubi2:0): recovery needed
[   51.899551] UBIFS (ubi2:0): recovery deferred
[   51.899622] UBIFS (ubi2:0): UBIFS: mounted UBI device 2, volume 0,
name "rootfs", R/O mode
[   51.899630] UBIFS (ubi2:0): LEB size: 126976 bytes (124 KiB),
min./max. I/O unit sizes: 2048 bytes/2048 bytes
[   51.899639] UBIFS (ubi2:0): FS size: 117960704 bytes (112 MiB, 929
LEBs), journal size 5967872 bytes (5 MiB, 47 LEBs)
[   51.899645] UBIFS (ubi2:0): reserved for root: 4952683 bytes (4836 KiB)
[   51.899654] UBIFS (ubi2:0): media format: w5/r0 (latest is w4/r0),
UUID E1EFCEE9-698E-403A-9510-46B5CC634F84, small LPT model
[   97.130054] UBIFS error (ubi2:0 pid 2487): ubifs_check_node: bad
CRC: calculated 0x9ded2d86, read 0x6f74842d
[   97.139857] UBIFS error (ubi2:0 pid 2487): ubifs_check_node: bad
node at LEB 11:76800
[   97.147637]  magic          0x6101831
[   97.151280]  crc            0x6f74842d
[   97.155017]  node_type      9 (indexing node)
[   97.159347]  group_type     0 (no node group)
[   97.163689]  sqnum          1052213
[   97.167157]  len            188
[   97.170286]  child_cnt      8
[   97.173233]  level          0
[   97.176184]  Branches:
[   97.178536]  0: LEB 101:78736 len 4144 key (65, data, 2629)
[   97.184091]  1: LEB 101:82880 len 4144 key (65, data, 2630)
[   97.189645]  2: LEB 101:87024 len 4144 key (65, data, 2631)
[   97.195207]  3: LEB 101:91168 len 536875056 key (65, data, 2632)
[   97.201190]  4: LEB 2149:95312 len 4144 key (65, data, 2633)
[   97.206833]  5: LEB 101:99456 len 4144 key (65, data, 2634)
[   97.212386]  6: LEB 101:103600 len 4144 key (65, data, 2635)
[   97.218033] CPU: 0 PID: 2487 Comm: diff Tainted: G           O
4.9.0-xilinx-v2017.3 #1
[   97.218037] Hardware name: xlnx,zynqmp (DT)
[   97.218040] Call trace:
[   97.218054] [<ffffff8008088138>] dump_backtrace+0x0/0x1d0
[   97.218063] [<ffffff800808831c>] show_stack+0x14/0x20
[   97.218072] [<ffffff8008462614>] dump_stack+0x94/0xb8
[   97.218079] [<ffffff800832dd28>] ubifs_check_node+0x160/0x228
[   97.218085] [<ffffff800832f5bc>] ubifs_read_node+0x284/0x2d8
[   97.218093] [<ffffff800834e308>] ubifs_load_znode+0x88/0x458
[   97.218100] [<ffffff8008332da0>] ubifs_lookup_level0+0xd0/0x330
[   97.218107] [<ffffff8008333054>] ubifs_tnc_locate+0x54/0x1e0
[   97.218116] [<ffffff8008324cb8>] do_readpage+0x140/0x3f8
[   97.218124] [<ffffff8008325df0>] ubifs_readpage+0x48/0x458
[   97.218134] [<ffffff8008139558>] generic_file_read_iter+0x3e0/0x730
[   97.218144] [<ffffff80081914bc>] __vfs_read+0xac/0xf8
[   97.218152] [<ffffff80081921ac>] vfs_read+0x84/0x148
[   97.218160] [<ffffff800819363c>] SyS_read+0x44/0xa0
[   97.218167] [<ffffff8008082ef0>] el0_svc_naked+0x24/0x28
[   97.218182] UBIFS error (ubi2:0 pid 2487): ubifs_read_node:
expected node type 9
[   97.225525] UBIFS error (ubi2:0 pid 2487): do_readpage: cannot read
page 2629 of inode 65, error -117
[   97.234858] UBIFS error (ubi2:0 pid 2487): ubifs_check_node: bad
CRC: calculated 0x9ded2d86, read 0x6f74842d
[   97.244645] UBIFS error (ubi2:0 pid 2487): ubifs_check_node: bad
node at LEB 11:76800
[   97.252420]  magic          0x6101831
[   97.256072]  crc            0x6f74842d
[   97.259797]  node_type      9 (indexing node)
[   97.264136]  group_type     0 (no node group)
[   97.268475]  sqnum          1052213
[   97.271946]  len            188
[   97.275074]  child_cnt      8
[   97.278029]  level          0
[   97.280974]  Branches:
[   97.283313]  0: LEB 101:78736 len 4144 key (65, data, 2629)
[   97.288880]  1: LEB 101:82880 len 4144 key (65, data, 2630)
[   97.294433]  2: LEB 101:87024 len 4144 key (65, data, 2631)
[   97.299995]  3: LEB 101:91168 len 536875056 key (65, data, 2632)
[   97.305977]  4: LEB 2149:95312 len 4144 key (65, data, 2633)
[   97.311618]  5: LEB 101:99456 len 4144 key (65, data, 2634)
[   97.317174]  6: LEB 101:103600 len 4144 key (65, data, 2635)
[   97.322823] CPU: 1 PID: 2487 Comm: diff Tainted: G           O
4.9.0-xilinx-v2017.3 #1
[   97.322826] Hardware name: xlnx,zynqmp (DT)
[   97.322829] Call trace:
[   97.322839] [<ffffff8008088138>] dump_backtrace+0x0/0x1d0
[   97.322847] [<ffffff800808831c>] show_stack+0x14/0x20
[   97.322855] [<ffffff8008462614>] dump_stack+0x94/0xb8
[   97.322862] [<ffffff800832dd28>] ubifs_check_node+0x160/0x228
[   97.322868] [<ffffff800832f5bc>] ubifs_read_node+0x284/0x2d8
[   97.322874] [<ffffff800834e308>] ubifs_load_znode+0x88/0x458
[   97.322881] [<ffffff8008332da0>] ubifs_lookup_level0+0xd0/0x330
[   97.322888] [<ffffff8008333054>] ubifs_tnc_locate+0x54/0x1e0
[   97.322897] [<ffffff8008324cb8>] do_readpage+0x140/0x3f8
[   97.322905] [<ffffff8008325df0>] ubifs_readpage+0x48/0x458
[   97.322913] [<ffffff8008139558>] generic_file_read_iter+0x3e0/0x730
[   97.322922] [<ffffff80081914bc>] __vfs_read+0xac/0xf8
[   97.322930] [<ffffff80081921ac>] vfs_read+0x84/0x148
[   97.322937] [<ffffff800819363c>] SyS_read+0x44/0xa0
[   97.322944] [<ffffff8008082ef0>] el0_svc_naked+0x24/0x28
[   97.322952] UBIFS error (ubi2:0 pid 2487): ubifs_read_node:
expected node type 9
[   97.330280] UBIFS error (ubi2:0 pid 2487): do_readpage: cannot read
page 2629 of inode 65, error -117



[Sanity check to make sure compression is off]

root at bronte2:~# hexdump -C /dev/mtd2
<snip>
02201000  31 18 10 06 fb 14 b8 a0  0f 00 00 00 00 00 00 00  |1...............|
02201010  30 10 00 00 01 00 00 00  41 00 00 00 00 00 00 20  |0.......A...... |
02201020  00 00 00 00 00 00 00 00  00 10 00 00 00 00 00 00  |................|
02201030  50 72 6f 76 69 64 65 64  20 62 79 20 54 68 65 20  |Provided by The |
02201040  49 6e 74 65 72 6e 65 74  20 43 6c 61 73 73 69 63  |Internet Classic|
02201050  73 20 41 72 63 68 69 76  65 2e 0a 53 65 65 20 62  |s Archive..See b|
02201060  6f 74 74 6f 6d 20 66 6f  72 20 63 6f 70 79 72 69  |ottom for copyri|
02201070  67 68 74 2e 20 41 76 61  69 6c 61 62 6c 65 20 6f  |ght. Available o|
02201080  6e 6c 69 6e 65 20 61 74  0a 20 20 20 20 68 74 74  |nline at.    htt|
02201090  70 3a 2f 2f 63 6c 61 73  73 69 63 73 2e 6d 69 74  |p://classics.mit|
022010a0  2e 65 64 75 2f 2f 48 6f  6d 65 72 2f 69 6c 69 61  |.edu//Homer/ilia|
022010b0  64 2e 68 74 6d 6c 0a 0a  54 68 65 20 49 6c 69 61  |d.html..The Ilia|
022010c0  64 0a 42 79 20 48 6f 6d  65 72 0a 0a 0a 54 72 61  |d.By Homer...Tra|
022010d0  6e 73 6c 61 74 65 64 20  62 79 20 53 61 6d 75 65  |nslated by Samue|
022010e0  6c 20 42 75 74 6c 65 72  0a 0a 2d 2d 2d 2d 2d 2d  |l Butler..------|
022010f0  2d 2d 2d 2d 2d 2d 2d 2d  2d 2d 2d 2d 2d 2d 2d 2d  |----------------|

[Check to see how much we can read from the file]

hexdump -C /mnt/ubifs3/iliad_16M.txt
<snip>
00a44fa0  6e 75 72 74 75 72 65 64  20 69 6e 20 61 6c 6c 20  |nurtured in all |
00a44fb0  61 62 75 6e 64 61 6e 63  65 2e 0a 41 67 61 6d 65  |abundance..Agame|
00a44fc0  6d 6e 6f 6e 20 68 61 73  20 74 68 72 65 65 20 64  |mnon has three d|
00a44fd0  61 75 67 68 74 65 72 73  2c 20 43 68 72 79 73 6f  |aughters, Chryso|
00a44fe0  74 68 65 6d 69 73 2c 20  4c 61 6f 64 69 63 65 2c  |themis, Laodice,|
00a44ff0  20 61 6e 64 20 49 70 68  69 61 6e 61 73 73 61 3b  | and Iphianassa;|
hexdump: /mnt/ubifs3//iliad_16M.txt: Input/output error




Could this be happening if the OOB format has changed in 4.14 ?


More information about the U-Boot mailing list