Re: x86/Voyager

From: Brian Gerst
Date: Sun Jan 18 2009 - 13:21:37 EST


On Sun, Jan 18, 2009 at 1:04 PM, James Bottomley
<James.Bottomley@xxxxxxxxxxxxxxxxxxxxx> wrote:
> On Sun, 2009-01-18 at 12:41 -0500, Brian Gerst wrote:
>> On Sun, Jan 18, 2009 at 11:41 AM, James Bottomley
>> <James.Bottomley@xxxxxxxxxxxxxxxxxxxxx> wrote:
>> > On Sun, 2009-01-18 at 08:14 +0100, Ingo Molnar wrote:
>> >> If there's no time/interest in that then we can temporarily mark Voyager
>> >> CONFIG_BROKEN until cleanup/fix patches arrive.
>> >
>> > It's not broken and I've already sent you the cleanup/fix patches ... I
>> > can send them directly to Linus as voyager maintainer if you prefer.
>>
>> The build breakage was due to the cpumask changes I believe, inherited
>> from -tip.
>>
>> There is alot of duplicated code in voyager_smp.c that is making it
>> difficult for me to work on the per-cpu changes.
>
> Actually, there's very little duplicated code, but what there is we can
> unify. The reason it duplicates the API is because it has to provide a
> different implementation for voyager ... it's not a PC x86 architecture.
>
>> Do you see any
>> reason that Voyager can't use the normal x86 setup_per_cpu_areas()
>> code?
>
> Er, well, yes. Current setup_per_cpu_areas is setting up the cpu<->apic
> maps. Voyager has no apics, so it has no use for any of the arrays
> being set up in there.
>
> If you're proposing to add arrays that would actually be useful to
> voyager, then sure we can use it ... it's just at the moment there's no
> need. What is it you want to add in there?

The apic code can be ifdef'ed out for voyager. The reason I want to
use the x86 setup_per_cpu_areas() is that I want to consolidate
initializing per-cpu variables in one place. Voyager currently has
sprinkled in various places setting this_cpu_off, cpu_number, etc.

--
Brian Gerst
--
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/