[elbe-users] Problem with ubifs

Ralf Schlatterbeck rsc at runtux.com
Mon Feb 26 19:49:13 CET 2018


I have a project where I create an UBIFS.
This used to run on Debian oldstable (jessie) with elbe-testing and
generated an image for oldstable.
I'm now trying to port this to debian stable using elbe (without
-testing). I'm getting a corrupt ubifs which gets me a kernel panic.
(kernel messages below)

Trying to unpack that image with the python project ubi-reader
https://github.com/jrspruitt/ubi_reader
I'm getting "UBIFS Fatal: Super block error: Wrong node type."
which leads me to believe the resulting ubi image is really corrupt.

The image got larger with debian stable, can it be that I'm silently
creating an image that is too big to fit into the ubi data structures
without an error message?
The resulting image (uncompressed nand.img, elbe builds nand.img.gz) is
now 35.9 MB while the old images (debian oldstable) were around 27.3 MB

In the elbe log.txt I have:
running cmd +mkfs.ubifs -r /var/cache/elbe/c90792e3-2d82-4753-8e56-1ae61da056d2/filesystems/0 -o /var/cache/elbe/c90792e3-2d82-4753-8e56-1ae61da056d2/rootfs.ubifs -m 2048 -e 126976 -c 256 -x lzo+
------------------------------------------------------------------------------
Error: max_leb_cnt too low (272 needed)
------------------------------------------------------------------------------

Command failed with errorcode 255

Looks like my number of logical erase blocks is too low for the
generated image of around 35M.

If this is critical (and the reason for the failure): Shouldn't Elbe raise an
error here instead of silently creating a corrupt image?


Elbe xml part of the ubi image:

    <images>
      <mtd>
        <name>nand.img</name>
        <nr>0</nr>
        <size>61184kB</size>
        <ubivg>
          <label>nand</label>
          <miniosize>2048</miniosize>
          <maxlogicaleraseblockcount>256</maxlogicaleraseblockcount>
          <logicaleraseblocksize>126976</logicaleraseblocksize>
          <physicaleraseblocksize>128KiB</physicaleraseblocksize>
          <ubi>
            <type>dynamic</type>
            <label>rootfs</label>
            <id>0</id>
            <size>40MiB</size>
          </ubi>
        </ubivg>
      </mtd>
    </images>

Kernel messages when booting:
ubi0: attaching mtd3
ubi0: scanning is finished
ubi0: attached mtd3 (name "rootfs1", size 59 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: 478, bad PEBs: 0, corrupted PEBs: 0
ubi0: user volume: 1, internal volumes: 1, max. volumes count: 128
ubi0: max/mean erase counter: 1/0, WL threshold: 4096, image sequence number: 1672873418
ubi0: available PEBs: 123, total reserved PEBs: 355, PEBs reserved for bad PEB handling: 20
ubi0: background thread "ubi_bgt0d" started, PID 742
stmp3xxx-rtc 80056000.rtc: setting system clock to 1970-01-01 00:20:53 UTC (1253)
uart-pl011 80074000.serial: no DMA platform data
List of all partitions:
0100           16384 ram0 
 (driver?)
0101           16384 ram1 
 (driver?)
0102           16384 ram2 
 (driver?)
0103           16384 ram3 
 (driver?)
1f00            1024 mtdblock0 
 (driver?)
1f01             384 mtdblock1 
 (driver?)
1f02            6144 mtdblock2 
 (driver?)
1f03           61184 mtdblock3 
 (driver?)
1f04           61184 mtdblock4 
 (driver?)
1f05             512 mtdblock5 
 (driver?)
1f06             512 mtdblock6 
 (driver?)
1f07            4096 mtdblock7 
 (driver?)
No filesystem could mount root, tried: 
 ubifs

Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
CPU: 0 PID: 1 Comm: swapper Not tainted 4.14.21-karo+ #1
Hardware name: Freescale MXS (Device Tree)
...

Ralf
-- 
Dr. Ralf Schlatterbeck                  Tel:   +43/2243/26465-16
Open Source Consulting                  www:   http://www.runtux.com
Reichergasse 131, A-3411 Weidling       email: office at runtux.com



More information about the elbe-users mailing list