This patch moves the tid check upper in the chain, in task_instant_wakeup()
so as to branch to _tasklet_wakeup_here() for run-anywhere tasks, or
_tasklet_wakeup_on() for designated threads.
At this point there is no longer any direct caller of __tasklet_wakeup_on()
passing a negative thread value.
#endif
}
- __tasklet_wakeup_on((struct tasklet *)t, thr);
+ if (thr < 0)
+ __tasklet_wakeup_here((struct tasklet *)t);
+ else
+ __tasklet_wakeup_on((struct tasklet *)t, thr);
}
/* schedules tasklet <tl> to run immediately after the current one is done