Re: [PATCH 1/4] create mm/Kconfig for arch-independent memoryoptions

From: Dave Hansen
Date: Wed Apr 06 2005 - 18:58:53 EST


On Thu, 2005-04-07 at 01:40 +0200, Roman Zippel wrote:
> On Wed, 6 Apr 2005, Dave Hansen wrote:
> > On Wed, 2005-04-06 at 22:58 +0200, Roman Zippel wrote:
> > > Dave Hansen wrote:
> > > > --- memhotplug/mm/Kconfig~A6-mm-Kconfig 2005-04-04 09:04:48.000000000 -0700
> > > > +++ memhotplug-dave/mm/Kconfig 2005-04-04 10:15:23.000000000 -0700
> > > > @@ -0,0 +1,25 @@
> > > > +choice
> > > > + prompt "Memory model"
> > > > + default FLATMEM
> > > > + default SPARSEMEM if ARCH_SPARSEMEM_DEFAULT
> > > > + default DISCONTIGMEM if ARCH_DISCONTIGMEM_DEFAULT
> > >
> > > Does this really have to be a user visible option and can't it be
> > > derived from other values? The help text entries are really no help at all.
> >
> > I hope that this selection will replace the current DISCONTIGMEM prompts
> > in the individual architectures. That way, you won't get a net increase
> > in the number of prompts.
>
> Why is this choice needed at all? Why would one choose SPARSEMEM over
> DISCONTIGMEM?

For now, it's only so people can test either one, and we don't have to
try to toss DICONTIGMEM out of the kernel in fell swoop. When the
memory hotplug options are enabled, the DISCONTIG option goes away, and
SPARSEMEM is selected as the only option.

I hope to, in the future, make the options more like this:

config MEMORY_HOTPLUG...
config NUMA...

config DISCONTIGMEM
depends on NUMA && !MEMORY_HOTPLUG

config SPARSEMEM
depends on MEMORY_HOTPLUG || OTHER_ARCH_THING

config FLATMEM
depends on !DISCONTIGMEM && !SPARSEMEM

So, if they enable NUMA, they get DISCONTIGMEM automatically. If they
enable MEMORY_HOTPLUG on top of that, they automatically get SPARSEMEM
instead. All of the complex "pick your memory model" stuff goes away,
and you just select features. However, I think the current situation is
a reasonable intermediate step, as we need to be able to switch back and
forth for now.

> Help texts such as "If unsure, choose <something else>" make
> the complete config option pretty useless.

They don't make it useless, they just guide a clueless user to the right
place, without them having to think about it at all. Those of us that
need to test the various configurations are quite sure of what we're
doing, and can ignore the messages. :)

I'm not opposed to creating some better help text for those things, I'm
just not sure that we really need it, or that it will help end users get
to the right place. I guess more explanation never hurt anyone.

-- Dave

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