lib/idxd: add cache control flag to op codes that support it
Perf improvement, directs DSA to write to cache as opposed to mem. Signed-off-by: paul luse <paul.e.luse@intel.com> Change-Id: I0d6ba157af8f1b54f8aae3b8e54a6f7754e4a9de Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/8169 Community-CI: Mellanox Build Bot Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Jim Harris <james.r.harris@intel.com> Reviewed-by: Ben Walker <benjamin.walker@intel.com>
This commit is contained in:
parent
3e2e2a5765
commit
f31ad9b6f1
@ -473,6 +473,7 @@ spdk_idxd_submit_copy(struct spdk_idxd_io_channel *chan, void *dst, const void *
|
||||
desc->src_addr = src_addr;
|
||||
desc->dst_addr = dst_addr;
|
||||
desc->xfer_size = nbytes;
|
||||
desc->flags |= IDXD_FLAG_CACHE_CONTROL; /* direct IO to CPU cache instead of mem */
|
||||
|
||||
/* Submit operation. */
|
||||
movdir64b(chan->portal, desc);
|
||||
@ -522,6 +523,7 @@ spdk_idxd_submit_dualcast(struct spdk_idxd_io_channel *chan, void *dst1, void *d
|
||||
desc->dst_addr = dst1_addr;
|
||||
desc->dest2 = dst2_addr;
|
||||
desc->xfer_size = nbytes;
|
||||
desc->flags |= IDXD_FLAG_CACHE_CONTROL; /* direct IO to CPU cache instead of mem */
|
||||
|
||||
/* Submit operation. */
|
||||
movdir64b(chan->portal, desc);
|
||||
@ -591,6 +593,7 @@ spdk_idxd_submit_fill(struct spdk_idxd_io_channel *chan, void *dst, uint64_t fil
|
||||
desc->pattern = fill_pattern;
|
||||
desc->dst_addr = dst_addr;
|
||||
desc->xfer_size = nbytes;
|
||||
desc->flags |= IDXD_FLAG_CACHE_CONTROL; /* direct IO to CPU cache instead of mem */
|
||||
|
||||
/* Submit operation. */
|
||||
movdir64b(chan->portal, desc);
|
||||
|
Loading…
Reference in New Issue
Block a user