From 1d0b516be4ca5b356aaaa3cfafb9735c7f3a559f Mon Sep 17 00:00:00 2001 From: David Gwynne Date: Sun, 29 Mar 2009 01:05:57 +0000 Subject: when we steal the SYNC CACHE command in mfi_scsi_cmd we still have to mark the xs as done and call scsi_done for it rather than just returning COMPLETE. --- sys/dev/ic/mfi.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'sys/dev/ic') diff --git a/sys/dev/ic/mfi.c b/sys/dev/ic/mfi.c index 43e75445df2..d3f39211ba1 100644 --- a/sys/dev/ic/mfi.c +++ b/sys/dev/ic/mfi.c @@ -1,4 +1,4 @@ -/* $OpenBSD: mfi.c,v 1.90 2009/03/29 01:02:35 dlg Exp $ */ +/* $OpenBSD: mfi.c,v 1.91 2009/03/29 01:05:56 dlg Exp $ */ /* * Copyright (c) 2006 Marco Peereboom * @@ -1035,7 +1035,7 @@ mfi_scsi_cmd(struct scsi_xfer *xs) 0, NULL, mbox)) goto stuffup; - return (COMPLETE); + goto complete; /* NOTREACHED */ /* hand it of to the firmware and let it deal with it */ @@ -1085,6 +1085,7 @@ mfi_scsi_cmd(struct scsi_xfer *xs) stuffup: xs->error = XS_DRIVER_STUFFUP; +complete: xs->flags |= ITSDONE; s = splbio(); scsi_done(xs); -- cgit v1.2.3