'\" t
.\" Title: nvme-copy
.\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author]
.\" Generator: DocBook XSL Stylesheets vsnapshot
.\" Date: 03/31/2023
.\" Manual: NVMe Manual
.\" Source: NVMe
.\" Language: English
.\"
.TH "NVME\-COPY" "1" "03/31/2023" "NVMe" "NVMe Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.\" http://bugs.debian.org/507673
.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.ie \n(.g .ds Aq \(aq
.el .ds Aq '
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.\" -----------------------------------------------------------------
.\" * MAIN CONTENT STARTS HERE *
.\" -----------------------------------------------------------------
.SH "NAME"
nvme-copy \- Send an NVMe Simple Copy command, provide results
.SH "SYNOPSIS"
.sp
.nf
\fInvme\-copy\fR [\-\-sdlba= | \-d ]
[\-\-blocks= | \-b ]
[\-\-slbs= | \-s ]
[\-\-limited\-retry | \-l]
[\-\-force\-unit\-access | \-f]
[\-\-prinfow= | \-p ]
[\-\-prinfor= | \-P ]
[\-\-ref\-tag= | \-r ]
[\-\-expected\-ref\-tags= | \-R ]
[\-\-app\-tag= | \-a ]
[\-\-expected\-app\-tags= | \-A ]
[\-\-app\-mask= | \-m ]
[\-\-expected\-app\-masks= | \-M ]
[\-\-dir\-type= | \-T ]
[\-\-dir\-spec= | \-S ]
[\-\-format= | \-F ]
.fi
.SH "DESCRIPTION"
.sp
The Copy command is used by the host to copy data from one or more source logical block ranges to a single consecutive destination logical block range\&.
.SH "OPTIONS"
.PP
\-\-sdlba=, \-d
.RS 4
64\-bit addr of first destination logical block
.RE
.PP
\-\-blocks=, \-b
.RS 4
Comma separated list of the number of blocks in each range
.RE
.PP
\-\-slbs=, \-s
.RS 4
Comma separated list of the starting blocks in each range
.RE
.PP
\-\-limited\-retry, \-l
.RS 4
Sets the limited retry flag\&.
.RE
.PP
\-\-force\-unit\-access, \-f
.RS 4
Set the force\-unit access flag\&.
.RE
.PP
\-\-prinfow=, \-p
.RS 4
Protection Information field write definition\&.
.RE
.PP
\-\-prinfor=, \-P
.RS 4
Protection Information field read definition\&.
.RE
.PP
\-\-ref\-tag=, \-r
.RS 4
initial lba reference tag\&.
.RE
.PP
\-\-expected\-ref\-tags=, \-R
.RS 4
expected lba reference tags (comma\-separated list)\&.
.RE
.PP
\-\-app\-tag=, \-a
.RS 4
lba app tag
.RE
.PP
\-\-expected\-app\-tags=, \-A
.RS 4
expected lba app tags (comma\-separated list)
.RE
.PP
\-\-app\-mask=, \-m
.RS 4
lba tag mask
.RE
.PP
\-\-expected\-app\-masks=, \-M
.RS 4
expected lba tag masks (comma\-separated list)
.RE
.PP
\-\-dir\-type=, \-T
.RS 4
Optional directive type\&. The nvme\-cli only enforces the value be in the defined range for the directive type, though the NVMe specification (1\&.3a) defines only one directive, 01h, for write stream identifiers\&.
.RE
.PP
\-\-dir\-spec=, \-S
.RS 4
Optional field for directive specifics\&. When used with write streams, this value is defined to be the write stream identifier\&. The nvme\-cli will not validate the stream requested is within the controller\(cqs capabilities\&.
.RE
.PP
\-\-format=, \-F
.RS 4
source range entry format
.RE
.SH "EXAMPLES"
.sp
No examples yet\&.
.SH "NVME"
.sp
Part of the nvme\-user suite