Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 29 Dec 2002 12:37:46 +0100
From:      Thomas Quinot <thomas@FreeBSD.ORG>
To:        Roman Shterenzon <roman@xpert.com>
Cc:        freebsd-stable@freebsd.org, sos@freebsd.org
Subject:   Re: cdda2wav hangs ATAPI CDR
Message-ID:  <20021229113745.GA90892@melusine.cuivre.fr.eu.org>
In-Reply-To: <20021225212947.O15796@alchemy.oven.org>
References:  <20021225212947.O15796@alchemy.oven.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Le 2002-12-25, Roman Shterenzon écrivait :

>  1001 15780 15044   0  -6  0  1528  872 cbwait DL+   p6    0:00.00 cdda2wav -x

Hum that looks awfully like a race condition between the CAM layer and
the ATAPI code. As a work-around you can try to reinitialize both
using 'atacontrol reinit'.

If you have no other SCSI devices, it would also be interesting if you
could try whether the enclosed patch works around this problem.

Thomas.

Index: cam_periph.c
===================================================================
RCS file: /home/ncvs/src/sys/cam/cam_periph.c,v
retrieving revision 1.24.2.2
diff -u -r1.24.2.2 cam_periph.c
--- cam_periph.c	22 Sep 2002 07:15:32 -0000	1.24.2.2
+++ cam_periph.c	29 Dec 2002 11:36:36 -0000
@@ -717,7 +717,7 @@
 {
 	int s;
 
-	s = splsoftcam();
+	s = splbio();
 	if ((ccb->ccb_h.pinfo.index != CAM_UNQUEUED_INDEX)
 	 || ((ccb->ccb_h.status & CAM_STATUS_MASK) == CAM_REQ_INPROG))
 		tsleep(&ccb->ccb_h.cbfcnp, PRIBIO, "cbwait", 0);

-- 
    Thomas.Quinot@Cuivre.FR.EU.ORG

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-stable" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20021229113745.GA90892>