X-Git-Url: https://git.karo-electronics.de/?a=blobdiff_plain;f=kernel%2Fsoftirq.c;h=918e52df090e88ee0a03096bee651e6c3a4d6dce;hb=cb36bb7516fdd1a2a7e9155413b83d4330e4c4a7;hp=3789ca98197c2a793b25dc6ac403e26202312133;hpb=8ce7a9c159c8c4eb480f0a65c6af753dbf9a1a70;p=mv-sheeva.git diff --git a/kernel/softirq.c b/kernel/softirq.c index 3789ca98197..918e52df090 100644 --- a/kernel/softirq.c +++ b/kernel/softirq.c @@ -574,8 +574,6 @@ static int __cpuinit cpu_callback(struct notifier_block *nfb, switch (action) { case CPU_UP_PREPARE: - BUG_ON(per_cpu(tasklet_vec, hotcpu).list); - BUG_ON(per_cpu(tasklet_hi_vec, hotcpu).list); p = kthread_create(ksoftirqd, hcpu, "ksoftirqd/%d", hotcpu); if (IS_ERR(p)) { printk("ksoftirqd for %i failed\n", hotcpu); @@ -612,7 +610,9 @@ static struct notifier_block __cpuinitdata cpu_nfb = { __init int spawn_ksoftirqd(void) { void *cpu = (void *)(long)smp_processor_id(); - cpu_callback(&cpu_nfb, CPU_UP_PREPARE, cpu); + int err = cpu_callback(&cpu_nfb, CPU_UP_PREPARE, cpu); + + BUG_ON(err == NOTIFY_BAD); cpu_callback(&cpu_nfb, CPU_ONLINE, cpu); register_cpu_notifier(&cpu_nfb); return 0;