diff options
author | David S. Miller <davem@sunset.davemloft.net> | 2006-02-12 02:07:13 -0500 |
---|---|---|
committer | David S. Miller <davem@sunset.davemloft.net> | 2006-03-20 04:12:26 -0500 |
commit | b5a37e96b8dc067b979e44c4e109c9bc49c2f4d8 (patch) | |
tree | 2dcb1bf2927598c2fe9064f82174d7ecd445341a /arch/sparc64/kernel/smp.c | |
parent | c4bce90ea2069e5a87beac806de3090ab32128d5 (diff) |
[SPARC64]: Fix mondo queue allocations.
We have to use bootmem during init_IRQ and page alloc
for sibling cpu calls.
Also, fix incorrect hypervisor call return value
checks in the hypervisor SMP cpu mondo send code.
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'arch/sparc64/kernel/smp.c')
-rw-r--r-- | arch/sparc64/kernel/smp.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/arch/sparc64/kernel/smp.c b/arch/sparc64/kernel/smp.c index 7d7e02ba297e..d637168ce37d 100644 --- a/arch/sparc64/kernel/smp.c +++ b/arch/sparc64/kernel/smp.c | |||
@@ -591,7 +591,7 @@ static void hypervisor_xcall_deliver(u64 data0, u64 data1, u64 data2, cpumask_t | |||
591 | "2" (arg1), "3" (arg2), | 591 | "2" (arg1), "3" (arg2), |
592 | "i" (HV_FAST_TRAP) | 592 | "i" (HV_FAST_TRAP) |
593 | : "memory"); | 593 | : "memory"); |
594 | if (likely(func == HV_EOK)) | 594 | if (likely(arg0 == HV_EOK)) |
595 | break; | 595 | break; |
596 | 596 | ||
597 | if (unlikely(++retries > 100)) { | 597 | if (unlikely(++retries > 100)) { |
@@ -644,7 +644,7 @@ static void hypervisor_xcall_deliver(u64 data0, u64 data1, u64 data2, cpumask_t | |||
644 | "2" (arg1), "3" (arg2), | 644 | "2" (arg1), "3" (arg2), |
645 | "i" (HV_FAST_TRAP) | 645 | "i" (HV_FAST_TRAP) |
646 | : "memory"); | 646 | : "memory"); |
647 | if (likely(func == HV_EOK)) | 647 | if (likely(arg0 == HV_EOK)) |
648 | break; | 648 | break; |
649 | 649 | ||
650 | if (unlikely(++retries > 100)) { | 650 | if (unlikely(++retries > 100)) { |