On 09/01/09 17:31, Garrett D'Amore wrote:
> Joerg Schilling wrote:
>> Jerry Gilliam <jerry.gilliam at sun.com> wrote:
>>
>>  
>>> 2. Project Summary
>>>     2.1. Project Description:
>>>         The tickless project aims at implementing the services 
>>> provided by the
>>>         clock cyclic in an event driven fashion. The first 
>>> sub-project is the
>>>         decoupling of the lbolt and lbolt64 variables from clock(). 
>>> These two
>>>         variables are incremented at each firing of the clock cyclic 
>>> and provide
>>>         a time reference to the system. They are being replaced by 
>>> two routines
>>>         that are backed by gethrtime(), the existing ddi_get_lbolt() 
>>> and
>>>         the new ddi_get_lbolt64(), introduced as a migration path 
>>> for existing
>>>         non-DDI compliant consumers.
>>>     
>>
>> If this results in being able to sleep with less than 10 ms 
>> granularity without
>> setting a high-res tick, you get many + from me!
>>   
>
> Actually, I could really use the ability to use a timer based service 
> that had a smaller window than 10 msec.  For example, many audio 
> devices have crummy interrupt capabilities... its a lot nicer 
> (smoother audio) if I have a reliable way to get a periodic running at 
> smaller intervals.  (5 to 10 msec, but with precision -- the current 
> stuff is simply too coarse.)
>
> This would simplify a lot of audio device drivers.  And make them more 
> robust as well. :-)
>
>    - Garrett
>
The callout subsystem has been redesigned to support small and high 
resolution
timers. The condition variable module has also been enhanced to make use 
of the
high resolution timers. (see functions that end with _hires in 
condvar.c). However,
this is not exported via DDI. If some consolidation private driver wants 
to cheat
and use these interfaces (ugh), it can. But if you feel there is a real 
need, someone
should work to export the hires CV interfaces to DDI. What I am saying 
is that
the functionality is there. It just needs to be exported.

Of course, it is outside the scope of what Rafael is doing. Someone else 
has to
bell the cat.

Madhavan

Reply via email to