Re: [RFC 8/8] x86_64: Support for new UV apic

From: Ingo Molnar
Date: Tue Mar 25 2008 - 10:31:24 EST



* Jack Steiner <steiner@xxxxxxx> wrote:

> Index: linux/arch/x86/kernel/genapic_64.c

> @@ -69,7 +73,16 @@ void send_IPI_self(int vector)
>
> unsigned int get_apic_id(void)
> {
> - return (apic_read(APIC_ID) >> 24) & 0xFFu;
> + unsigned int id;
> +
> + preempt_disable();
> + id = apic_read(APIC_ID);
> + if (uv_system_type >= UV_X2APIC)
> + id |= __get_cpu_var(x2apic_extra_bits);
> + else
> + id = (id >> 24) & 0xFFu;;
> + preempt_enable();
> + return id;

dont we want to put get_apic_id() into struct genapic instead? We
already have ID management there.

also, we want to unify 32-bit and 64-bit genapic code and just have
genapic all across x86.

Ingo
--
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/