numam-spdk/module/bdev
Jim Harris 3faf457f56 bdev/nvme: do not use DSM to emulate write zeroes
We cannot rely on DSM/DEALLOCATE as a write zeroes
alternative, even if DLFEAT reports that deallocated
blocks will be read as all zeroes.  DEALLOCATE is
advisory, meaning that blocks may not actually be
deallocated.  In cases where they are not deallocated,
they will not be read back later as zeroes.

QEMU 6.0 started reporting DLFEAT as returning zeroes
for deallocated blocks but for some of our write
zeroes tests, blocks aren't actually deallocated.

We may be able to add quirks in the future if we know
that a controller reliably deallocates blocks, but
for now we need to revert this completely.

Note that since bdev/nvme module now does not support
write zeroes in any cases, we need to disable the
write zeroes call in the unit tests.

Fixes issue #1932.

Signed-off-by: Jim Harris <james.r.harris@intel.com>
Change-Id: I79f0673774b621a9ffcc46891728cc7719e34cdb
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/7723
Community-CI: Broadcom CI
Community-CI: Mellanox Build Bot
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Changpeng Liu <changpeng.liu@intel.com>
Reviewed-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com>
2021-05-07 11:32:23 +00:00
..
aio bdev_aio: add set interrupt mode to poller 2021-04-23 18:09:54 +00:00
compress so_ver: increase all major versions 2021-02-05 14:43:47 +00:00
crypto so_ver: increase all major versions 2021-02-05 14:43:47 +00:00
delay so_ver: increase all major versions 2021-02-05 14:43:47 +00:00
error bdev/error: properly initialize value of num for inject_error RPC 2021-04-15 21:41:05 +00:00
ftl so_ver: increase all major versions 2021-02-05 14:43:47 +00:00
gpt lib/bdev: move to spdk_bdev_part_base_construct_ext() 2021-03-09 08:54:53 +00:00
iscsi nvmf: Support physical block size if exposed by bdev 2021-05-06 07:14:40 +00:00
lvol so_ver: increase all major versions 2021-02-05 14:43:47 +00:00
malloc bdev/malloc: check block size when creating a new block device 2021-03-01 12:07:09 +00:00
null so_ver: increase all major versions 2021-02-05 14:43:47 +00:00
nvme bdev/nvme: do not use DSM to emulate write zeroes 2021-05-07 11:32:23 +00:00
ocf ocf/rpc: Add bdev_ocf_set_cache_mode method 2021-03-18 14:39:09 +00:00
passthru so_ver: increase all major versions 2021-02-05 14:43:47 +00:00
pmem so_ver: increase all major versions 2021-02-05 14:43:47 +00:00
raid bdev/raid: remove deprecated parameter strip_size 2021-03-29 07:41:09 +00:00
rbd bdev/rbd: Refactor the parameters in bdev_rbd_init. 2021-04-22 15:42:53 +00:00
split splite/vbdev_split: Free base part bdev on the error path. 2021-03-02 08:02:58 +00:00
uring so_ver: increase all major versions 2021-02-05 14:43:47 +00:00
virtio virtio-blk: add hotplug rpc 2021-04-16 19:21:13 +00:00
zone_block so_ver: increase all major versions 2021-02-05 14:43:47 +00:00
Makefile bdev: move bdev_rpc library contents 2020-09-25 11:43:42 +00:00