RE: [PATCH 1/2] percpu: km: remove SMP check

From: Peng Fan
Date: Mon Feb 25 2019 - 18:58:56 EST


Hi Dennis,

> -----Original Message-----
> From: Dennis Zhou [mailto:dennis@xxxxxxxxxx]
> Sent: 2019年2月25日 23:14
> To: Peng Fan <peng.fan@xxxxxxx>
> Cc: dennis@xxxxxxxxxx; tj@xxxxxxxxxx; cl@xxxxxxxxx; linux-mm@xxxxxxxxx;
> linux-kernel@xxxxxxxxxxxxxxx; van.freenix@xxxxxxxxx
> Subject: Re: [PATCH 1/2] percpu: km: remove SMP check
>
> On Sun, Feb 24, 2019 at 01:13:43PM +0000, Peng Fan wrote:
> > percpu-km could only be selected by NEED_PER_CPU_KM which depends
> on
> > !SMP, so CONFIG_SMP will be false when choose percpu-km.
> >
> > Signed-off-by: Peng Fan <peng.fan@xxxxxxx>
> > ---
> > mm/percpu-km.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/mm/percpu-km.c b/mm/percpu-km.c index
> > 0f643dc2dc65..66e5598be876 100644
> > --- a/mm/percpu-km.c
> > +++ b/mm/percpu-km.c
> > @@ -27,7 +27,7 @@
> > * chunk size is not aligned. percpu-km code will whine about it.
> > */
> >
> > -#if defined(CONFIG_SMP) &&
> > defined(CONFIG_NEED_PER_CPU_PAGE_FIRST_CHUNK)
> > +#if defined(CONFIG_NEED_PER_CPU_PAGE_FIRST_CHUNK)
> > #error "contiguous percpu allocation is incompatible with paged first
> chunk"
> > #endif
> >
> > --
> > 2.16.4
> >
>
> Hi,
>
> I think keeping CONFIG_SMP makes this easier to remember dependencies
> rather than having to dig into the config. So this is a NACK from me.

You might be wrong here.
In mm/Kconfig, NEED_PER_CPU_KM default y depends on !SMP. So if CONFIG_SMP
is not defined, NEED_PER_CPU_KM will be true. If we also define
CONFIG_NEED_PER_CPU_PAGE_FIRST_CHUNK, the #error will have no chance
to be detected because CONFIG_SMP already be false.
That means CONFIG_SMP will always be false if percpu-km is used.
So need to drop the CONFIG_SMP check here.

Thanks,
Peng.

>
> Thanks,
> Dennis