-
-
Notifications
You must be signed in to change notification settings - Fork 12k
Description
knodel:
Extroot overlay mount fails on my ZyXEL NBG6817.
I can confirm this bug on both the latest stable 18.06.2, and the snapshot from the 4th of April.
When PREINIT calls 'block extroot', block fails to load the custom fstab from the eMMC ext4 overlay mounted at /tmp/overlay:
[...]
Thu Apr 4 12:01:51 2019 user.info kernel: [ 3.508150] init: - preinit -
Thu Apr 4 12:01:51 2019 kern.info kernel: [ 8.592387] EXT4-fs (loop0): recovery complete
Thu Apr 4 12:01:51 2019 kern.info kernel: [ 8.595484] EXT4-fs (loop0): mounted filesystem with ordered data mode. Opts: (null)
Thu Apr 4 12:01:51 2019 user.info kernel: [ 8.598875] mount_root: loading kmods from internal overlay
Thu Apr 4 12:01:51 2019 user.info kernel: [ 8.649260] kmodloader: loading kernel modules from /tmp/overlay/upper/etc/modules-boot.d/*
Thu Apr 4 12:01:51 2019 user.info kernel: [ 8.663223] kmodloader: done loading kernel modules from /tmp/overlay/upper/etc/modules-boot.d/*
Thu Apr 4 12:01:51 2019 user.info kernel: [ 10.119972] block: attempting to load /etc/config/fstab
Thu Apr 4 12:01:51 2019 user.err kernel: [ 10.120211] block: unable to load configuration (fstab: Entry not found)
Thu Apr 4 12:01:51 2019 user.err kernel: [ 10.124238] block: no usable configuration
Thu Apr 4 12:01:51 2019 user.info kernel: [ 10.132103] mount_root: switching to ext4 overlay
Thu Apr 4 12:01:51 2019 user.info kernel: [ 10.292110] procd: - early -
Thu Apr 4 12:01:51 2019 user.info kernel: [ 10.292264] procd: - watchdog -
Thu Apr 4 12:01:51 2019 user.info kernel: [ 10.988093] procd: - watchdog -
Thu Apr 4 12:01:51 2019 user.info kernel: [ 10.988475] procd: - ubus -
Thu Apr 4 12:01:51 2019 user.info kernel: [ 11.046160] procd: - init -
[...]
Unrelated dmesg entries omitted, full log here:
https://gist.github.com/knuddelknoedel/2985ce7777a0263fbc22a02f8ef5307c
Custom modules are loaded with the correct overlay /tmp/overlay/upper prefix by libfstools, however the forked 'block extroot' process behaves differently when searching for /etc/config/fstab configuration.
Steps to reproduce:
- Flash any current openwrt sysupgrade image on a device where the rootfs+overlay don't reside on MTD storage
- Configure an appropriate /overlay uci fstab extroot entry as specified in the respective wiki documentation
- Reboot
Further notes: adding /etc/config/fstab with the desired /overlay entry to the sysupgrade squashfs image before flashing allows block to successfully find the uci fstab config, however the mounting of the therein configured /overlay mount still fails.