Hi Jiada > >> Currently there is race condition between set of byte_pos and wrap > >> it around when new buffer starts. If .pointer is called in-between > >> it will result in inconsistent pointer position be returned > >> from .pointer callback. > >> > >> This patch increments buffer pointer atomically to avoid this issue. > >> > >> Signed-off-by: Jiada Wang<jiada_wang@xxxxxxxxxx> > >> Reviewed-by: Takashi Sakamoto<takashi.sakamoto@xxxxxxxxxxxxxxxx> > >> --- > > You using playback with PIO mode ? > > Because this function is no longer used on DMA mode > No, we are using rcar sound in DMA mode, > our original patch resolves the issue in core.c for both PIO & DMA mode. > > but with your commit a97a06c ("ASoC: rsnd: cleanup pointer related code"), > DMA mode no longer has the race condition issue, > so I ported our fix patch to only address the issue in PIO mode Thanks. Nice to know. Best regards --- Kuninori Morimoto _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx http://mailman.alsa-project.org/mailman/listinfo/alsa-devel