diff options
Diffstat (limited to 'kernel/softirq.c')
-rw-r--r-- | kernel/softirq.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/kernel/softirq.c b/kernel/softirq.c index 7c1a67ef0274..07b4f1b1a73a 100644 --- a/kernel/softirq.c +++ b/kernel/softirq.c | |||
@@ -716,7 +716,7 @@ static int run_ksoftirqd(void * __bind_cpu) | |||
716 | preempt_enable_no_resched(); | 716 | preempt_enable_no_resched(); |
717 | cond_resched(); | 717 | cond_resched(); |
718 | preempt_disable(); | 718 | preempt_disable(); |
719 | rcu_sched_qs((long)__bind_cpu); | 719 | rcu_note_context_switch((long)__bind_cpu); |
720 | } | 720 | } |
721 | preempt_enable(); | 721 | preempt_enable(); |
722 | set_current_state(TASK_INTERRUPTIBLE); | 722 | set_current_state(TASK_INTERRUPTIBLE); |
@@ -808,7 +808,7 @@ static int __cpuinit cpu_callback(struct notifier_block *nfb, | |||
808 | p = kthread_create(run_ksoftirqd, hcpu, "ksoftirqd/%d", hotcpu); | 808 | p = kthread_create(run_ksoftirqd, hcpu, "ksoftirqd/%d", hotcpu); |
809 | if (IS_ERR(p)) { | 809 | if (IS_ERR(p)) { |
810 | printk("ksoftirqd for %i failed\n", hotcpu); | 810 | printk("ksoftirqd for %i failed\n", hotcpu); |
811 | return NOTIFY_BAD; | 811 | return notifier_from_errno(PTR_ERR(p)); |
812 | } | 812 | } |
813 | kthread_bind(p, hotcpu); | 813 | kthread_bind(p, hotcpu); |
814 | per_cpu(ksoftirqd, hotcpu) = p; | 814 | per_cpu(ksoftirqd, hotcpu) = p; |
@@ -850,7 +850,7 @@ static __init int spawn_ksoftirqd(void) | |||
850 | void *cpu = (void *)(long)smp_processor_id(); | 850 | void *cpu = (void *)(long)smp_processor_id(); |
851 | int err = cpu_callback(&cpu_nfb, CPU_UP_PREPARE, cpu); | 851 | int err = cpu_callback(&cpu_nfb, CPU_UP_PREPARE, cpu); |
852 | 852 | ||
853 | BUG_ON(err == NOTIFY_BAD); | 853 | BUG_ON(err != NOTIFY_OK); |
854 | cpu_callback(&cpu_nfb, CPU_ONLINE, cpu); | 854 | cpu_callback(&cpu_nfb, CPU_ONLINE, cpu); |
855 | register_cpu_notifier(&cpu_nfb); | 855 | register_cpu_notifier(&cpu_nfb); |
856 | return 0; | 856 | return 0; |