diff options
Diffstat (limited to 'arch/s390')
-rw-r--r-- | arch/s390/appldata/appldata_base.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/arch/s390/appldata/appldata_base.c b/arch/s390/appldata/appldata_base.c index 62391fb1f61f..a355d8133261 100644 --- a/arch/s390/appldata/appldata_base.c +++ b/arch/s390/appldata/appldata_base.c | |||
@@ -547,8 +547,7 @@ static void __cpuinit appldata_online_cpu(int cpu) | |||
547 | spin_unlock(&appldata_timer_lock); | 547 | spin_unlock(&appldata_timer_lock); |
548 | } | 548 | } |
549 | 549 | ||
550 | static void | 550 | static void __cpuexit appldata_offline_cpu(int cpu) |
551 | appldata_offline_cpu(int cpu) | ||
552 | { | 551 | { |
553 | del_virt_timer(&per_cpu(appldata_timer, cpu)); | 552 | del_virt_timer(&per_cpu(appldata_timer, cpu)); |
554 | if (atomic_dec_and_test(&appldata_expire_count)) { | 553 | if (atomic_dec_and_test(&appldata_expire_count)) { |
@@ -560,9 +559,9 @@ appldata_offline_cpu(int cpu) | |||
560 | spin_unlock(&appldata_timer_lock); | 559 | spin_unlock(&appldata_timer_lock); |
561 | } | 560 | } |
562 | 561 | ||
563 | static int __cpuinit | 562 | static int __cpuinit appldata_cpu_notify(struct notifier_block *self, |
564 | appldata_cpu_notify(struct notifier_block *self, | 563 | unsigned long action, |
565 | unsigned long action, void *hcpu) | 564 | void *hcpu) |
566 | { | 565 | { |
567 | switch (action) { | 566 | switch (action) { |
568 | case CPU_ONLINE: | 567 | case CPU_ONLINE: |
@@ -646,6 +645,8 @@ static void __exit appldata_exit(void) | |||
646 | } | 645 | } |
647 | spin_unlock(&appldata_ops_lock); | 646 | spin_unlock(&appldata_ops_lock); |
648 | 647 | ||
648 | unregister_hotcpu_notifier(&appldata_nb); | ||
649 | |||
649 | for_each_online_cpu(i) | 650 | for_each_online_cpu(i) |
650 | appldata_offline_cpu(i); | 651 | appldata_offline_cpu(i); |
651 | 652 | ||