Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 22 Apr 2016 09:43:47 -0700
From:      John Baldwin <jhb@freebsd.org>
To:        Hans Petter Selasky <hps@selasky.org>
Cc:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   Re: svn commit: r298426 - head/sys/dev/fdc
Message-ID:  <4396944.pMOIsoy4We@ralph.baldwin.cx>
In-Reply-To: <57191F7F.4010900@selasky.org>
References:  <201604211837.u3LIbalm092252@repo.freebsd.org> <57191F7F.4010900@selasky.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thursday, April 21, 2016 08:44:15 PM Hans Petter Selasky wrote:
> On 04/21/16 20:37, John Baldwin wrote:
> > -		tsleep(fdc, PRIBIO, "fdcrst", hz);
> > +		if (cold)
> > +			DELAY(1000000);
> > +		else
> > +			tsleep(fdc, PRIBIO, "fdcrst", hz);
> 
> Hi,
> 
> pause() and pause_sbt() does exactly this, checking for "cold" and using 
> DELAY().

Yes, I know.  In theory though the driver interrupt could fire during
normal operation aborting the sleep, so the wait channel for the !cold
case is actually there for a reason it seems.  (That is, in the !cold case
the driver might terminate the sleep early which you can't do with pause.)

-- 
John Baldwin



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