numam-spdk/test
Jim Harris 383b117309 reduce: implement read and write with data
For write operations, copy data to req->buf and write
to disk.

If chunk already specified in logical map, read the
chunk first into req->buf, and overwrite with data
specified by the write operation.

If chunk not specified in logical map, fill logical
blocks not specified by the write operation with
zeroes.

For read operations, read chunk into req->buf first,
then copy relevant data into the buffers specified
by the read operations.

These operations are all functional, but have room
for future improvement.  For example, this patch
will issue a separate backing read/write operations
for each backing block in the chunk - this could be
optimized to coalesce operations where the backing
blocks are contiguous.

While here, clean up freeing bufspace in one of
the error paths - this needs to be freed using
spdk_dma_free instead.

Signed-off-by: Jim Harris <james.r.harris@intel.com>
Change-Id: I6dbf4fc9a8fdf0f5424b1f1f9178c79891c96d0d

Reviewed-on: https://review.gerrithub.io/434116
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Chandler-Test-Pool: SPDK Automated Test System <sys_sgsw@intel.com>
Reviewed-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com>
2018-12-13 14:55:39 +00:00
..
app build: move app rules to spdk.app.mk 2018-12-12 22:35:21 +00:00
bdev build: move app rules to spdk.app.mk 2018-12-12 22:35:21 +00:00
blobfs build: move app rules to spdk.app.mk 2018-12-12 22:35:21 +00:00
blobstore vbdev_crypto.c: Always initialize crypto drivers up front 2018-10-24 23:29:28 +00:00
common test/vm_setup.sh: update qemu to version 3.0.0 2018-12-10 22:02:39 +00:00
config_converter nvmf: remove tgt_opts from nvmf_tgt 2018-11-08 23:08:26 +00:00
cpp_headers build: don't include spdk.app.mk in test/cpp_headers 2018-12-12 22:35:21 +00:00
env env: remove default pre-reserved memory size 2018-12-12 11:00:57 +00:00
event build: move app rules to spdk.app.mk 2018-12-12 22:35:21 +00:00
ioat
iscsi_tgt test: update qos.sh to add new test cases 2018-12-07 17:15:41 +00:00
json_config test/json_config: add passthru to clear_config.py 2018-11-12 20:14:32 +00:00
lvol test: modprobe nbd at the start of autotest 2018-11-26 18:17:28 +00:00
nvme env: remove default pre-reserved memory size 2018-12-12 11:00:57 +00:00
nvmf nvmf: Add test that kills initiator with no I/O outstanding 2018-12-07 18:20:30 +00:00
pmem Check file permissions in the check_format script 2018-10-04 23:08:12 +00:00
rpc_client build: move app rules to spdk.app.mk 2018-12-12 22:35:21 +00:00
spdkcli test/spdkcli: Run different parts of tests with given spdk target. 2018-12-07 22:59:07 +00:00
unit reduce: implement read and write with data 2018-12-13 14:55:39 +00:00
vhost test/vhost: fix vhost nightly test 2018-12-10 22:02:39 +00:00
Makefile jsonrpc-client: add new C client library 2018-10-11 20:07:44 +00:00
spdk_cunit.h