Re: [RFC] modularization of i386 setup_arch and mem_init in 2.4.18

From: Greg KH (greg@kroah.com)
Date: Fri Mar 08 2002 - 16:34:27 EST


On Fri, Mar 08, 2002 at 10:33:30PM +0100, Dave Jones wrote:
> As a sidenote (sort of related topic) :
> An idea being kicked around a little right now is x86 subarch
> support for 2.5. With so many of the niche x86 spin-offs appearing
> lately, all fighting for their own piece of various files in
> arch/i386/kernel/, it may be time to do the same as the ARM folks did,
> and have..
>
> arch/i386/generic/
> arch/i386/numaq/
> arch/i386/visws
> arch/i386/voyager/
> etc..

YES!!!
I've been working on the Foster patches and keep thinking that this
would be the best solution to our current #ifdef hell.

> I've been meaning to find some time to move the necessary bits around,
> and jiggle configs to see how it would work out, but with a pending
> house move, I haven't got around to it yet.. Maybe next week.
>
> The downsides to this:
> - Code duplication.
> Some routines will likely be very similar if not identical.
> - Bug propagation.
> If something is fixed in one subarch, theres a high possibility
> it needs fixing in other subarchs

Make sure that every subarch has a maintainer/someone to blame who needs
to make sure their subarch also keeps up to date with the "generic" one
would help out a lot with this problem.

> The plus sides of this:
> - Removal of #ifdef noise
> With more and more of these subarchs appearing, this is getting
> more of an issue.
> - subarchs are free to do things 'their way' without affecting the
> common case.

I think Martin's recent CONFIG_MULTIQUAD patches prove that the plus
side would outweigh any possible downside :)

thanks,

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



This archive was generated by hypermail 2b29 : Fri Mar 15 2002 - 22:00:10 EST