Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 23 Sep 1996 13:54:40 +1000
From:      Bruce Evans <bde@zeta.org.au>
To:        msmith@atrad.adelaide.edu.au, terry@lambert.org
Cc:        brandon@glacier.cold.org, freebsd-hackers@FreeBSD.org, jgreco@brasil.moneng.mei.com
Subject:   Re: splash-page on bootup..
Message-ID:  <199609230354.NAA03404@godzilla.zeta.org.au>

next in thread | raw e-mail | index | archive | help
>> This is only because we are stupid and use DELAY() instead of a
>> calibrated timer list of one-shot outcall functions.  Using a
>> spinloop is just inherently stupid.
>
>Uh?  You are still thinking like a CS guy, not a hardware programmer.
>
>When I am looking for some hardware in a probe routine, I want _nothing_
>_nada_ _zip_ happening behind my back.  No interrupts, no "strategically
>placed callbacks", nothing.
>
>This has nothing to do with how DELAY() works, it's basic 'least surprise'
>stuff.

Yes, DELAY() works like it does because it must work at probe time before
timer interrupts are enabled.  DELAY() shouldn't be used at other times
except for very short delays (short = about the same time as it takes
to initialize a one-shot timer and service a one-shot timer interrupt
(10-50 usec).

OTOH, probes in lkm'ed drivers can timer expect interrupts to work, and
shouldn't use DELAY() or otherwise hog the cpu any more than the driver
would for normal operations.

Bruce



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