Bug 199407

Summary: mkuzip(8) verbosity change request to help with makefs(8) filesystems
Product: Base System Reporter: Keith White <ksw.childe>
Component: binAssignee: freebsd-bugs (Nobody) <bugs>
Status: New ---    
Severity: Affects Only Me CC: emaste, michaelcollins5827
Priority: --- Keywords: patch
Version: CURRENT   
Hardware: Any   
OS: Any   
Description Flags
requested enhancements to mkuzip and makefs
add a mkulzma(8) patch none

Description Keith White 2015-04-13 01:43:06 UTC
Created attachment 155531 [details]
requested enhancements to mkuzip and makefs

After an Easter weekend's head scratching over a frustratingly
intermittent problem...

mkuzip's default verbosity level hides a message that might help
end users (me) when disk /dev/ufs/... labels on mkuzip filesystems
"mysteriously" don't appear at boot.  mkuzip provides useful messages
when "-v" is added, but they're lost amongst the noise.  I propose
adding verbosity levels: "-v" "-vv"

Patch for mkuzip(8) attached.  The mkulzma(8) derivative could be
modified similarly.

sys/geom/label/g_label_ufs.c expects well behaved filesystem sizes.
Unfortunately, mkuzip(8) may need to add some padding when compressing
a filesystem, and the provider size will then no longer match the
superblock.  Particularly for a makefs(8) filesystem.

One workaround for "file size is not multiple of XXXX, padding data"
would be for the user to specify a bsize the same as the intended
mkuzip blocksize.  e.g.:

        $ ZBLOCKSIZE=32768
        $ FSIZE=`expr $ZBLOCKSIZE / 8`
        $ LABEL="ALabel"
        $ makefs -o label="$LABEL" -o bsize=$ZBLOCKSIZE -o fsize=$FSIZE ...
        $ mkuzip -v -s $ZBLOCKSIZE ...

A patch (attached) for makefs(8) that pads the resulting filesystem
to fit on a mkuzip cluster_size boundary, might be useful as well.

        $ ZBLOCKSIZE=32768
        $ LABEL="ALabel"
        $ makefs -o label="$LABEL" -c $ZBLOCKSIZE ...
        $ mkuzip -v -s $ZBLOCKSIZE

Comment 1 Keith White 2015-04-16 01:44:48 UTC
Created attachment 155637 [details]
add a mkulzma(8) patch