[pulseaudio-discuss] [PATCH] Do not use tsched watermark if tsched is disabled

David Henningsson david.henningsson at canonical.com
Wed Sep 1 00:36:42 PDT 2010


On 2010-08-31 17:57, Colin Guthrie wrote:
> 'Twas brillig, and pl bossart at 19/08/10 14:52 did gyre and gimble:
>>>> Assuming your reasoning is correct (I'm not that deep into DMA yet),
>>>> this should be fixed in the kernel - by not allowing rewinds further
>>>> back than 128 (or 256) bytes ahead of actual position.
>>>> You say HDA can transfer up to 128 bytes in advance, but what about all
>>>> the other drivers? Could there be other drivers having a lot larger DMA
>>>> fetches?
>>>
>>> What's the role of snd_pcm_rewindable()[1]? The documentation says "Get
>>> safe count of frames which can be rewinded", which sounds to me like the
>>> function should always be called before snd_pcm_rewind(). Currently PA
>>> doesn't call _rewindable().
>>
>> Yes it should be fixed in the kernel, but the DMA transfer size is not
>> necessarily documented and known. Worse, it can vary depending on the
>> mode. So until the kernel folks figure out a solution, and said
>> solution works for all know drivers, this patch is mandatory on the
>> PulseAudio side.
>
>
> Don't want to lose momentum on this patch, so just poking about.

Good initiative.

> What is the next stage here?

Probably either one will work, but if we're about to release 0.9.22 
(heard something from Lennart yet?), I suggest we go with my version for 
0.9.22 as that one is the least invasive (only touches non-tsched 
devices), and keep Pierre's version in master.

-- 
David Henningsson, Canonical Ltd.
http://launchpad.net/~diwic



More information about the pulseaudio-discuss mailing list