mirror_zfs/include/sys
Etienne Dechamps ee5fd0bb80 Set zvol discard_granularity to the volblocksize.
Currently, zvols have a discard granularity set to 0, which suggests to
the upper layer that discard requests of arbirarily small size and
alignment can be made efficiently.

In practice however, ZFS does not handle unaligned discard requests
efficiently: indeed, it is unable to free a part of a block. It will
write zeros to the specified range instead, which is both useless and
inefficient (see dnode_free_range).

With this patch, zvol block devices expose volblocksize as their discard
granularity, so the upper layer is aware that it's not supposed to send
discard requests smaller than volblocksize.

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Closes #862
2012-08-07 14:55:31 -07:00
..
fm Set zvol discard_granularity to the volblocksize. 2012-08-07 14:55:31 -07:00
fs Set zvol discard_granularity to the volblocksize. 2012-08-07 14:55:31 -07:00
arc.h Linux 3.1 compat, super_block->s_shrink 2012-01-11 11:46:02 -08:00
avl_impl.h Support custom build directories and move includes 2010-09-08 12:38:56 -07:00
avl.h Support custom build directories and move includes 2010-09-08 12:38:56 -07:00
bplist.h Support custom build directories and move includes 2010-09-08 12:38:56 -07:00
bpobj.h Support custom build directories and move includes 2010-09-08 12:38:56 -07:00
dbuf.h Support custom build directories and move includes 2010-09-08 12:38:56 -07:00
ddt.h Support custom build directories and move includes 2010-09-08 12:38:56 -07:00
dmu_impl.h Support custom build directories and move includes 2010-09-08 12:38:56 -07:00
dmu_objset.h Support custom build directories and move includes 2010-09-08 12:38:56 -07:00
dmu_traverse.h Support custom build directories and move includes 2010-09-08 12:38:56 -07:00
dmu_tx.h Add --enable-debug-dmu-tx configure option 2012-03-23 12:25:17 -07:00
dmu_zfetch.h Add missing ZFS tunables 2011-05-04 10:02:37 -07:00
dmu.h Illumos #1644, #1645, #1646, #1647, #1708 2012-07-31 09:25:30 -07:00
dnode.h Support custom build directories and move includes 2010-09-08 12:38:56 -07:00
dsl_dataset.h Illumos #1644, #1645, #1646, #1647, #1708 2012-07-31 09:25:30 -07:00
dsl_deadlist.h Support custom build directories and move includes 2010-09-08 12:38:56 -07:00
dsl_deleg.h Illumos #1644, #1645, #1646, #1647, #1708 2012-07-31 09:25:30 -07:00
dsl_dir.h Support custom build directories and move includes 2010-09-08 12:38:56 -07:00
dsl_pool.h Prototype/structure update for Linux 2011-02-10 09:27:21 -08:00
dsl_prop.h Support custom build directories and move includes 2010-09-08 12:38:56 -07:00
dsl_scan.h Support custom build directories and move includes 2010-09-08 12:38:56 -07:00
dsl_synctask.h Support custom build directories and move includes 2010-09-08 12:38:56 -07:00
efi_partition.h Move partition scanning from userspace to module. 2012-07-17 09:17:31 -07:00
Makefile.am Add .zfs control directory 2012-03-22 13:03:47 -07:00
Makefile.in Set zvol discard_granularity to the volblocksize. 2012-08-07 14:55:31 -07:00
metaslab_impl.h Illumos #1051: zfs should handle imbalanced luns 2011-08-01 12:09:11 -07:00
metaslab.h Illumos #1051: zfs should handle imbalanced luns 2011-08-01 12:09:11 -07:00
nvpair_impl.h Support custom build directories and move includes 2010-09-08 12:38:56 -07:00
nvpair.h Support custom build directories and move includes 2010-09-08 12:38:56 -07:00
refcount.h Support custom build directories and move includes 2010-09-08 12:38:56 -07:00
rrwlock.h Support custom build directories and move includes 2010-09-08 12:38:56 -07:00
sa_impl.h Support custom build directories and move includes 2010-09-08 12:38:56 -07:00
sa.h Add sa_spill_rele() interface 2012-03-07 16:28:00 -08:00
spa_boot.h Support custom build directories and move includes 2010-09-08 12:38:56 -07:00
spa_impl.h Illumos #1748: desire support for reguid in zfs 2012-07-11 13:08:56 -07:00
spa.h Illumos #1748: desire support for reguid in zfs 2012-07-11 13:08:56 -07:00
space_map.h Support custom build directories and move includes 2010-09-08 12:38:56 -07:00
txg_impl.h Support custom build directories and move includes 2010-09-08 12:38:56 -07:00
txg.h Add API to wait for pending commit callbacks 2011-02-16 11:20:06 -08:00
u8_textprep_data.h Support custom build directories and move includes 2010-09-08 12:38:56 -07:00
u8_textprep.h Support custom build directories and move includes 2010-09-08 12:38:56 -07:00
uberblock_impl.h Support custom build directories and move includes 2010-09-08 12:38:56 -07:00
uberblock.h Support custom build directories and move includes 2010-09-08 12:38:56 -07:00
uio_impl.h Add basic uio support 2011-02-10 09:21:43 -08:00
unique.h Support custom build directories and move includes 2010-09-08 12:38:56 -07:00
uuid.h Support custom build directories and move includes 2010-09-08 12:38:56 -07:00
vdev_disk.h Linux 2.6.x compat, blkdev_compat.h 2011-02-23 12:29:38 -08:00
vdev_file.h Support custom build directories and move includes 2010-09-08 12:38:56 -07:00
vdev_impl.h Illumos #1951: leaking a vdev when removing an l2cache device 2012-04-11 11:32:06 -07:00
vdev.h Illumos #1949, #1953 2012-07-11 13:33:31 -07:00
xvattr.h Add xvattr support 2011-03-02 11:43:50 -08:00
zap_impl.h Support custom build directories and move includes 2010-09-08 12:38:56 -07:00
zap_leaf.h Support custom build directories and move includes 2010-09-08 12:38:56 -07:00
zap.h Export symbols for the full ZAP API 2011-09-27 16:12:36 -07:00
zfs_acl.h Fix build failures on PaX/GRSecurity patched kernels 2012-07-17 09:22:43 -07:00
zfs_context.h Cleanup ZFS debug infrastructure 2012-02-02 11:24:30 -08:00
zfs_ctldir.h Use ULL suffix in constants 2012-07-10 11:31:55 -07:00
zfs_debug.h Cleanly support debug packages 2012-02-27 14:08:17 -08:00
zfs_dir.h Prototype/structure update for Linux 2011-02-10 09:27:21 -08:00
zfs_fuid.h Prototype/structure update for Linux 2011-02-10 09:27:21 -08:00
zfs_ioctl.h Speed up 'zfs list -t snapshot -o name -s name' 2012-06-14 09:49:04 -07:00
zfs_onexit.h Support custom build directories and move includes 2010-09-08 12:38:56 -07:00
zfs_rlock.h Range lock performance improvements 2011-03-08 12:44:06 -08:00
zfs_sa.h Implement SA based xattrs 2011-11-28 15:45:51 -08:00
zfs_stat.h Support custom build directories and move includes 2010-09-08 12:38:56 -07:00
zfs_vfsops.h Add .zfs control directory 2012-03-22 13:03:47 -07:00
zfs_vnops.h Cleanup mmap(2) writes 2011-08-02 10:34:55 -07:00
zfs_znode.h Add .zfs control directory 2012-03-22 13:03:47 -07:00
zil_impl.h Support custom build directories and move includes 2010-09-08 12:38:56 -07:00
zil.h Add ZIL statistics. 2012-06-29 09:56:51 -07:00
zio_checksum.h Support custom build directories and move includes 2010-09-08 12:38:56 -07:00
zio_compress.h Support custom build directories and move includes 2010-09-08 12:38:56 -07:00
zio_impl.h Support custom build directories and move includes 2010-09-08 12:38:56 -07:00
zio.h Illumos #734: Use taskq_dispatch_ent() interface 2011-12-14 09:19:30 -08:00
zpl.h Linux 3.3 compat, iops->create()/mkdir()/mknod() 2012-04-30 12:52:38 -07:00
zrlock.h Support custom build directories and move includes 2010-09-08 12:38:56 -07:00
zvol.h Linux 2.6.x compat, blkdev_compat.h 2011-02-23 12:29:38 -08:00