Date: Wed, 21 Oct 2009 12:25:17 GMT From: Alexander Motin <mav@FreeBSD.org> To: Perforce Change Reviews <perforce@freebsd.org> Subject: PERFORCE change 169637 for review Message-ID: <200910211225.n9LCPHfO017389@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
http://p4web.freebsd.org/chv.cgi?CH=169637 Change 169637 by mav@mav_mavbook on 2009/10/21 12:24:34 Reclear status after xpt_freeze_simq() could change it. Do minor formatting. Affected files ... .. //depot/projects/scottl-camlock/src/sys/dev/ahci/ahci.c#69 edit Differences ... ==== //depot/projects/scottl-camlock/src/sys/dev/ahci/ahci.c#69 (text+ko) ==== @@ -966,9 +966,9 @@ /* Process command errors */ if (istatus & (AHCI_P_IX_OF | AHCI_P_IX_IF | AHCI_P_IX_HBD | AHCI_P_IX_HBF | AHCI_P_IX_TFE)) { -device_printf(dev, "%s ERROR is %08x cs %08x ss %08x rs %08x tfd %02x serr %08x\n", - __func__, istatus, cstatus, sstatus, ch->rslots, ATA_INL(ch->r_mem, AHCI_P_TFD), - serr); +//device_printf(dev, "%s ERROR is %08x cs %08x ss %08x rs %08x tfd %02x serr %08x\n", +// __func__, istatus, cstatus, sstatus, ch->rslots, ATA_INL(ch->r_mem, AHCI_P_TFD), +// serr); ccs = (ATA_INL(ch->r_mem, AHCI_P_CMD) & AHCI_P_CMD_CCS_MASK) >> AHCI_P_CMD_CCS_SHIFT; err = ch->rslots & (cstatus | sstatus); @@ -1271,11 +1271,10 @@ } device_printf(dev, "Timeout on slot %d\n", slot->slot); -device_printf(dev, "%s is %08x cs %08x ss %08x rs %08x tfd %02x serr %08x\n", - __func__, ATA_INL(ch->r_mem, AHCI_P_IS), - ATA_INL(ch->r_mem, AHCI_P_CI), - ATA_INL(ch->r_mem, AHCI_P_SACT), ch->rslots, ATA_INL(ch->r_mem, AHCI_P_TFD), - ATA_INL(ch->r_mem, AHCI_P_SERR)); + device_printf(dev, "is %08x cs %08x ss %08x rs %08x tfd %02x serr %08x\n", + ATA_INL(ch->r_mem, AHCI_P_IS), ATA_INL(ch->r_mem, AHCI_P_CI), + ATA_INL(ch->r_mem, AHCI_P_SACT), ch->rslots, + ATA_INL(ch->r_mem, AHCI_P_TFD), ATA_INL(ch->r_mem, AHCI_P_SERR)); /* Kick controller into sane state. */ ahci_stop(ch->dev); ahci_start(ch->dev); @@ -1378,6 +1377,7 @@ case AHCI_ERR_SATA: if (!ch->readlog) { xpt_freeze_simq(ch->sim, 1); + ccb->ccb_h.status &= ~CAM_STATUS_MASK; ccb->ccb_h.status |= CAM_RELEASE_SIMQ; } ccb->ccb_h.status |= CAM_UNCOR_PARITY; @@ -1385,6 +1385,7 @@ case AHCI_ERR_TIMEOUT: if (!ch->readlog) { xpt_freeze_simq(ch->sim, 1); + ccb->ccb_h.status &= ~CAM_STATUS_MASK; ccb->ccb_h.status |= CAM_RELEASE_SIMQ; } ccb->ccb_h.status |= CAM_CMD_TIMEOUT;
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200910211225.n9LCPHfO017389>