On Thu, 31 Aug 2017 16:21:17 +0200, Takashi Sakamoto wrote:
Hi,
On Aug 31 2017 21:23, Anna-Maria Gleixner wrote:
From: Thomas Gleixner tglx@linutronix.de
The tasklet is used to defer the execution of snd_pcm_period_elapsed() to the softirq context. Using the CLOCK_MONOTONIC_SOFT base invokes the timer callback in softirq context as well which renders the tasklet useless.
Signed-off-by: Thomas Gleixner tglx@linutronix.de Signed-off-by: Anna-Maria Gleixner anna-maria@linutronix.de Cc: Jaroslav Kysela perex@perex.cz Cc: Takashi Iwai tiwai@suse.com Cc: Takashi Sakamoto o-takashi@sakamocchi.jp Cc: alsa-devel@alsa-project.org
sound/drivers/dummy.c | 16 +++------------- 1 file changed, 3 insertions(+), 13 deletions(-)
I prefer this patch as long as this driver can still receive callbacks from hrtimer subsystem.
Reviewed-by: Takashi Sakamoto o-takashi@sakamocchi.jp
Unfortunately, I have too poor machine to compile whole kernel now, thus didn't do any tests, sorry.
I note that ALSA pcsp driver uses a combination of hrtimer/tasklet for the same purpose. I think we can simplify it, too. Please refer to a patch in the end of this message. (But not tested yet for the above reason...)
The pcsp is a bit special. It's really high frequent irq calls for controlling the beep on/off, thus offloading the whole isn't good.
thanks,
Takashi