Commit f9ac7dcf authored by Jim Harris's avatar Jim Harris
Browse files

reduce: move code into _read_complete_req helper function



This preps for some future changes.

Signed-off-by: default avatarJim Harris <james.r.harris@intel.com>
Change-Id: I380258938e2412062b43c3d460a7322c5afdf819

Reviewed-on: https://review.gerrithub.io/c/spdk/spdk/+/449096


Tested-by: default avatarSPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: default avatarChangpeng Liu <changpeng.liu@intel.com>
Reviewed-by: default avatarShuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com>
Reviewed-by: default avatarPaul Luse <paul.e.luse@intel.com>
parent 09aff2d0
Loading
Loading
Loading
Loading
+16 −8
Original line number Diff line number Diff line
@@ -1026,13 +1026,27 @@ _write_read_done(void *_req, int reduce_errno)
}

static void
_read_read_done(void *_req, int reduce_errno)
_read_complete_req(void *_req, int reduce_errno)
{
	struct spdk_reduce_vol_request *req = _req;
	uint64_t chunk_offset;
	uint8_t *buf;
	int i;

	chunk_offset = req->offset % req->vol->logical_blocks_per_chunk;
	buf = req->decomp_buf + chunk_offset * req->vol->params.logical_block_size;
	for (i = 0; i < req->iovcnt; i++) {
		memcpy(req->iov[i].iov_base, buf, req->iov[i].iov_len);
		buf += req->iov[i].iov_len;
	}
	_reduce_vol_complete_req(req, 0);
}

static void
_read_read_done(void *_req, int reduce_errno)
{
	struct spdk_reduce_vol_request *req = _req;

	if (reduce_errno != 0) {
		req->reduce_errno = reduce_errno;
	}
@@ -1047,13 +1061,7 @@ _read_read_done(void *_req, int reduce_errno)
		return;
	}

	chunk_offset = req->offset % req->vol->logical_blocks_per_chunk;
	buf = req->decomp_buf + chunk_offset * req->vol->params.logical_block_size;
	for (i = 0; i < req->iovcnt; i++) {
		memcpy(req->iov[i].iov_base, buf, req->iov[i].iov_len);
		buf += req->iov[i].iov_len;
	}
	_reduce_vol_complete_req(req, 0);
	_read_complete_req(req, 0);
}

static void