hammer2 - Cleanup and bugfix pass to hammer2 setcomp paths
authorMatthew Dillon <dillon@apollo.backplane.com>
Mon, 23 Sep 2013 22:18:35 +0000 (15:18 -0700)
committerMatthew Dillon <dillon@apollo.backplane.com>
Mon, 23 Sep 2013 23:56:34 +0000 (16:56 -0700)
commitf481450ffccdbf50f8c9604067c25eb642a0c562
tree87f301cc572ea3773037281f26c9aea36a419385
parentf02fdd053253053376cb44b8aac46cb246dd0597
hammer2 - Cleanup and bugfix pass to hammer2 setcomp paths

* HAMMER2 will attempt to use LZ4 compression by default now.

* hammer2 setcomp now accepts text labels for the compression type and
  accepts a compression level of 0 to set the default, which is simply
  passed through to the VFS.

* Specify force and recursion flags in hammer2's main options rather than
  after the setcomp command.

* Allow a list of paths to be specified rather than just one.

* The HAMMER2IOC_INODE_SET ioctl now only sets field elements which can
  actually be modified by userland i.e. only the comp_algo field.  It
  used to set everything, including the indirect block table.

* Do not modify the hammer2_inode if the compression method is not being
  changed.

* Change the zero-block testing logic a little, with related code cleanups.
sbin/hammer2/cmd_setcomp.c
sbin/hammer2/cmd_stat.c
sbin/hammer2/hammer2.h
sbin/hammer2/main.c
sbin/newfs_hammer2/newfs_hammer2.c
sys/vfs/hammer2/hammer2_disk.h
sys/vfs/hammer2/hammer2_ioctl.c
sys/vfs/hammer2/hammer2_vfsops.c