Re: [RFC 01/22] Generic show_mem() implementation

From: Sam Ravnborg
Date: Fri Apr 04 2008 - 17:35:28 EST


On Fri, Apr 04, 2008 at 12:33:42AM +0200, Johannes Weiner wrote:
> Hi,
>
> Sam Ravnborg <sam@xxxxxxxxxxxx> writes:
>
> > On Thu, Apr 03, 2008 at 04:49:42PM +0200, Johannes Weiner wrote:
> >> Hi,
> >>
> >> Sam Ravnborg <sam@xxxxxxxxxxxx> writes:
> >>
> >> >> e.g. we currently have this in arch/s390/Kconfig:
> >> >>
> >> >> config S390
> >> >> def_bool y
> >> >> select HAVE_OPROFILE
> >> >> select HAVE_KPROBES
> >> >> select HAVE_KRETPROBES
> >> >>
> >> >> just add a select HAVE_GENERIC_SHOWMEM or something like that in the arch
> >> >> specific patches.
> >> > Seconded.
> >> > See Documentation/kbuild/kconfig-language.txt for a few more hints
> >> > how to do it.
> >>
> >> After more thinking about it, wouldn't it be better to have
> >> HAVE_ARCH_SHOW_MEM in mm/Kconfig and let archs with their own show_mem()
> >> select it? Because there are far more archs that use the generic
> >> version than those having their own.
> >
> > Positive logic is almost always simpler to grasp.
> > And the usual way to do this is to let arch's select what they
> > use.
> > We do not want to have a situation where in most cases we select
> > a generic version but in some oddball case we select to have
> > a local version.
>
> I can not follow you. Of course the arch selects what they use. But
> they should not _all_ have to be flagged with an extra select. So what
> default-value are you arguing for?
The normal pattern is to let arch select the generic implmentation they
use.
Just because the majority does use the generic version should not
make us start to use the inverse logic as in your case.

So I want all archs that uses the generic show_mem() to
do an explicit:

config MYARCH
select HAVE_GENERIC_SHOWMEM

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