Hi, On Wed, Sep 02, 2020 at 09:32:13AM +0530, Allen Pais wrote: > In preparation for unconditionally passing the > struct tasklet_struct pointer to all tasklet > callbacks, switch to using the new tasklet_setup() > and from_tasklet() to pass the tasklet pointer explicitly. > > Signed-off-by: Romain Perier <romain.perier@xxxxxxxxx> > Signed-off-by: Allen Pais <allen.lkml@xxxxxxxxx> > --- > sound/firewire/amdtp-stream.c | 8 ++++---- > 1 file changed, 4 insertions(+), 4 deletions(-) This looks good to me. Acked-by: Takashi Sakamoto <o-takashi@xxxxxxxxxxxxx> To Iwai-san, I'm review your patch in 'test/kill-tasklet' branch in sound.git[1]. Although I agree with the direction to obsolete tasklet usage with workqueue, 'in_interrupt()' helper function is used in two lines in 'sound/firewire/amdtp-stream.c' since it's convenient to distinguish running context (any softirq or user task). We need enough care of the cases about which below two patches mention: * 1dba9db0eaa6 ('ALSA: firewire-lib: permit to flush queued packets only in process context for better PCM period granularity') * 4a9bfafc64f4 ('ALSA: firewire-lib: Fix stall of process context at packet error) As long as I know, we have no helper function to distinguish workqueue task from user task. The simple replacement is not good way in the case. I'm investigating better solution but not find yet... [1] https://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound.git/commit/?h=test/kill-tasklet&id=bd17f03415d44c1a69fcbb7c074c1dc86f4e8bc6 Thanks Takashi Sakamoto