numam-spdk/examples
Niklas Cassel 3edf255572 bdev/fio_plugin: spdk_fio_get_zoned_model() is too permissive
The .get_zoned_model() callback is supposed to reject unsupported
file types. Right now, we do not reject unsupported file types.

For our specific ioengine, this isn't strictly needed, since our
ioengine unconditionally sets f->filetype to FIO_TYPE_BLOCK, and if
it fails to find a SPDK bdev that matches the --filename, it will
return an error that it couldn't find the bdev matching filename.

However, all .get_zoned_model() callbacks in the fio in-tree ioengines
have a check that a given file has a file type that is supported by
the ioengine itself. This is needed since they do not set f->filetype
themselves, but instead let fio generic code initialize f->filetype.

Since we reuse --filename to mean something in the SPDK namespace, we
are force to initialize filetype manually. So that is the only reason
why we know that the file type will be FIO_TYPE_BLOCK. Anyway, let's
try to keep our code as similar to the in-tree ioengines as possible.

The SPDK nvme ioengine already has this check, so adding it in the
SPDK bdev ioengine makes our ioengines more consistent as well.

Signed-off-by: Niklas Cassel <niklas.cassel@wdc.com>
Change-Id: Ib5e19c738dea0f8d41641b63d0fabe055a930827
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/8329
Community-CI: Mellanox Build Bot
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Reviewed-by: Paul Luse <paul.e.luse@intel.com>
Reviewed-by: Changpeng Liu <changpeng.liu@intel.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
2021-06-15 08:34:36 +00:00
..
accel examples/accel_perf: don't allocate channel just to get engine caps 2021-06-04 15:48:22 +00:00
bdev bdev/fio_plugin: spdk_fio_get_zoned_model() is too permissive 2021-06-15 08:34:36 +00:00
blob event: Shift subsystem initialization code to a separate library 2021-05-24 10:12:50 +00:00
interrupt_tgt event: Shift subsystem initialization code to a separate library 2021-05-24 10:12:50 +00:00
ioat build: use DEPDIRS variables to build SPDK_LIB_LIST 2020-12-18 09:40:01 +00:00
nvme nvme/fio_plugin: spdk_fio_get_zoned_model() is too permissive 2021-06-15 08:34:36 +00:00
nvmf init: Declare a formal public API 2021-05-26 09:13:34 +00:00
sock event: Shift subsystem initialization code to a separate library 2021-05-24 10:12:50 +00:00
util Util: check the error case of NULL pointer 2021-06-08 08:26:12 +00:00
vmd env_dpdk: save hotplug timeout timestamps separate from rte_devargs 2021-04-23 08:16:24 +00:00
Makefile examples: add zipf example app 2021-05-19 07:50:28 +00:00