On 10/5/21 1:59 AM, Takashi Iwai wrote: > On Mon, 04 Oct 2021 18:24:21 +0200, > Pierre-Louis Bossart wrote: >> >> When the hardware can only deal with a monotonically increasing >> appl_ptr, this flag can be set. In case the application requests a >> rewind, snd_pcm_rewind() will not return an error code but signal that >> the appl_ptr was not modified. > > This modification itself is fine, but I guess that application may > still move the appl_ptr directly via SNDRV_PCM_IOCTL_SYNC_PTR ioctl. > We need to verify the backward move there, I suppose? Sorry Takashi, I wasn't able to fully follow your question. In the previous version, I had an explicit check to see if the appl_ptr was modified by a rewind, but you mentioned this would be broken for 32-bit devices due to the use of the 'boundary'. I really have no idea how we can detect a rewind in this configuration, so if you are asking to detect when the appl_ptr is modified through some other means (which I didn't get) we will have the same problem, won't we? see the initial thread here: https://lore.kernel.org/alsa-devel/de5e91c6-5f0e-9866-a1c2-0943b4342359@xxxxxxxxxxxxxxx/