Commit a3f9811f authored by Yankun Li's avatar Yankun Li Committed by Tomasz Zawadzki
Browse files

reduce: set output_size field in req->backing_cb_args



When uncompressed chunk data is read, you need to set
the backing_cb_args.output_size value. The value is
checked in _write_decompress_done.

Change-Id: I3061a722baa9202f096e94945744f5be8968e7fc
Signed-off-by: default avatarYankun Li <845245370@qq.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/23650


Tested-by: default avatarSPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: default avatarJim Harris <jim.harris@samsung.com>
Reviewed-by: default avatarChangpeng Liu <changpeng.liu@intel.com>
parent 282bc167
Loading
Loading
Loading
Loading
+6 −2
Original line number Diff line number Diff line
@@ -1425,7 +1425,9 @@ _write_read_done(void *_req, int reduce_errno)
	if (req->chunk_is_compressed) {
		_reduce_vol_decompress_chunk_scratch(req, _write_decompress_done);
	} else {
		_write_decompress_done(req, req->chunk->compressed_size);
		req->backing_cb_args.output_size = req->chunk->compressed_size;

		_write_decompress_done(req, 0);
	}
}

@@ -1500,7 +1502,9 @@ _read_read_done(void *_req, int reduce_errno)
			buf += req->iov[i].iov_len;
		}

		_read_decompress_done(req, req->chunk->compressed_size);
		req->backing_cb_args.output_size = req->chunk->compressed_size;

		_read_decompress_done(req, 0);
	}
}