Messages in this thread | | | Date | Fri, 17 Feb 2017 12:55:56 +0100 (CET) | From | Thomas Gleixner <> | Subject | Re: [PATCH v3] softirq: Prevent looping on disabled tasklets |
| |
On Sun, 12 Feb 2017, Chris Wilson wrote:
> On Sun, Feb 12, 2017 at 03:46:09PM +0000, Chris Wilson wrote: > > +void tasklet_enable(struct tasklet_struct *t) > > +{ > > + if (!atomic_dec_and_test(&t->count)) > > + return; > > + > > + if (test_bit(TASKLET_STATE_SCHED, &t->state)) > > + raise_softirq(HI_SOFTIRQ | TASKLET_SOFTIRQ); > > And of course this can't work as raise_softirq() is local to the cpu.
Indeed. tasklets are a horror by design. We rather should make them go away.
Thanks,
tglx
| |