Re: [patch 1/5] x84_64, apic: Use probe routines to simplify apic selection

From: Cyrill Gorcunov
Date: Mon May 16 2011 - 04:45:44 EST


On Mon, May 16, 2011 at 12:08 PM, Ingo Molnar <mingo@xxxxxxx> wrote:
>
> * Suresh Siddha <suresh.b.siddha@xxxxxxxxx> wrote:
>
>> From: Suresh Siddha <suresh.b.siddha@xxxxxxxxx>
>> Subject: x84_64, apic: Use probe routines to simplify apic selection
>>
>> Use the unused probe routine in the apic driver to finalize the apic model
>> selection. This cleans up the default_setup_apic_routing() and this probe
>> routine in future can also be used for doing any apic model specific
>> initialization.
>>
>> Acked-by: Cyrill Gorcunov <gorcunov@xxxxxxxxxx>
>> Signed-off-by: Suresh Siddha <suresh.b.siddha@xxxxxxxxx>
>> ---
>>  arch/x86/kernel/apic/apic_flat_64.c   |   10 +++++++++-
>>  arch/x86/kernel/apic/probe_64.c       |   22 +++++++---------------
>>  arch/x86/kernel/apic/x2apic_cluster.c |    7 ++++++-
>>  arch/x86/kernel/apic/x2apic_phys.c    |   10 +++++++++-
>>  arch/x86/kernel/apic/x2apic_uv_x.c    |    7 ++++++-
>>  5 files changed, 37 insertions(+), 19 deletions(-)
>
> Ok, looks like a step forward in the right direction.
>
> Wouldnt it be more self-contained if the probe function returned an apic driver
> pointer?
>
> We could add an __apicdriver section trick to 'know' about all APIC probing
> functions - and we'd call them one by one and use the first one that returns a
> non-NULL result.
>
> Then we'd have the generic fallback APIC drivers as well - not marked
> __apicdriver but used by the probe function directly.
>
> Or we could have them as __apicdriver as well, but then the .o link ordering
> matters to probing order.
>
> Thanks,
>
>        Ingo
>

Yes, this should be a cleaner step but it requires some more code churn that
is why I think Suresh' approach is pretty well done! Ingo, probably we could
do so on *top* of this changes as only time permits? The problem is that I
personally can't guarantee I continue working on the task this week, if Suresh
is able to -- this would be great, if not -- probably even such
minimal disturbing
patch worth merging, it definitley makes code better I think ;)
--
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/