-
Notifications
You must be signed in to change notification settings - Fork 22
Description
Hello!
We need to increase the size of the yocto partitions. After we did this we are no longer able to update the image using UpdateHub. Without the storage increase, we're neither but probably because the partition is really too low to download our custom packages and still be able to download and extract the uhupkg.
We use the current kirkstone version for Yocto.
Do you have an idea what could be the issue and how we're able to increase the size of devtmpfs or how to change the partition that UpdateHub uses to install the update?
Thank you so much for any help. Feel free to ask if you need anything else related to our configuration to analyze the issue.
More Context
We just made it to run UpdateHub with Yocto on our Raspberry PIs and everything looked well in the first place.
We have some custom code in our image that downloads + starts some Docker containers which of course consumes some storage. Because of that, we had to increase the storage with the use of some Yocto variables. After some trial + error, we use these parameters:
# Set the rootfs size to 10GiB * 1.3 = 13GiB.
# IMAGE_OVERHEAD_FACTOR is set to 1.3 (which is the (buggy), non-overridable default value), so that in case the value gets changed, we still end up with the same image size.
# Since we need to multiply by 2 (~26GiB total) and add some MiB for Bootloader and padding, we still have ~1.6GiB left on our 32GB (29.7GiB) SD-Cards
IMAGE_ROOTFS_SIZE:forcevariable = "10485760"
IMAGE_ROOTFS_MAXSIZE:forcevariable = "10485760"
IMAGE_ROOTFS_EXTRA_SPACE:forcevariable = "0"
IMAGE_OVERHEAD_FACTOR:forcevariable = "1.3"
This is working fine so far, although this leads to a larger image because the empty bits & bytes are included in the image. The download size for the gz file is still below 300MB.
Issue on update
The image is working fine and we can see that the storage is increased. But when we try to update the device it seems like updatehub only uses devtmpfs to download and extract the image which of course is too small:
