Message ID | 20230815122316.4129333-1-haowenchao2@huawei.com (mailing list archive) |
---|---|
Headers | show |
Series | scsi:scsi_debug: Add error injection for single device | expand |
On 2023/8/15 20:23, Wenchao Hao wrote: > The original error injection mechanism was based on scsi_host which > could not inject fault for a single SCSI device. > > This patchset provides the ability to inject errors for a single > SCSI device. Now we supports inject timeout errors, queuecommand > errors, and hostbyte, driverbyte, statusbyte, and sense data for > specific SCSI Command. Two new error injection is defined to make > abort command or reset LUN failed. > > Besides error injection for single device, this patchset add a > new interface to make reset target failed for each scsi_target. > > The first two patch add an debugfs interface to add and inquiry single > device's error injection info; the third patch defined how to remove > an injection which has been added. The following 5 patches use the > injection info and generate the related error type. The last one just > Add a new interface to make reset target failed. > Friendly ping... > V4: > - Fix BUG_ON triggered by schedule in atomic context when rmmod scsi_debug > Closes: https://lore.kernel.org/oe-lkp/202308031027.5941ce5f-oliver.sang@intel.com > > V3: > - Add two more error types to fail abort command and lun reset > - Fix memleak when rmmod scsi_debug without clearing errors injected > - Fix memkeak because did not implement release in sdebug_error_fops > - Fix possible NULL point access in scsi_debug_slave_destroy > - Move specific error type's description to each single patch which > implement this error type > - Add interface to make target reset fail > > V2: > - Using debugfs rather than sysfs attribute interface to manage error > > Wenchao Hao (9): > scsi:scsi_debug: create scsi_debug directory in the debugfs filesystem > scsi:scsi_debug: Add interface to manage single device's error inject > scsi:scsi_debug: Define grammar to remove added error injection > scsi:scsi_debug: timeout command if the error is injected > scsi:scsi_debug: Return failed value if the error is injected > scsi:scsi_debug: set command's result and sense data if the error is injected > scsi:scsi_debug: Add new error injection abort failed > scsi:scsi_debug: Add new error injection reset lun failed > scsi:scsi_debug: Add debugfs interface to fail target reset > > drivers/scsi/scsi_debug.c | 512 +++++++++++++++++++++++++++++++++++++- > 1 file changed, 507 insertions(+), 5 deletions(-) >
On 2023/8/15 20:23, Wenchao Hao wrote: > The original error injection mechanism was based on scsi_host which > could not inject fault for a single SCSI device. > > This patchset provides the ability to inject errors for a single > SCSI device. Now we supports inject timeout errors, queuecommand > errors, and hostbyte, driverbyte, statusbyte, and sense data for > specific SCSI Command. Two new error injection is defined to make > abort command or reset LUN failed. > > Besides error injection for single device, this patchset add a > new interface to make reset target failed for each scsi_target. > > The first two patch add an debugfs interface to add and inquiry single > device's error injection info; the third patch defined how to remove > an injection which has been added. The following 5 patches use the > injection info and generate the related error type. The last one just > Add a new interface to make reset target failed. > Ping... > V4: > - Fix BUG_ON triggered by schedule in atomic context when rmmod scsi_debug > Closes: https://lore.kernel.org/oe-lkp/202308031027.5941ce5f-oliver.sang@intel.com > > V3: > - Add two more error types to fail abort command and lun reset > - Fix memleak when rmmod scsi_debug without clearing errors injected > - Fix memkeak because did not implement release in sdebug_error_fops > - Fix possible NULL point access in scsi_debug_slave_destroy > - Move specific error type's description to each single patch which > implement this error type > - Add interface to make target reset fail > > V2: > - Using debugfs rather than sysfs attribute interface to manage error > > Wenchao Hao (9): > scsi:scsi_debug: create scsi_debug directory in the debugfs filesystem > scsi:scsi_debug: Add interface to manage single device's error inject > scsi:scsi_debug: Define grammar to remove added error injection > scsi:scsi_debug: timeout command if the error is injected > scsi:scsi_debug: Return failed value if the error is injected > scsi:scsi_debug: set command's result and sense data if the error is injected > scsi:scsi_debug: Add new error injection abort failed > scsi:scsi_debug: Add new error injection reset lun failed > scsi:scsi_debug: Add debugfs interface to fail target reset > > drivers/scsi/scsi_debug.c | 512 +++++++++++++++++++++++++++++++++++++- > 1 file changed, 507 insertions(+), 5 deletions(-) >