freebsd-nq/config
Etienne Dechamps 30930fba21 Add support for DISCARD to ZVOLs.
DISCARD (REQ_DISCARD, BLKDISCARD) is useful for thin provisioning.
It allows ZVOL clients to discard (unmap, trim) block ranges from
a ZVOL, thus optimizing disk space usage by allowing a ZVOL to
shrink instead of just grow.

We can't use zfs_space() or zfs_freesp() here, since these functions
only work on regular files, not volumes. Fortunately we can use the
low-level function dmu_free_long_range() which does exactly what we
want.

Currently the discard operation is not added to the log. That's not
a big deal since losing discard requests cannot result in data
corruption. It would however result in disk space usage higher than
it should be. Thus adding log support to zvol_discard() is probably
a good idea for a future improvement.

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
2012-02-09 16:19:38 -08:00
..
always-no-unused-but-set-variable.m4 In autoconf v2.68, AC_LANG_PROGRAM must be quoted 2011-11-28 11:16:33 -08:00
arch.am Add make rule for building Arch Linux packages 2011-12-14 19:14:23 -08:00
config.awk Add build system 2010-08-31 13:41:27 -07:00
config.guess Add initial autoconf products 2010-08-31 13:42:02 -07:00
config.sub Add initial autoconf products 2010-08-31 13:42:02 -07:00
deb.am Avoid 'rpm -q' bug for 'make pkg' 2011-07-01 12:39:25 -07:00
depcomp Add initial autoconf products 2010-08-31 13:42:02 -07:00
install-sh Add initial autoconf products 2010-08-31 13:42:02 -07:00
kernel-bdev-block-device-operations.m4 Fix configure tests to play nice with GCC 4.6 2011-11-29 16:14:25 -08:00
kernel-bdev-logical-size.m4 Fix configure tests to play nice with GCC 4.6 2011-11-29 16:14:25 -08:00
kernel-bdi-setup-and-register.m4 Simplify BDI integration 2011-11-08 10:19:03 -08:00
kernel-bdi.m4 Add backing_device_info per-filesystem 2011-08-04 13:37:38 -07:00
kernel-bio-empty-barrier.m4 Add build system 2010-08-31 13:41:27 -07:00
kernel-bio-end-io-t-args.m4 Fix gcc configure warnings 2011-04-19 10:10:47 -07:00
kernel-bio-failfast.m4 Fix gcc configure warnings 2011-04-19 10:10:47 -07:00
kernel-bio-rw-syncio.m4 Fix gcc configure warnings 2011-04-19 10:10:47 -07:00
kernel-blk-end-request.m4 Fix configure tests to play nice with GCC 4.6 2011-11-29 16:14:25 -08:00
kernel-blk-fetch-request.m4 Fix configure tests to play nice with GCC 4.6 2011-11-29 16:14:25 -08:00
kernel-blk-queue-discard.m4 Add support for DISCARD to ZVOLs. 2012-02-09 16:19:38 -08:00
kernel-blk-queue-flush.m4 Fix synchronicity for ZVOLs. 2012-02-07 16:23:06 -08:00
kernel-blk-queue-io-opt.m4 Improve ZVOL queue behavior. 2012-02-07 16:23:06 -08:00
kernel-blk-queue-max-hw-sectors.m4 Improve ZVOL queue behavior. 2012-02-07 16:23:06 -08:00
kernel-blk-queue-max-segments.m4 Improve ZVOL queue behavior. 2012-02-07 16:23:06 -08:00
kernel-blk-queue-nonrot.m4 Improve ZVOL queue behavior. 2012-02-07 16:23:06 -08:00
kernel-blk-queue-physical-block-size.m4 Improve ZVOL queue behavior. 2012-02-07 16:23:06 -08:00
kernel-blk-requeue-request.m4 Fix configure tests to play nice with GCC 4.6 2011-11-29 16:14:25 -08:00
kernel-blk-rq-bytes.m4 Fix configure tests to play nice with GCC 4.6 2011-11-29 16:14:25 -08:00
kernel-blk-rq-pos.m4 Fix configure tests to play nice with GCC 4.6 2011-11-29 16:14:25 -08:00
kernel-blk-rq-sectors.m4 Fix configure tests to play nice with GCC 4.6 2011-11-29 16:14:25 -08:00
kernel-blkdev-get-by-path.m4 Linux 2.6.38 compat, blkdev_get_by_path() 2011-02-23 12:29:38 -08:00
kernel-check-disk-size-change.m4 Fix 'zfs set volsize=N pool/dataset' 2011-05-02 08:54:40 -07:00
kernel-d-obtain-alias.m4 Implemented NFS export_operations. 2011-04-29 12:36:13 -07:00
kernel-evict-inode.m4 Improve HAVE_EVICT_INODE check 2011-08-08 16:42:09 -07:00
kernel-fallocate.m4 Support the fallocate() file operation. 2012-02-09 16:19:32 -08:00
kernel-fmode-t.m4 Fix gcc configure warnings 2011-04-19 10:10:47 -07:00
kernel-fsync.m4 Linux 3.1 compat, fops->fsync() 2011-11-10 10:03:08 -08:00
kernel-get-disk-ro.m4 Fix configure tests to play nice with GCC 4.6 2011-11-29 16:14:25 -08:00
kernel-insert-inode-locked.m4 Linux 2.6.28 compat, insert_inode_locked() 2011-03-22 12:15:54 -07:00
kernel-invalidate-bdev-args.m4 Fix gcc configure warnings 2011-04-19 10:10:47 -07:00
kernel-kobj-name-len.m4 Fix gcc configure warnings 2011-04-19 10:10:47 -07:00
kernel-mount-nodev.m4 Linux compat 2.6.39: mount_nodev() 2011-07-01 13:36:39 -07:00
kernel-open-bdev-exclusive.m4 Add build system 2010-08-31 13:41:27 -07:00
kernel-rq-for-each_segment.m4 Fix configure tests to play nice with GCC 4.6 2011-11-29 16:14:25 -08:00
kernel-rq-is_sync.m4 Fix configure tests to play nice with GCC 4.6 2011-11-29 16:14:25 -08:00
kernel-security-inode-init.m4 Linux 3.2 compat, security_inode_init_security() 2012-01-12 15:06:39 -08:00
kernel-set-nlink.m4 Linux 3.2 compat: set_nlink() 2011-12-16 20:02:52 -08:00
kernel-show-options.m4 Linux 3.3 compat, sops->show_options() 2012-02-03 10:02:01 -08:00
kernel-shrink.m4 Linux 3.1 compat, super_block->s_shrink 2012-01-11 11:46:02 -08:00
kernel-truncate-setsize.m4 Tear down and flush the mmap region 2011-06-27 09:59:19 -07:00
kernel-xattr-handler.m4 Fix gcc configure warnings 2011-04-19 10:10:47 -07:00
kernel.m4 Add support for DISCARD to ZVOLs. 2012-02-09 16:19:38 -08:00
ltmain.sh Refresh autogen.sh products 2010-12-07 15:33:12 -08:00
missing Add initial autoconf products 2010-08-31 13:42:02 -07:00
rpm.am Add build system 2010-08-31 13:41:27 -07:00
Rules.am Check for -Wno-unused-but-set-variable gcc support 2011-06-14 14:43:22 -07:00
suppressed-warnings.txt Suppress packaging warning 2011-11-08 11:32:04 -08:00
tgz.am Avoid 'rpm -q' bug for 'make pkg' 2011-07-01 12:39:25 -07:00
user-arch.m4 Add build system 2010-08-31 13:41:27 -07:00
user-frame-larger-than.m4 In autoconf v2.68, AC_LANG_PROGRAM must be quoted 2011-11-28 11:16:33 -08:00
user-ioctl.m4 Add build system 2010-08-31 13:41:27 -07:00
user-libblkid.m4 In autoconf v2.68, AC_LANG_PROGRAM must be quoted 2011-11-28 11:16:33 -08:00
user-libuuid.m4 Add build system 2010-08-31 13:41:27 -07:00
user-nptl_guard_within_stack.m4 In autoconf v2.68, AC_LANG_PROGRAM must be quoted 2011-11-28 11:16:33 -08:00
user-selinux.m4 Autoconf selinux support 2011-01-28 12:45:19 -08:00
user-udev.m4 Move udev rules from /etc/udev to /lib/udev 2011-08-08 16:21:10 -07:00
user-zlib.m4 Add build system 2010-08-31 13:41:27 -07:00
user.m4 Move udev rules from /etc/udev to /lib/udev 2011-08-08 16:21:10 -07:00
zfs-build.m4 Run ZFS_AC_PACMAN only if $VENDOR is "arch" 2012-01-13 09:03:11 -08:00
zfs-meta.m4 Add build system 2010-08-31 13:41:27 -07:00