[Bug 203707] [patch] make makefs(8) more compatible with geom_uncompress

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Sun Oct 11 19:40:40 UTC 2015


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=203707

            Bug ID: 203707
           Summary: [patch] make makefs(8) more compatible with
                    geom_uncompress
           Product: Base System
           Version: 10.2-STABLE
          Hardware: Any
                OS: Any
            Status: New
          Keywords: patch
          Severity: Affects Some People
          Priority: ---
         Component: bin
          Assignee: freebsd-bugs at FreeBSD.org
          Reporter: eugen at grosbein.net
          Keywords: patch

Created attachment 161924
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=161924&action=edit
new option -r roundup

While trying to run FreeBSD/mips on some device having very small flash media,
one is forced to compress file system with mkulzma(8) utility. It is desirable
to specify small UFS block/fragment sizes like 4096/512 bytes for makefs(8) and
big compression block size like 65535 bytes to mkulzma at the same time. Then
one obtains very good comression ratios (like 75% and more) but faces the
following problem.

geom_uncompress kernel module reports GEOM provider size rounded up to its
compression block size. Generally, this changes original media size and now it
fails to match the size of embedded UFS file system that leads to other
problems, f.e. geom_label kernel module does not like this and skips the file
system while tasting the GEOM and looking for UFS label.

This makes it impossible to refer to the file system using known UFS label
instead of something like /dev/map/rootfs.uncompress.

The following patch introduces new command line option "-r roundup" for makefs
that makes it round up the image to specified block size. Hence,
geom_uncompress does not change GEOM media size for images rounded that way and
geom_label accepts such GEOMs just fine.

With the patch applied, one can use following commands:

makefs -t ffs -r 65536 -o bsize=4096,fsize=512,label=flash optimization=space
fs.img fs
mkulzma -s 65536 -o fs.img.ulzma fs.img

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the freebsd-bugs mailing list