diff --git a/[refs] b/[refs] index 0d99bbba7417..17cb88dc3206 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: ef631b0ca01655d24e9ca7e199262c4a46416a26 +refs/heads/master: 79d381c9f2354b594dcab9b04dfcc0debf7294fe diff --git a/trunk/kernel/softirq.c b/trunk/kernel/softirq.c index 2fecefacdc5b..b525dd348511 100644 --- a/trunk/kernel/softirq.c +++ b/trunk/kernel/softirq.c @@ -472,9 +472,9 @@ void tasklet_kill(struct tasklet_struct *t) printk("Attempt to kill tasklet from interrupt\n"); while (test_and_set_bit(TASKLET_STATE_SCHED, &t->state)) { - do + do { yield(); - while (test_bit(TASKLET_STATE_SCHED, &t->state)); + } while (test_bit(TASKLET_STATE_SCHED, &t->state)); } tasklet_unlock_wait(t); clear_bit(TASKLET_STATE_SCHED, &t->state);