Re: [PATCH 1/2]percpu: introduce read mostly percpu API

Eric Dumazet
2010-10-20T07:54:03Z

Le mercredi 20 octobre 2010 à 09:35 +0200, Andi Kleen a écrit :
> On Wed, Oct 20, 2010 at 07:18:00AM +0200, Eric Dumazet wrote:
> > Le mercredi 20 octobre 2010 à 11:07 +0800, Shaohua Li a écrit :
> > > Add a new readmostly percpu section and api, next patch will use it.
> > >
> > > Signed-off-by: Shaohua Li <shaohua.li@intel.com>
> > > ---
> >
> >
> > Could you precisely describe why grouping together read mostly percpu
> > variables is a win ? Especially when you add in your next patch a single
> > variable ?
>
> Not Shaohua, but I can explain it:
>
> There is some per cpu data which is read by other CPUs. In this
> case it's a win to use the separate section because you avoid false sharing
> and the cache line can be kept in shared mode on all CPUs.
>
> The next patch has an example of such data: data which is read
> by another CPU to send something to the target CPU.
>
> I think the concept is useful and makes a lot of sense.
> The alternative would be __read_mostly NR_CPUS arrays, but
> we all know that is a bad idea because it wastes too much memory
> on CONFIG_MAX_SMP setups.
>

My question was more a rethoric one. I understand for sure the intent.

All this should be explained in changelog, so that people know
when/where use this new class of per_cpu variables ;)

Thanks