aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--block/blk-core.c2
-rw-r--r--include/linux/interrupt.h3
-rw-r--r--kernel/hrtimer.c2
-rw-r--r--kernel/rcuclassic.c2
-rw-r--r--kernel/rcupreempt.c2
-rw-r--r--kernel/sched.c2
-rw-r--r--kernel/softirq.c7
-rw-r--r--kernel/timer.c2
-rw-r--r--net/core/dev.c4
9 files changed, 12 insertions, 14 deletions
diff --git a/block/blk-core.c b/block/blk-core.c
index 6a9cc0d22a61..75fdc65136e8 100644
--- a/block/blk-core.c
+++ b/block/blk-core.c
@@ -2048,7 +2048,7 @@ int __init blk_dev_init(void)
2048 for_each_possible_cpu(i) 2048 for_each_possible_cpu(i)
2049 INIT_LIST_HEAD(&per_cpu(blk_cpu_done, i)); 2049 INIT_LIST_HEAD(&per_cpu(blk_cpu_done, i));
2050 2050
2051 open_softirq(BLOCK_SOFTIRQ, blk_done_softirq, NULL); 2051 open_softirq(BLOCK_SOFTIRQ, blk_done_softirq);
2052 register_hotcpu_notifier(&blk_cpu_notifier); 2052 register_hotcpu_notifier(&blk_cpu_notifier);
2053 2053
2054 return 0; 2054 return 0;
diff --git a/include/linux/interrupt.h b/include/linux/interrupt.h
index f1fc7470d26c..a86186dd0474 100644
--- a/include/linux/interrupt.h
+++ b/include/linux/interrupt.h
@@ -285,12 +285,11 @@ enum
285struct softirq_action 285struct softirq_action
286{ 286{
287 void (*action)(struct softirq_action *); 287 void (*action)(struct softirq_action *);
288 void *data;
289}; 288};
290 289
291asmlinkage void do_softirq(void); 290asmlinkage void do_softirq(void);
292asmlinkage void __do_softirq(void); 291asmlinkage void __do_softirq(void);
293extern void open_softirq(int nr, void (*action)(struct softirq_action*), void *data); 292extern void open_softirq(int nr, void (*action)(struct softirq_action *));
294extern void softirq_init(void); 293extern void softirq_init(void);
295#define __raise_softirq_irqoff(nr) do { or_softirq_pending(1UL << (nr)); } while (0) 294#define __raise_softirq_irqoff(nr) do { or_softirq_pending(1UL << (nr)); } while (0)
296extern void raise_softirq_irqoff(unsigned int nr); 295extern void raise_softirq_irqoff(unsigned int nr);
diff --git a/kernel/hrtimer.c b/kernel/hrtimer.c
index 421be5fe5cc7..861b4088092a 100644
--- a/kernel/hrtimer.c
+++ b/kernel/hrtimer.c
@@ -1669,7 +1669,7 @@ void __init hrtimers_init(void)
1669 (void *)(long)smp_processor_id()); 1669 (void *)(long)smp_processor_id());
1670 register_cpu_notifier(&hrtimers_nb); 1670 register_cpu_notifier(&hrtimers_nb);
1671#ifdef CONFIG_HIGH_RES_TIMERS 1671#ifdef CONFIG_HIGH_RES_TIMERS
1672 open_softirq(HRTIMER_SOFTIRQ, run_hrtimer_softirq, NULL); 1672 open_softirq(HRTIMER_SOFTIRQ, run_hrtimer_softirq);
1673#endif 1673#endif
1674} 1674}
1675 1675
diff --git a/kernel/rcuclassic.c b/kernel/rcuclassic.c
index f4ffbd0f306f..f6e01f3ae9c6 100644
--- a/kernel/rcuclassic.c
+++ b/kernel/rcuclassic.c
@@ -529,7 +529,7 @@ static void __cpuinit rcu_online_cpu(int cpu)
529 529
530 rcu_init_percpu_data(cpu, &rcu_ctrlblk, rdp); 530 rcu_init_percpu_data(cpu, &rcu_ctrlblk, rdp);
531 rcu_init_percpu_data(cpu, &rcu_bh_ctrlblk, bh_rdp); 531 rcu_init_percpu_data(cpu, &rcu_bh_ctrlblk, bh_rdp);
532 open_softirq(RCU_SOFTIRQ, rcu_process_callbacks, NULL); 532 open_softirq(RCU_SOFTIRQ, rcu_process_callbacks);
533} 533}
534 534
535static int __cpuinit rcu_cpu_notify(struct notifier_block *self, 535static int __cpuinit rcu_cpu_notify(struct notifier_block *self,
diff --git a/kernel/rcupreempt.c b/kernel/rcupreempt.c
index e1cdf196a515..9dd827db359f 100644
--- a/kernel/rcupreempt.c
+++ b/kernel/rcupreempt.c
@@ -1125,7 +1125,7 @@ void __init __rcu_init(void)
1125 for_each_online_cpu(cpu) 1125 for_each_online_cpu(cpu)
1126 rcu_cpu_notify(&rcu_nb, CPU_UP_PREPARE, (void *)(long) cpu); 1126 rcu_cpu_notify(&rcu_nb, CPU_UP_PREPARE, (void *)(long) cpu);
1127 1127
1128 open_softirq(RCU_SOFTIRQ, rcu_process_callbacks, NULL); 1128 open_softirq(RCU_SOFTIRQ, rcu_process_callbacks);
1129} 1129}
1130 1130
1131/* 1131/*
diff --git a/kernel/sched.c b/kernel/sched.c
index cfa222a91539..56ea3a203a5a 100644
--- a/kernel/sched.c
+++ b/kernel/sched.c
@@ -8154,7 +8154,7 @@ void __init sched_init(void)
8154#endif 8154#endif
8155 8155
8156#ifdef CONFIG_SMP 8156#ifdef CONFIG_SMP
8157 open_softirq(SCHED_SOFTIRQ, run_rebalance_domains, NULL); 8157 open_softirq(SCHED_SOFTIRQ, run_rebalance_domains);
8158#endif 8158#endif
8159 8159
8160#ifdef CONFIG_RT_MUTEXES 8160#ifdef CONFIG_RT_MUTEXES
diff --git a/kernel/softirq.c b/kernel/softirq.c
index 36e061740047..059256874e9b 100644
--- a/kernel/softirq.c
+++ b/kernel/softirq.c
@@ -347,9 +347,8 @@ void raise_softirq(unsigned int nr)
347 local_irq_restore(flags); 347 local_irq_restore(flags);
348} 348}
349 349
350void open_softirq(int nr, void (*action)(struct softirq_action*), void *data) 350void open_softirq(int nr, void (*action)(struct softirq_action *))
351{ 351{
352 softirq_vec[nr].data = data;
353 softirq_vec[nr].action = action; 352 softirq_vec[nr].action = action;
354} 353}
355 354
@@ -503,8 +502,8 @@ void __init softirq_init(void)
503 &per_cpu(tasklet_hi_vec, cpu).head; 502 &per_cpu(tasklet_hi_vec, cpu).head;
504 } 503 }
505 504
506 open_softirq(TASKLET_SOFTIRQ, tasklet_action, NULL); 505 open_softirq(TASKLET_SOFTIRQ, tasklet_action);
507 open_softirq(HI_SOFTIRQ, tasklet_hi_action, NULL); 506 open_softirq(HI_SOFTIRQ, tasklet_hi_action);
508} 507}
509 508
510static int ksoftirqd(void * __bind_cpu) 509static int ksoftirqd(void * __bind_cpu)
diff --git a/kernel/timer.c b/kernel/timer.c
index ceacc6626572..b4da888497fa 100644
--- a/kernel/timer.c
+++ b/kernel/timer.c
@@ -1502,7 +1502,7 @@ void __init init_timers(void)
1502 1502
1503 BUG_ON(err == NOTIFY_BAD); 1503 BUG_ON(err == NOTIFY_BAD);
1504 register_cpu_notifier(&timers_nb); 1504 register_cpu_notifier(&timers_nb);
1505 open_softirq(TIMER_SOFTIRQ, run_timer_softirq, NULL); 1505 open_softirq(TIMER_SOFTIRQ, run_timer_softirq);
1506} 1506}
1507 1507
1508/** 1508/**
diff --git a/net/core/dev.c b/net/core/dev.c
index 582963077877..cf0e16731dc7 100644
--- a/net/core/dev.c
+++ b/net/core/dev.c
@@ -4563,8 +4563,8 @@ static int __init net_dev_init(void)
4563 4563
4564 dev_boot_phase = 0; 4564 dev_boot_phase = 0;
4565 4565
4566 open_softirq(NET_TX_SOFTIRQ, net_tx_action, NULL); 4566 open_softirq(NET_TX_SOFTIRQ, net_tx_action);
4567 open_softirq(NET_RX_SOFTIRQ, net_rx_action, NULL); 4567 open_softirq(NET_RX_SOFTIRQ, net_rx_action);
4568 4568
4569 hotcpu_notifier(dev_cpu_callback, 0); 4569 hotcpu_notifier(dev_cpu_callback, 0);
4570 dst_init(); 4570 dst_init();