numam-spdk/module
Jim Harris 9b420e8c00 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>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/7723 (master)

(cherry picked from 3faf457f56
with minor modifications)

Change-Id: I79f0673774b621a9ffcc46891728cc7719e34cdb
Signed-off-by: Karol Latecki <karol.latecki@intel.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/8879
Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
Reviewed-by: Ben Walker <benjamin.walker@intel.com>
Tested-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
2021-07-26 08:41:37 +00:00
..
accel ioat: remove whitelist/blacklist functionality 2020-12-03 09:41:07 +00:00
bdev bdev/nvme: do not use DSM to emulate write zeroes 2021-07-26 08:41:37 +00:00
blob bdev: extend interface with get module ctx 2020-12-01 10:20:56 +00:00
blobfs module: Use PRId64 for portability 2020-11-19 09:59:01 +00:00
env_dpdk log: remove internal log.h header 2020-10-15 08:23:39 +00:00
event nbd: Use async manner to stop nbd device. 2020-12-28 14:05:15 +00:00
sock sock: create spdk_sock_prep_reqs function. 2020-11-27 09:22:30 +00:00
Makefile build: generate pkg-config files for SPDK 2021-01-21 09:46:32 +00:00