[REGRESSION 4.9-rc2] "c83ed4c - ubifs: Abort readdir upon error" breaks mount

Ralph Sennhauser ralph.sennhauser at gmail.com
Fri Oct 28 02:37:08 PDT 2016


Dear Richard, dear list

When testing 4.9-rc2 the device wouldn't boot, as it turns out commit
c83ed4c9dbb358b9e7707486e167e940d48bfeed prevent's me mounting root.


The relevant portion of init in the initramfs:

  modprobe ubi mtd=$(get_mtd_from_root_arg) block=0,0 || rescue_shell "ubi"
  modprobe ubifs || rescue_shell "ubifs"
  sleep 1

  mount -o ro -t squashfs /dev/ubiblock0_0 /rom || rescue_shell "mount rootfs"
  mount -o rw,noatime -t ubifs /dev/ubi0_1 /overlay || rescue_shell "mount rootfs_data"

  mkdir -p /overlay/upper || rescue_shell "mkdir upper"
  mkdir -p /overlay/work || rescue_shell "mkdir work"

  mount -o rw,noatime,lowerdir=/rom,upperdir=/overlay/upper,workdir=/overlay/work \
        -t overlay overlay /newroot || rescue_shell "mount overlay"


The corresponding output:

  [    1.396152] ubi0: attaching mtd5
  [    1.407127] random: fast init done
  [    1.471770] ubi0: scanning is finished
  [    1.491499] ubi0: volume 1 ("rootfs_data") re-sized from 9 to 111 LEBs
  [    1.498325] ubi0: attached mtd5 (name "rootfs1", size 34 MiB)
  [    1.504106] ubi0: PEB size: 131072 bytes (128 KiB), LEB size: 126976 bytes
  [    1.511007] ubi0: min./max. I/O unit sizes: 2048/2048, sub-page size 2048
  [    1.517826] ubi0: VID header offset: 2048 (aligned 2048), data offset: 4096
  [    1.524819] ubi0: good PEBs: 272, bad PEBs: 0, corrupted PEBs: 0
  [    1.530848] ubi0: user volume: 2, internal volumes: 1, max. volumes count: 128
  [    1.538102] ubi0: max/mean erase counter: 1/0, WL threshold: 4096, image sequence number: 1823239451
  [    1.547275] ubi0: available PEBs: 0, total reserved PEBs: 272, PEBs reserved for bad PEB handling: 20
  [    1.556613] ubi0: background thread "ubi_bgt0d" started, PID 575
  [    1.562933] block ubiblock0_0: created from ubi0:0(rootfs)
  [    2.588027] UBIFS (ubi0:1): default file-system created
  [    2.593689] UBIFS (ubi0:1): background thread "ubifs_bgt0_1" started, PID 586
  [    2.626943] UBIFS (ubi0:1): UBIFS: mounted UBI device 0, volume 1, name "rootfs_data"
  [    2.634816] UBIFS (ubi0:1): LEB size: 126976 bytes (124 KiB), min./max. I/O unit sizes: 2048 bytes/2048 bytes
  [    2.644781] UBIFS (ubi0:1): FS size: 12824576 bytes (12 MiB, 101 LEBs), journal size 1015809 bytes (0 MiB, 6 LEBs)
  [    2.655175] UBIFS (ubi0:1): reserved for root: 605735 bytes (591 KiB)
  [    2.661646] UBIFS (ubi0:1): media format: w4/r0 (latest is w4/r0), UUID FC75053C-E958-4BBC-BD2B-CFCD72BD47F6, small LPT model
  mount: mounting overlay on /newroot failed: No such file or directory
  Error in /init: mount overlay
  -install: applet not found


  BusyBox v1.25.1 () built-in shell (ash)

  sh: can't access tty; job control turned off
  #


The device is a Linksys WRT1900ACS (Shelby), for a basically identical device
see ./arch/arm/boot/dts/armada-385-linksys-cobra.dts


Regards
Ralph



More information about the linux-mtd mailing list