Damien Zammit, le dim. 11 févr. 2024 07:08:48 +0000, a ecrit:
> Wait for ICR then just assert the signal. No de-assert.
Please mention in the commit log why.
> ---
> 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