[alsa-devel] [PATCH] ALSA: core: Report audio_tstamp in snd_pcm_sync_ptr

Takashi Sakamoto o-takashi at sakamocchi.jp
Sun Apr 22 14:55:51 CEST 2018


Hi,

On Apr 21 2018 21:57, Takashi Iwai wrote:
> From: David Henningsson <diwic at ubuntu.com>
> 
> It looks like a simple mistake that this struct member
> was forgotten.
> 
> Audio_tstamp isn't used much, and on some archs (such as x86) this
> ioctl is not used by default, so that might be the reason why this
> has slipped for so long.

Reviewed-by: Takashi Sakamoto <o-takashi at sakamocchi.jp>

However, with ALSA PCM interface v2.0.14 or later, theoretically in a 
case of driver's support for SNDRV_PCM_INFO_SYNC_APPLPTR, I perhaps can 
see the slip on x86 platform. In detail, please read below commits in order:
  * 42f945970af9 ('ALSA: pcm: Add the explicit appl_ptr sync support')
  * 4b671f577474 ('ALSA: pcm: Add an ioctl to specify the supported
    protocol version')
  * b602aa8eb1a0 ('ALSA: pcm: Disable only control mmap for explicit
    appl_ptr sync')

> Fixes: 4eeaaeaea1ce ("ALSA: core: add hooks for audio timestamps")
> Signed-off-by: David Henningsson <diwic at ubuntu.com>
> Cc: <stable at vger.kernel.org>

# v3.8+

$ git name-rev --tags 4eeaaeaea1cec
4eeaaeaea1cec tags/v3.8-rc1~29^2~127

> Signed-off-by: Takashi Iwai <tiwai at suse.de>
> ---
> 
>   sound/core/pcm_native.c | 1 +
>   1 file changed, 1 insertion(+)
> 
> diff --git a/sound/core/pcm_native.c b/sound/core/pcm_native.c
> index 35ffcce..632228b 100644
> --- a/sound/core/pcm_native.c
> +++ b/sound/core/pcm_native.c
> @@ -2751,6 +2751,7 @@ static int snd_pcm_sync_ptr(struct snd_pcm_substream *substream,
>   	sync_ptr.s.status.hw_ptr = status->hw_ptr;
>   	sync_ptr.s.status.tstamp = status->tstamp;
>   	sync_ptr.s.status.suspended_state = status->suspended_state;
> +	sync_ptr.s.status.audio_tstamp = status->audio_tstamp;
>   	snd_pcm_stream_unlock_irq(substream);
>   	if (copy_to_user(_sync_ptr, &sync_ptr, sizeof(sync_ptr)))
>   		return -EFAULT;


Thanks

Takashi Sakamoto


More information about the Alsa-devel mailing list