Mounting some of the file systems fail during the kernel boot

I have a Colibri VF50 module and I am trying to install Linux 4.4 on it. I have built the UBI file system image from scratch using OpenEmbedded core (oe-core).

$ cd    
$ cd oe-core    
$ source export    
$ bitbake core-image-minimal 
 ...

$ cd ../deploy/images/colibri-vf    
$ cp u-boot-colibri-vf-2016.11-2.7.4+gitr1b121c6.imx /media/USER/SDCARD/u-boot-nand.imx    
$ cp zImage--4.4-2.7.4-colibri-vf-20171105074336.bin /media/USER/SDCARD/zImage    
$ cp Angstrom-core-image-minimal-glibc-ipk-v2016.12-colibri-vf.rootfs.ubifs /media/USER/SDCARD/ubifs.img
... 

# run setupdate
...    
# run update
...

The problem with it is that it fails mounting the following file systems:

[    7.043046] systemd[1]: Failed to mount Temporary Directory. 
[FAILED] Failed to mount Temporary Directory.
See 'systemctl status tmp.mount' for details.
[    7.094547] systemd[1]: Dependency failed for Network Time Synchronization.
[DEPEND] Dependency failed for Network Time Synchronization.
[    7.211779] systemd[1]: systemd-timesyncd.service: Job systemd-timesyncd.service/start failed with result 'dependency'.
...
[    7.435442] systemd[1]: Failed to mount Debug File System.
[FAILED] Failed to mount Debug File System.
See 'systemctl status sys-kernel-debug.mount' for details.
[    7.504513] systemd[1]: sys-kernel-debug.mount: Unit entered failed state.
[    7.545521] systemd[1]: sys-fs-fuse-connections.mount: Mount process exited, code=exited status=1
[    7.615242] systemd[1]: Failed to mount FUSE Control File System.
[FAILED] Failed to mount FUSE Control File System.
See 'systemctl status sys-fs-fuse-connections.mount' for details.
[    7.694521] systemd[1]: sys-fs-fuse-connections.mount: Unit entered failed state.
...
[    7.815691] systemd[1]: Failed to start Remount Root and Kernel File Systems.
[FAILED] Failed to start Remount Root and Kernel File Systems.
See 'systemctl status systemd-remount-fs.service' for details.
[    7.874361] systemd[1]: systemd-remount-fs.service: Unit entered failed state.
[    7.906935] systemd[1]: systemd-remount-fs.service: Failed with result 'exit-code'.
...
[FAILED] Failed to mount /var/volatile.
See 'systemctl status var-volatile.mount' for details.
[DEPEND] Dependency failed for Bind mount volatile /var/lib.
[DEPEND] Dependency failed for Bind mount volatile /var/spool.
[DEPEND] Dependency failed for Bind mount volatile /srv.
[DEPEND] Dependency failed for Bind mount volatile /var/cache.
...
         Mounting FUSE Control File System...
[FAILED] Failed to mount FUSE Control File System.
See 'systemctl status sys-fs-fuse-connections.mount' for details.
...
Welcome to emergency mode! After logging in, type "journalctl -xb" to view
system logs, "systemctl reboot" to reboot, "systemctl default" or ^D to
try again to boot into default mode.
Press Enter for maintenance
(or press Control-D to continue):
~ #

Does anyone have any ideas?
Best regards,
Bacheh Karaji

$ cd ../deploy/images/colibri-vf    
$ cp u-boot-colibri-vf-2016.11-2.7.4+gitr1b121c6.imx /media/USER/SDCARD/u-boot-nand.imx    
$ cp zImage--4.4-2.7.4-colibri-vf-20171105074336.bin /media/USER/SDCARD/zImage    
$ cp Angstrom-core-image-minimal-glibc-ipk-v2016.12-colibri-vf.rootfs.ubifs /media/USER/SDCARD/ubifs.img

Instead of copying like this, can you first extract the tarball image generated and then use the update script in extracted tarball to correctly copy the image to SD card as required for flashing.

./update.sh -o /media/USER/SDCARD/

This is also documented in “Preparation” section here. Can you try after this with the SD card prepared this way? Please remove any earlier contents on SD card. Also did you see any errors during the flashing process after running update?

… I ran into the same problem:
The ubifs image created by bitbake seems to have some permission errors, re-packing the filesystem image with the update script creates a working ubi image.

Someone know where the problem is? Would be good if we were able to skip this additional step (esp. as this works fine for all my other boards)
Simon

The reason is that the meta-toradex-bsp-common builds mkfs.ubifs as a 32-bit binary, which messes with the way OpenEmbedded emulates a root environment (through loading libpseudo.so using LD_PRELOAD). The UBIFS generation actually logs an error: log.do_image_ubifs says:

ERROR: ld.so: object 'libpseudo.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS64): ignored.

The solution is rather easy: Just remove meta-toradex-bsp-common/recipes-devtools/mtd/mtd-utils_%.bbappend, then rebuild the image.