Re: [PATCH 1/10] safe_apic_wait_icr_idle - i386

From: Keith Owens
Date: Wed Apr 25 2007 - 09:20:30 EST


Fernando Luis =?ISO-8859-1?Q?V=E1zquez?= Cao (on Wed, 25 Apr 2007 20:13:28 +0900) wrote:
>+static __inline__ unsigned long safe_apic_wait_icr_idle(void)
>+{
>+ unsigned long send_status;
>+ int timeout;
>+
>+ timeout = 0;
>+ do {
>+ udelay(100);
>+ send_status = apic_read(APIC_ICR) & APIC_ICR_BUSY;
>+ } while (send_status && (timeout++ < 1000));
>+
>+ return send_status;
>+}
>+

safe_apic_wait_icr_idle() as coded guarantees a minimum 100 usec delay
before sending the IPI, this extra delay is unnecessary. Change it to

do {
send_status = apic_read(APIC_ICR) & APIC_ICR_BUSY;
if (send_status)
break;
udelay(100);
} while (timeout++ < 1000);

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/