11 config = nvmedriveerrorinjection, Config = nvmedriveerrorinjection – Teledyne LeCroy PETrainer Scripting Language Reference Manual User Manual
Page 53

Teledyne LeCroy
PETrainer Scripting Language
48
6.11 Config = NVMeDriveErrorInjection
This command is only valid for Device Emulation. It configures error injection for NVMe Drive (Controller)
emulation. It is only supported on PETrainer Z3.
In order to use this feature, the Z3 has to be configured for NVMe Drive Emulation, as described in the
Config = NVMe section, and brought up as a drive in the System Under Test.
The command adds a certain type of Error Injection to the Drive Emulation. The error injection is going to
be applied on the next matching NVMe command(s) the Drive Emulator receives from the system.
Parameter
Values
Default Comment
ErrorInjectionType
NVME_DRV_ERR_REGISTER
NVME_DRV_ERR_COMPLETION
NVME_DRV_ERR_COMMAND
N/A
Specifies the type of NVMe
drive error injection:
-
Error injection for
Controller Registers
-
Error injection for
NVMe command
completions
-
Error injection for
NVMe commands
Action
CPL_ACTION_DROP_CPL
CPL_ACTION_DROP_INT
CPL_ACTION_DROP_CPL_INT
CPL_ACTION_CORRUPT_DATA
CPL_ACTION_CORRUPT_RESERVED
CPL_ACTION_CORRUPT_STATUS
N/A
Applies to command
completions:
-
Don’t update the
completion queue
with the completion,
but send interrupt
-
Update the
completion queue
with the completion,
but don’t send
interrupt
-
Don’t update the
completion queue
with the completion,
and don’t send
interrupt
-
Corrupt the
completion data by
setting all the bytes to
0xFF
-
Introduce non-zero
data in the reserved
fields of the
completion
-
Substitute the status
(sf) field with data
supplied in the
RegisterData
parameter. Can be
use to insert any type
of status in the
completion