Am 31.10.2012 11:44, schrieb Xiaotian Feng:
> Some driver uses tasklet_disable in device remove/release process,
> tasklet_disable will inc tasklet->count and return. If the tasklet
> is not handled yet under some softirq pressure, the tasklet will be
> placed on the tasklet_vec, never have a chance to be excuted. This might
> lead to a heavy loaded ksoftirqd, wakeup with pending_softirq, but
> tasklet is disabled. tasklet_kill should be used in this case.
> 
> Signed-off-by: Xiaotian Feng <[email protected]>
> Cc: Hansjoerg Lipp <[email protected]>
> Cc: Tilman Schmidt <[email protected]>
> Cc: Karsten Keil <[email protected]>
> Cc: [email protected] 
Acked-by: Tilman Schmidt <[email protected]>

> ---
>  drivers/isdn/gigaset/interface.c |    1 -
>  1 file changed, 1 deletion(-)
> 
> diff --git a/drivers/isdn/gigaset/interface.c 
> b/drivers/isdn/gigaset/interface.c
> index 67abf3f..284c7f3 100644
> --- a/drivers/isdn/gigaset/interface.c
> +++ b/drivers/isdn/gigaset/interface.c
> @@ -544,7 +544,6 @@ void gigaset_if_free(struct cardstate *cs)
>       if (!drv->have_tty)
>               return;
>  
> -     tasklet_disable(&cs->if_wake_tasklet);
>       tasklet_kill(&cs->if_wake_tasklet);
>       cs->tty_dev = NULL;
>       tty_unregister_device(drv->tty, cs->minor_index);
> 

-- 
Tilman Schmidt                    E-Mail: [email protected]
Bonn, Germany
Diese Nachricht besteht zu 100% aus wiederverwerteten Bits.
Ungeöffnet mindestens haltbar bis: (siehe Rückseite)



Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to