logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

nvme-resv-acquire - Acquire an nvme reservation

Description

       The Reservation Acquire command is used to acquire a reservation on a namespace, preempt a reservation
       held on a namespace, and abort a reservation held on a namespace.

Examples

       No examples yet

Name

       nvme-resv-acquire - Acquire an nvme reservation

Nvme

       Part of the nvme-user suite

NVMe                                               02/16/2025                               NVME-RESV-ACQUIRE(1)

Options

       -n <nsid>, --namespace-id=<nsid>
           Override the nsid field. If using the admin character device, this parameter is required.

       -c <crkey>, --crkey=<crkey>
           Current Reservation Key: The field specifies the current reservation key associated with the host. If
           the IEKEY bit is set to ‘1’ in the command, then the CRKEY check succeeds regardless of the value in
           this field.

       -p <prkey>, --prkey=<prkey>
           Preempt Reservation Key: If the Reservation Acquire Action is set to 001b (i.e., Preempt) or 010b
           (i.e., Preempt and Abort), then this field specifies the reservation key to be unregistered from the
           namespace. For all other Reservation Acquire Action values, this field is reserved.

       -t <rtype>, --rtype=<rtype>
           Reservation Type: This field specifies the type of reservation to be created.
           ┌─────────┬─────────────────────────────────────┐
           │ Value   │ Definition                          │
           ├─────────┼─────────────────────────────────────┤
           │ 0h      │ Reserved                            │
           ├─────────┼─────────────────────────────────────┤
           │ 1h      │ Write Exclusive Reservation         │
           ├─────────┼─────────────────────────────────────┤
           │ 2h      │ Exclusive Access Reservation        │
           ├─────────┼─────────────────────────────────────┤
           │ 3h      │ Write Exclusive - Registrants Only  │
           │         │ Reservation                         │
           ├─────────┼─────────────────────────────────────┤
           │ 4h      │ Exclusive Access - Registrants Only │
           │         │ Reservation                         │
           ├─────────┼─────────────────────────────────────┤
           │ 5h      │ Write Exclusive - All Registrants   │
           │         │ Reservation                         │
           ├─────────┼─────────────────────────────────────┤
           │ 6h      │ Exclusive Access - All Registrants  │
           │         │ Reservation                         │
           ├─────────┼─────────────────────────────────────┤
           │ 07h-FFh │ Reserved                            │
           └─────────┴─────────────────────────────────────┘

       -a <racqa>, --racqa=<racqa>
           Reservation Acquire Action: This field specifies the action that is performed by the command.
           ┌───────┬───────────────────┐
           │ Value │ Definition        │
           ├───────┼───────────────────┤
           │ 0     │ Acquire           │
           ├───────┼───────────────────┤
           │ 1     │ Preempt           │
           ├───────┼───────────────────┤
           │ 2     │ Preempt and Abort │
           ├───────┼───────────────────┤
           │ 3-7   │ Reserved          │
           └───────┴───────────────────┘

       -i, --iekey
           Ignore Existing Key: If this bit is set to a 1, then the Current Reservation Key (CRKEY) check is
           disabled and the command shall succeed regardless of the CRKEY field value.

           Indicator option, defaults to 0.

       -o <fmt>, --output-format=<fmt>
           Set the reporting format to normal, json or binary. Only one output format can be used at a time.

       -v, --verbose
           Increase the information detail in the output.

       --timeout=<timeout>
           Override default timeout value. In milliseconds.

Synopsis

nvmeresv-acquire <device> [--namespace-id=<nsid> | -n <nsid>]
                               [--crkey=<crkey> | -c <crkey>]
                               [--prkey=<prkey> | -p <prkey>]
                               [--rtype=<rtype> | -t <rtype>]
                               [--racqa=<racqa> | -a <racqa>] [--iekey | -i]
                               [--output-format=<fmt> | -o <fmt>] [--verbose | -v]
                               [--timeout=<timeout>]

See Also