OSDN Git Service

block/iscsi: fix double-free on BUSY or similar statuses
authorPaolo Bonzini <pbonzini@redhat.com>
Tue, 10 Jan 2023 16:36:33 +0000 (17:36 +0100)
committerPaolo Bonzini <pbonzini@redhat.com>
Fri, 10 Feb 2023 13:12:06 +0000 (14:12 +0100)
commit5080152e2ef6cde7aa692e29880c62bd54acb750
treeb699617c9ae194c39ff060a78693dc4700b37b69
parentd76aa73fad1f64c192856e1420ad0756f5e3b778
block/iscsi: fix double-free on BUSY or similar statuses

Commit 8c460269aa77 ("iscsi: base all handling of check condition on
scsi_sense_to_errno", 2019-07-15) removed a "goto out" so that the
same coroutine is re-entered twice; once from iscsi_co_generic_cb,
once from the timer callback iscsi_retry_timer_expired.  This can
cause a crash.

Resolves: https://gitlab.com/qemu-project/qemu/-/issues/1378
Reported-by: Grzegorz Zdanowski <https://gitlab.com/kiler129>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
block/iscsi.c