mirror_zfs/lib/libspl/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
..
dktp Set zvol discard_granularity to the volblocksize. 2012-08-07 14:55:31 -07:00
sysevent Set zvol discard_granularity to the volblocksize. 2012-08-07 14:55:31 -07:00
acl_impl.h Add linux libspl support 2010-08-31 13:41:59 -07:00
acl.h Add linux libspl support 2010-08-31 13:41:59 -07:00
bitmap.h Add linux libspl support 2010-08-31 13:41:59 -07:00
byteorder.h Add linux libspl support 2010-08-31 13:41:59 -07:00
callb.h Add linux libspl support 2010-08-31 13:41:59 -07:00
cmn_err.h Add linux libspl support 2010-08-31 13:41:59 -07:00
compress.h Add linux libspl support 2010-08-31 13:41:59 -07:00
cred.h Add linux libspl support 2010-08-31 13:41:59 -07:00
debug.h Add linux libspl support 2010-08-31 13:41:59 -07:00
dkio.h Fix for access beyond end of device error 2010-11-10 21:29:07 -08:00
dklabel.h Fix for access beyond end of device error 2010-11-10 21:29:07 -08:00
feature_tests.h Add linux libspl support 2010-08-31 13:41:59 -07:00
file.h Add linux libspl support 2010-08-31 13:41:59 -07:00
frame.h Add linux libspl support 2010-08-31 13:41:59 -07:00
int_limits.h Add linux libspl support 2010-08-31 13:41:59 -07:00
int_types.h Add linux libspl support 2010-08-31 13:41:59 -07:00
inttypes.h Add linux libspl support 2010-08-31 13:41:59 -07:00
isa_defs.h Define the needed ISA types for ARM 2012-05-03 11:18:54 -07:00
kmem.h Add linux libspl support 2010-08-31 13:41:59 -07:00
kstat.h Add linux libspl support 2010-08-31 13:41:59 -07:00
list_impl.h Add linux libspl support 2010-08-31 13:41:59 -07:00
list.h Add linux libspl support 2010-08-31 13:41:59 -07:00
machelf.h Add linux libspl support 2010-08-31 13:41:59 -07:00
Makefile.am Fix block device-related issues in zdb. 2010-12-14 09:52:46 -08:00
Makefile.in Set zvol discard_granularity to the volblocksize. 2012-08-07 14:55:31 -07:00
mhd.h Add linux libspl support 2010-08-31 13:41:59 -07:00
mkdev.h Add linux libspl support 2010-08-31 13:41:59 -07:00
mntent.h Linux compat 2.6.39: mount_nodev() 2011-07-01 13:36:39 -07:00
mnttab.h Add 'zfs mount' support 2011-02-04 16:11:58 -08:00
mount.h Add overlay(-O) mount option support 2012-01-12 15:49:38 -08:00
note.h Add linux libspl support 2010-08-31 13:41:59 -07:00
param.h Correct MAXUID 2011-04-29 14:03:12 -07:00
priv.h Add linux libspl support 2010-08-31 13:41:59 -07:00
processor.h Add linux libspl support 2010-08-31 13:41:59 -07:00
sdt.h Add linux libspl support 2010-08-31 13:41:59 -07:00
stack.h Add linux libspl support 2010-08-31 13:41:59 -07:00
stat.h Fix block device-related issues in zdb. 2010-12-14 09:52:46 -08:00
stropts.h Add linux libspl support 2010-08-31 13:41:59 -07:00
sunddi.h Add linux libspl support 2010-08-31 13:41:59 -07:00
sysevent.h Add linux libspl support 2010-08-31 13:41:59 -07:00
sysmacros.h Add linux libspl support 2010-08-31 13:41:59 -07:00
systeminfo.h Add linux libspl support 2010-08-31 13:41:59 -07:00
systm.h Add linux libspl support 2010-08-31 13:41:59 -07:00
time.h Add linux libspl support 2010-08-31 13:41:59 -07:00
types32.h Add linux libspl support 2010-08-31 13:41:59 -07:00
types.h Add linux libspl support 2010-08-31 13:41:59 -07:00
tzfile.h Add linux libspl support 2010-08-31 13:41:59 -07:00
uio.h Add linux libspl support 2010-08-31 13:41:59 -07:00
utsname.h Add linux libspl support 2010-08-31 13:41:59 -07:00
va_list.h Add linux libspl support 2010-08-31 13:41:59 -07:00
varargs.h Add linux libspl support 2010-08-31 13:41:59 -07:00
vnode.h Add linux libspl support 2010-08-31 13:41:59 -07:00
vtoc.h Fix for access beyond end of device error 2010-11-10 21:29:07 -08:00
zone.h Add linux libspl support 2010-08-31 13:41:59 -07:00