18625cc18SKonrad Sztyber /* SPDX-License-Identifier: BSD-3-Clause 28625cc18SKonrad Sztyber * Copyright (C) 2023 Intel Corporation. All rights reserved. 38625cc18SKonrad Sztyber */ 48625cc18SKonrad Sztyber 58625cc18SKonrad Sztyber #ifndef SPDK_ACCEL_ERROR_H 68625cc18SKonrad Sztyber #define SPDK_ACCEL_ERROR_H 78625cc18SKonrad Sztyber 88625cc18SKonrad Sztyber #include "spdk/accel.h" 98625cc18SKonrad Sztyber 108625cc18SKonrad Sztyber enum accel_error_inject_type { 118625cc18SKonrad Sztyber ACCEL_ERROR_INJECT_DISABLE, 128625cc18SKonrad Sztyber ACCEL_ERROR_INJECT_CORRUPT, 13bb019612SKonrad Sztyber ACCEL_ERROR_INJECT_FAILURE, 148625cc18SKonrad Sztyber ACCEL_ERROR_INJECT_MAX, 158625cc18SKonrad Sztyber }; 168625cc18SKonrad Sztyber 178625cc18SKonrad Sztyber struct accel_error_inject_opts { 188625cc18SKonrad Sztyber enum spdk_accel_opcode opcode; 198625cc18SKonrad Sztyber enum accel_error_inject_type type; 208625cc18SKonrad Sztyber uint64_t count; 21*760cb023SKonrad Sztyber uint64_t interval; 22bb019612SKonrad Sztyber int errcode; 238625cc18SKonrad Sztyber }; 248625cc18SKonrad Sztyber 258625cc18SKonrad Sztyber int accel_error_inject_error(struct accel_error_inject_opts *opts); 268625cc18SKonrad Sztyber const char *accel_error_get_type_name(enum accel_error_inject_type type); 278625cc18SKonrad Sztyber 288625cc18SKonrad Sztyber #endif /* SPDK_ACCEL_ERROR_H */ 29