qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH] scsi-disk: Fix crash if underlying host file or disk returns error.
@ 2018-11-21 12:47 Richard W.M. Jones
  2018-11-21 14:20 ` Kevin Wolf
  2018-11-21 18:31 ` Paolo Bonzini
  0 siblings, 2 replies; 4+ messages in thread
From: Richard W.M. Jones @ 2018-11-21 12:47 UTC (permalink / raw)
  To: pbonzini; +Cc: famz, kwolf, qemu-devel, qemu-block

Commit 40dce4ee6 "scsi-disk: fix rerror/werror=ignore" introduced a
bug which causes qemu to crash with the assertion error below if the
host file or disk returns an error:

  qemu-system-x86_64: hw/scsi/scsi-bus.c:1374: scsi_req_complete:
  Assertion `req->status == -1' failed.

Kevin Wolf suggested this fix:

  < kwolf> Hm, should the final return false; in that patch
           actually be a return true?
  < kwolf> Because I think he didn't intend to change anything
           except BLOCK_ERROR_ACTION_IGNORE

Signed-off-by: Richard W.M. Jones <rjones@redhat.com>
Buglink: https://bugs.launchpad.net/qemu/+bug/1804323
---
 hw/scsi/scsi-disk.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/hw/scsi/scsi-disk.c b/hw/scsi/scsi-disk.c
index 6eb258d3f3..0e9027c8f3 100644
--- a/hw/scsi/scsi-disk.c
+++ b/hw/scsi/scsi-disk.c
@@ -482,7 +482,7 @@ static bool scsi_handle_rw_error(SCSIDiskReq *r, int error, bool acct_failed)
     if (action == BLOCK_ERROR_ACTION_STOP) {
         scsi_req_retry(&r->req);
     }
-    return false;
+    return true;
 }
 
 static void scsi_write_complete_noio(SCSIDiskReq *r, int ret)
-- 
2.19.0.rc0

^ permalink raw reply related	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2018-11-22 10:36 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-11-21 12:47 [Qemu-devel] [PATCH] scsi-disk: Fix crash if underlying host file or disk returns error Richard W.M. Jones
2018-11-21 14:20 ` Kevin Wolf
2018-11-21 18:31 ` Paolo Bonzini
2018-11-22 10:30   ` Kevin Wolf

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).