shrinking ubifs?

Artem Bityutskiy dedekind1 at gmail.com
Wed Jan 27 11:25:00 EST 2010


On Fri, 2010-01-22 at 14:21 -0500, Jon Ringle wrote:
> 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?

That works automatically. UBIFS expands automatically, but up to the
size which you specified with the '-c' mkfs.ubifs option.

http://www.linux-mtd.infradead.org/faq/ubifs.html#L_max_leb_cnt

-- 
Best Regards,
Artem Bityutskiy (Артём Битюцкий)




More information about the linux-mtd mailing list