I’ve recently left the dark ages and entered the world of UBI and UBIFS – it’s generally been a pleasant experience. However whilst getting to grips with it, I occasionally recieved the following error upon mount:
# mount -t ubifs /dev/ubi0_1 /tmp/ UBIFS error (pid 1096): validate_sb: bad superblock, error 8 mount: mounting /dev/ubi0_1 on /tmp/ failed: Invalid argument
The usual approach of googling my way out of problems didn’t give me much luck so I did some exploring. The cause of this failure, despite having been successful in flashing the UBIFS image – was that the UBI volume I was using was too small. The solution is therefore to increase the size of the volume.
Unfortunately though, my current project required me to create a UBI volume of only the minimum size to support a given UBIFS image – yet it would seem that determining the minimum size of a UBI volume for a given UBIFS image was not trivial. I had to do some more digging to find the answer…