[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v3 gnumach] smp: Rearrange IPI sending mechanism
From: |
Damien Zammit |
Subject: |
[PATCH v3 gnumach] smp: Rearrange IPI sending mechanism |
Date: |
Fri, 23 Feb 2024 08:14:53 +0000 |
Wait for ICR then just assert the signal.
Linux and NetBSD does it this way, assume they know better.
---
i386/i386/smp.c | 8 +-------
1 file changed, 1 insertion(+), 7 deletions(-)
diff --git a/i386/i386/smp.c b/i386/i386/smp.c
index 05e9de67..a758eea3 100644
--- a/i386/i386/smp.c
+++ b/i386/i386/smp.c
@@ -54,17 +54,11 @@ static void smp_send_ipi(unsigned apic_id, unsigned vector)
cpu_intr_save(&flags);
- apic_send_ipi(NO_SHORTHAND, FIXED, PHYSICAL, ASSERT, EDGE, vector,
apic_id);
-
do {
cpu_pause();
} while(lapic->icr_low.delivery_status == SEND_PENDING);
- apic_send_ipi(NO_SHORTHAND, FIXED, PHYSICAL, DE_ASSERT, EDGE, vector,
apic_id);
-
- do {
- cpu_pause();
- } while(lapic->icr_low.delivery_status == SEND_PENDING);
+ apic_send_ipi(NO_SHORTHAND, FIXED, PHYSICAL, ASSERT, EDGE, vector,
apic_id);
cpu_intr_restore(flags);
}
--
2.43.0
- [PATCH v3 gnumach] smp: Rearrange IPI sending mechanism,
Damien Zammit <=