shrinking ubifs?

Jon Ringle jon at ringle.org
Fri Jan 22 14:21:43 EST 2010


On Sun, Jan 17, 2010 at 5:40 AM, Artem Bityutskiy <dedekind1 at gmail.com> wrote:
> On Thu, 2010-01-14 at 17:15 -0500, Jon Ringle wrote:
>> On ubi0, I have 3 volumes:
>> ubi0_0 kernel (static volume)
>> ubi0_1 squashfs (static volume)
>> ubi0_2 ubifs (dynamic volume)
>>
>> When I create the volumes, the static volumes are created first and
>> then the ubifs volume is created with whatever LEBs are left over. I
>> am using the squashfs and ubifs in a aufs2 union fs. When I need to
>> reflash either of the static volumes for an upgrade, and the new
>> images don't fit the space available in the LEBs reserved in the
>> corresponding static volume, I remove the ubifs volume to create space
>> and then recreate the ubifs volume again with what is remaining. This
>> is sub-optimal as this means that and data on the ubifs is now lost.
>
> Yes, this is not optimal. However, ubifs shrinking is not implemented.
> One could UBIFS ioctl to shring the FS, though, it should not be
> extremely difficult. It is about garbage-collecting the last LEBs to
> somewhere else, and amending the master block.
>
>> Is there a way to shrink a UBIFS if there are unused LEBs in the UBIFS?
>
> Not at the moment, this would need some development.

How about the opposite. If the static volumes became smaller freeing
up some LEBs. Can the UBIFS be expanded to make use of the freed LEBs?

Jon



More information about the linux-mtd mailing list