[alsa-devel] [PATCH 2/3] ALSA: pcm: add 'applptr' event of tracepoint

Takashi Sakamoto o-takashi at sakamocchi.jp
Mon Jun 12 01:55:16 CEST 2017


On Jun 12 2017 01:53, Takashi Iwai wrote:
> On Sun, 11 Jun 2017 08:48:07 +0200,
> Takashi Sakamoto wrote:
>>
>> In design of ALSA PCM core, both of hardware-side and application-side
>> position on PCM buffer are maintained as a part of information for
>> runtime of PCM substream. In a view of ALSA PCM application, these two
>> positions can be updated by executing ioctl(2) with some commands.
>>
>> There's an event of tracepoint for hardware-side position; 'hwptr'.
>> On the other hand, no events for application-side position.
>>
>> This commit adds a new event for this purpose; 'applptr'. When
>> the application-side position is changed in kernel space, this event
>> is probed with useful information for developers.
>>
>> I note that the event is not probed for all of ALSA PCM applications,
>> because the application-side position is passively maintained in mmap
>> programming scenario. In this case, applications should be programmed
>> with ioctl(2) with SNDRV_PCM_IOCTL_SYNC_PTR to commit the application-side
>> position to kernel land when it operates any PCM frames.
> 
> Here "should" is no correct choice of word.  As you already noted in
> the cover letter, the notification of appl_ptr in the mmap mode with
> the status/control mmap is voluntary.   So, it's not "should be
> programmed" but "may be programmed".

Indeed. It's better.


Regards

Takashi Sakamoto


More information about the Alsa-devel mailing list