Partition grow error on imx6UL EVK

Hi,

I’m currently working on integrating mender into iMX 6UL EVK and I would like to know that the partition in iMX 8MQuad is compatible with iMX 6UL?

I’ve configured the local.conf as below,

MENDER_ARTIFACT_NAME = "release-1"
INHERIT += "mender-full"

MENDER_FEATURES_ENABLE_append = " mender-uboot mender-image-sd"
MENDER_FEATURES_DISABLE_append = " mender-grub mender-image-uefi"
MENDER_STORAGE_DEVICE = "/dev/mmcblk1"
MENDER_STORAGE_TOTAL_SIZE_MB = "7416"    # 8 GB memory card

The following build log is pointing out the errors in partitions,

FAILED Failed to start Mender ser…e to grow data partition size
See 'systemctl status mender-grow-data.service' for details.

DEPEND Dependency failed for /boot/efi
DEPEND Dependency failed for Local File Systems

DEPEND Dependency failed for /data
DEPEND Dependency failed for Grow File System on /data

After this the board enters into emergency mode and looping in there:

You are in emergency mode. After logging in, type "journalctl -xb" to view
system logs, "systemctl reboot" to reboot, "systemctl default" or "exit"
to boot into default mode.
Press Enter for maintenance
(or press Control-D to continue): random: crng init done

Would be interesting to see the output of above.

You can also disable this feature with:

MENDER_FEATURES_DISABLE_append = " mender-growfs-data" 

Hey @mirzak ,

Hope you’re doing fine!

The output of systemctl status mender-grow-data.service is given as follows,

~ # systemctl status mender-grow-data.service
mender-grow-data.service - Mender service to grow data partition size
Loaded: loaded (/lib/systemd/system/mender-grow-data.service; disabled; vendor preset: enabled)
Active: failed (Result: exit-code) since Thu 1970-01-01 00:00:19 UTC; 3min 27s ago
Process: 233 ExecStartPre=/bin/sh -c /bin/echo "w" | /sbin/fdisk /dev/mmcblk0 (code=exited, status=1/FAILURE)

Jan 01 00:00:19 imx6ulevk systemd[1]: Starting Mender service to grow data partition size...
Jan 01 00:00:19 imx6ulevk sh[233]: fdisk: can't open '/dev/mmcblk0'
Jan 01 00:00:19 imx6ulevk systemd[1]: mender-grow-data.service: Control process exited, code=exited, status=1/FAILURE
Jan 01 00:00:19 imx6ulevk systemd[1]: mender-grow-data.service: Failed with result 'exit-code'.
Jan 01 00:00:19 imx6ulevk systemd[1]: Failed to start Mender service to grow data partition size.
standard input

I would like to know the role of mender-grow-data service. And I’ll shortly update the build with mender-grow-data feature disabled.

Meanwhile the full log file is attached for your further reference.

Thanks in advance.

Hi @danie, the mender-grow-data.service is simply a wrapper around the systemd growfs service. We basically make sure that the filesystem that is being expanded is the data partition since that is the latest one on the disk.

It seems that the service is trying to expand mmcblk0 rather than mmcblk1. There should be no difference between the iMX 8MQuad and i.MX 6UL partition support expect that the device names may be different. You are setting MENDER_STORAGE_DEVICE to /dev/mmcblk1 so the root of the issue appears to be, why is systemd-growfs attempting to gro /dev/mmcblk0 instead.

Drew

1 Like