target: do not submit a zero-bio I/O request
scsi_setup_fs_cmnd does not like to receive requests with no bios attached to it. Special-case zero-length reads and writes, by not submitting any bio. Testcase: sg_raw /dev/sdb 28 00 00 00 00 00 00 00 00 00 should not fail panics with the rest of the series but not this patch behaves correctly without or with this series Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
This commit is contained in:
Родитель
a50da144d0
Коммит
e0de445736
|
@ -654,6 +654,12 @@ static int iblock_execute_rw(struct se_cmd *cmd)
|
|||
goto fail;
|
||||
cmd->priv = ibr;
|
||||
|
||||
if (!sgl_nents) {
|
||||
atomic_set(&ibr->pending, 1);
|
||||
iblock_complete_cmd(cmd);
|
||||
return 0;
|
||||
}
|
||||
|
||||
bio = iblock_get_bio(cmd, block_lba, sgl_nents);
|
||||
if (!bio)
|
||||
goto fail_free_ibr;
|
||||
|
|
Загрузка…
Ссылка в новой задаче