• Wenchao Hao's avatar
    scsi: scsi_debug: Add new error injection type: Reset LUN failed · 02678116
    Wenchao Hao authored
    Add error injection type 4 to make scsi_debug_device_reset() return FAILED.
    Fail abort command format:
    
      +--------+------+-------------------------------------------------------+
      | Column | Type | Description                                           |
      +--------+------+-------------------------------------------------------+
      |   1    |  u8  | Error type, fixed to 0x4                              |
      +--------+------+-------------------------------------------------------+
      |   2    |  s32 | Error count                                           |
      |        |      |  0: this rule will be ignored                         |
      |        |      |  positive: the rule will always take effect           |
      |        |      |  negative: the rule takes effect n times where -n is  |
      |        |      |            the value given. Ignored after n times     |
      +--------+------+-------------------------------------------------------+
      |   3    |  x8  | SCSI command opcode, 0xff for all commands            |
      +--------+------+-------------------------------------------------------+
    
    Examples:
    
        error=/sys/kernel/debug/scsi_debug/0:0:0:1/error
        echo "4 -10 0x12" > ${error}
    
    will make the device return FAILED when trying to reset LUN with inquiry
    command 10 times.
    
        error=/sys/kernel/debug/scsi_debug/0:0:0:1/error
        echo "4 -10 0xff" > ${error}
    
    will make the device return FAILED when trying to reset LUN 10 times.
    
    Usually we do not care about what command it is when trying to perform
    reset LUN, so 0xff could be applied.
    Signed-off-by: default avatarWenchao Hao <haowenchao2@huawei.com>
    Link: https://lore.kernel.org/r/20231010092051.608007-9-haowenchao2@huawei.comTested-by: default avatarDouglas Gilbert <dgilbert@interlog.com>
    Signed-off-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
    02678116
scsi_debug.c 236 KB