diff options
Diffstat (limited to 'net/iucv/iucv.c')
| -rw-r--r-- | net/iucv/iucv.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/net/iucv/iucv.c b/net/iucv/iucv.c index 705959b31e24..d7b54b5bfa69 100644 --- a/net/iucv/iucv.c +++ b/net/iucv/iucv.c | |||
| @@ -524,7 +524,6 @@ static int iucv_enable(void) | |||
| 524 | get_online_cpus(); | 524 | get_online_cpus(); |
| 525 | for_each_online_cpu(cpu) | 525 | for_each_online_cpu(cpu) |
| 526 | smp_call_function_single(cpu, iucv_declare_cpu, NULL, 1); | 526 | smp_call_function_single(cpu, iucv_declare_cpu, NULL, 1); |
| 527 | preempt_enable(); | ||
| 528 | if (cpus_empty(iucv_buffer_cpumask)) | 527 | if (cpus_empty(iucv_buffer_cpumask)) |
| 529 | /* No cpu could declare an iucv buffer. */ | 528 | /* No cpu could declare an iucv buffer. */ |
| 530 | goto out_path; | 529 | goto out_path; |
| @@ -547,7 +546,9 @@ out: | |||
| 547 | */ | 546 | */ |
| 548 | static void iucv_disable(void) | 547 | static void iucv_disable(void) |
| 549 | { | 548 | { |
| 549 | get_online_cpus(); | ||
| 550 | on_each_cpu(iucv_retrieve_cpu, NULL, 1); | 550 | on_each_cpu(iucv_retrieve_cpu, NULL, 1); |
| 551 | put_online_cpus(); | ||
| 551 | kfree(iucv_path_table); | 552 | kfree(iucv_path_table); |
| 552 | } | 553 | } |
| 553 | 554 | ||
