diff options
author | se <se@FreeBSD.org> | 1997-09-10 20:46:11 +0000 |
---|---|---|
committer | se <se@FreeBSD.org> | 1997-09-10 20:46:11 +0000 |
commit | 8244d6816f210995d91c7a9116a52b1ad65da584 (patch) | |
tree | cef296eb83e351e07835b6b46e531823c6e3070c /sys/pci | |
parent | 7ef2e93b993137cd1a5efab0ba9236cec28ec144 (diff) | |
download | FreeBSD-src-8244d6816f210995d91c7a9116a52b1ad65da584.zip FreeBSD-src-8244d6816f210995d91c7a9116a52b1ad65da584.tar.gz |
Treat "reservation conflict" status similar to "busy".
Diffstat (limited to 'sys/pci')
-rw-r--r-- | sys/pci/ncr.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/sys/pci/ncr.c b/sys/pci/ncr.c index c6f6ee5..2f0ad96 100644 --- a/sys/pci/ncr.c +++ b/sys/pci/ncr.c @@ -1,6 +1,6 @@ /************************************************************************** ** -** $Id: ncr.c,v 1.108 1997/08/31 19:42:29 se Exp $ +** $Id: ncr.c,v 1.109 1997/09/09 21:52:31 se Exp $ ** ** Device driver for the NCR 53C810 PCI-SCSI-Controller. ** @@ -1340,7 +1340,7 @@ static void ncr_attach (pcici_t tag, int unit); static char ident[] = - "\n$Id: ncr.c,v 1.108 1997/08/31 19:42:29 se Exp $\n"; + "\n$Id: ncr.c,v 1.109 1997/09/09 21:52:31 se Exp $\n"; static const u_long ncr_version = NCR_VERSION * 11 + (u_long) sizeof (struct ncb) * 7 @@ -4754,10 +4754,11 @@ void ncr_complete (ncb_p np, ccb_p cp) }; } else if ((cp->host_status == HS_COMPLETE) - && (cp->scsi_status == S_BUSY)) { + && ((cp->scsi_status == S_BUSY) + || (cp->scsi_status == S_CONFLICT))) { /* - ** Target is busy. + ** Target is busy, or reservation conflict */ xp->error = XS_BUSY; @@ -4767,6 +4768,7 @@ void ncr_complete (ncb_p np, ccb_p cp) ** Device failed selection */ xp->error = XS_SELTIMEOUT; + } else if(cp->host_status == HS_TIMEOUT) { /* |