Spdk/lib/bdev
Dariusz Stojaczyk 356a9bc7d3 bdev_virtio: support UNMAP requests > 4GB
With current SPDK_BDEV_LARGE_BUF_MAX_SIZE
set to 65536, we can allocate at most
4095 16-byte SCSI UNMAP block descriptors.
A single descriptor can UNMAP up to 4GB.
That gives us a hard limit of ~16 terabytes
of data that can be unmmapped by a single
request.

The same limit is also enforced by the
SCSI standard, as the entire UNMAP request
length must be smaller than 65536.

Change-Id: I4d91fa60fd28133a058b87e88a1a14ce662a659a
Signed-off-by: Dariusz Stojaczyk <dariuszx.stojaczyk@intel.com>
Reviewed-on: https://review.gerrithub.io/381447
Tested-by: SPDK Automated Test System <sys_sgsw@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Reviewed-by: Daniel Verkamp <daniel.verkamp@intel.com>
2017-10-09 12:29:28 -04:00
..
aio bdev: add ENOMEM handling 2017-10-01 21:57:00 -04:00
error bdev: add callback to free part_base 2017-10-01 21:57:00 -04:00
gpt bdev: add callback to free part_base 2017-10-01 21:57:00 -04:00
lvol lvol: disable spdk_lvol_resize 2017-10-05 16:51:20 -04:00
malloc bdev: add ENOMEM handling 2017-10-01 21:57:00 -04:00
null bdev/null: add Write Zeroes support 2017-09-25 16:31:49 -04:00
nvme bdev: add ENOMEM handling 2017-10-01 21:57:00 -04:00
pmem bdev_pmem: initial implementation of persistent memory bdev 2017-09-29 14:04:32 -04:00
rbd bdev: allow allocating custom-length buffers for bdev_io 2017-09-28 17:08:34 -04:00
rpc bdev: remove bdev_opened_for_write restriction 2017-09-20 14:43:32 -04:00
split bdev: add callback to free part_base 2017-10-01 21:57:00 -04:00
virtio bdev_virtio: support UNMAP requests > 4GB 2017-10-09 12:29:28 -04:00
bdev.c bdev: use spdk_vbdev_unregister when unregistering partitions 2017-10-01 21:57:00 -04:00
Makefile bdev_pmem: initial implementation of persistent memory bdev 2017-09-29 14:04:32 -04:00
scsi_nvme.c nvme_spec: remove SGL Sub Type Invalid status code 2017-09-22 17:11:53 -04:00
vtune.c bdev: #include VTune file to control warnings 2017-06-08 12:44:25 -04:00