diff options
author | Heiko Carstens <heiko.carstens@de.ibm.com> | 2007-07-27 06:29:08 -0400 |
---|---|---|
committer | Martin Schwidefsky <schwidefsky@de.ibm.com> | 2007-07-27 06:29:17 -0400 |
commit | 3bb447fc8bb6523cb1cec7a0277d831a2b0462b7 (patch) | |
tree | e5f11fda2ff91d5670f1c046b53a12b4dbef55aa /net/iucv/iucv.c | |
parent | d941cf5e373c356723fa648b9f0302a11c9b1770 (diff) |
[S390] Convert to smp_call_function_single.
smp_call_function_single now has the same semantics as s390's
smp_call_function_on. Therefore convert to the *single variant
and get rid of some architecture specific code.
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'net/iucv/iucv.c')
-rw-r--r-- | net/iucv/iucv.c | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/net/iucv/iucv.c b/net/iucv/iucv.c index ad5150b8dfa9..983058d432dc 100644 --- a/net/iucv/iucv.c +++ b/net/iucv/iucv.c | |||
@@ -479,7 +479,8 @@ static void iucv_setmask_mp(void) | |||
479 | /* Enable all cpus with a declared buffer. */ | 479 | /* Enable all cpus with a declared buffer. */ |
480 | if (cpu_isset(cpu, iucv_buffer_cpumask) && | 480 | if (cpu_isset(cpu, iucv_buffer_cpumask) && |
481 | !cpu_isset(cpu, iucv_irq_cpumask)) | 481 | !cpu_isset(cpu, iucv_irq_cpumask)) |
482 | smp_call_function_on(iucv_allow_cpu, NULL, 0, 1, cpu); | 482 | smp_call_function_single(cpu, iucv_allow_cpu, |
483 | NULL, 0, 1); | ||
483 | preempt_enable(); | 484 | preempt_enable(); |
484 | } | 485 | } |
485 | 486 | ||
@@ -497,7 +498,7 @@ static void iucv_setmask_up(void) | |||
497 | cpumask = iucv_irq_cpumask; | 498 | cpumask = iucv_irq_cpumask; |
498 | cpu_clear(first_cpu(iucv_irq_cpumask), cpumask); | 499 | cpu_clear(first_cpu(iucv_irq_cpumask), cpumask); |
499 | for_each_cpu_mask(cpu, cpumask) | 500 | for_each_cpu_mask(cpu, cpumask) |
500 | smp_call_function_on(iucv_block_cpu, NULL, 0, 1, cpu); | 501 | smp_call_function_single(cpu, iucv_block_cpu, NULL, 0, 1); |
501 | } | 502 | } |
502 | 503 | ||
503 | /** | 504 | /** |
@@ -522,7 +523,7 @@ static int iucv_enable(void) | |||
522 | rc = -EIO; | 523 | rc = -EIO; |
523 | preempt_disable(); | 524 | preempt_disable(); |
524 | for_each_online_cpu(cpu) | 525 | for_each_online_cpu(cpu) |
525 | smp_call_function_on(iucv_declare_cpu, NULL, 0, 1, cpu); | 526 | smp_call_function_single(cpu, iucv_declare_cpu, NULL, 0, 1); |
526 | preempt_enable(); | 527 | preempt_enable(); |
527 | if (cpus_empty(iucv_buffer_cpumask)) | 528 | if (cpus_empty(iucv_buffer_cpumask)) |
528 | /* No cpu could declare an iucv buffer. */ | 529 | /* No cpu could declare an iucv buffer. */ |
@@ -578,7 +579,7 @@ static int __cpuinit iucv_cpu_notify(struct notifier_block *self, | |||
578 | case CPU_ONLINE_FROZEN: | 579 | case CPU_ONLINE_FROZEN: |
579 | case CPU_DOWN_FAILED: | 580 | case CPU_DOWN_FAILED: |
580 | case CPU_DOWN_FAILED_FROZEN: | 581 | case CPU_DOWN_FAILED_FROZEN: |
581 | smp_call_function_on(iucv_declare_cpu, NULL, 0, 1, cpu); | 582 | smp_call_function_single(cpu, iucv_declare_cpu, NULL, 0, 1); |
582 | break; | 583 | break; |
583 | case CPU_DOWN_PREPARE: | 584 | case CPU_DOWN_PREPARE: |
584 | case CPU_DOWN_PREPARE_FROZEN: | 585 | case CPU_DOWN_PREPARE_FROZEN: |
@@ -587,10 +588,10 @@ static int __cpuinit iucv_cpu_notify(struct notifier_block *self, | |||
587 | if (cpus_empty(cpumask)) | 588 | if (cpus_empty(cpumask)) |
588 | /* Can't offline last IUCV enabled cpu. */ | 589 | /* Can't offline last IUCV enabled cpu. */ |
589 | return NOTIFY_BAD; | 590 | return NOTIFY_BAD; |
590 | smp_call_function_on(iucv_retrieve_cpu, NULL, 0, 1, cpu); | 591 | smp_call_function_single(cpu, iucv_retrieve_cpu, NULL, 0, 1); |
591 | if (cpus_empty(iucv_irq_cpumask)) | 592 | if (cpus_empty(iucv_irq_cpumask)) |
592 | smp_call_function_on(iucv_allow_cpu, NULL, 0, 1, | 593 | smp_call_function_single(first_cpu(iucv_buffer_cpumask), |
593 | first_cpu(iucv_buffer_cpumask)); | 594 | iucv_allow_cpu, NULL, 0, 1); |
594 | break; | 595 | break; |
595 | } | 596 | } |
596 | return NOTIFY_OK; | 597 | return NOTIFY_OK; |