diff options
author | Marco Peereboom <marco@cvs.openbsd.org> | 2006-05-15 23:28:42 +0000 |
---|---|---|
committer | Marco Peereboom <marco@cvs.openbsd.org> | 2006-05-15 23:28:42 +0000 |
commit | fea35cf3d59a2f4ba5d7917cefd567b6d026bc86 (patch) | |
tree | 44a97addae32846e2167885e0aebb18eba71f5be /sys/dev/ic | |
parent | 8c2f3074e2bddb3fe5f8d874bf7413210bf7b0b4 (diff) |
Oops don't send command twice to firmware when polling.
Diffstat (limited to 'sys/dev/ic')
-rw-r--r-- | sys/dev/ic/mfi.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/sys/dev/ic/mfi.c b/sys/dev/ic/mfi.c index fefd68bd9ab..d3f41be5c94 100644 --- a/sys/dev/ic/mfi.c +++ b/sys/dev/ic/mfi.c @@ -1,4 +1,4 @@ -/* $OpenBSD: mfi.c,v 1.26 2006/05/15 23:20:56 marco Exp $ */ +/* $OpenBSD: mfi.c,v 1.27 2006/05/15 23:28:41 marco Exp $ */ /* * Copyright (c) 2006 Marco Peereboom <marco@peereboom.us> * @@ -745,8 +745,6 @@ mfi_start_xs(struct mfi_softc *sc, struct mfi_ccb *ccb, ccb->ccb_frame_size += sc->sc_frames_size * ccb->ccb_dmamap->dm_nsegs; ccb->ccb_extra_frames = (ccb->ccb_frame_size - 1) / MFI_FRAME_SIZE; - mfi_despatch_cmd(sc, ccb); - if (ccb->ccb_xs->flags & SCSI_POLL) { if (mfi_poll(sc, ccb)) { printf("%s: mfi_poll failed\n", DEVNAME(sc)); @@ -758,6 +756,8 @@ mfi_start_xs(struct mfi_softc *sc, struct mfi_ccb *ccb, return (COMPLETE); } + mfi_despatch_cmd(sc, ccb); + DNPRINTF(MFI_D_DMA, "%s: mfi_start_xs: queued %d\n", DEVNAME(sc), ccb->ccb_dmamap->dm_nsegs); |