Re: [PATCH 2/2]x86: spread tlb flush vector between nodes

Shaohua Li
2010-10-20T08:44:25Z

On Wed, 2010-10-20 at 15:30 +0800, Andi Kleen wrote:
> Hi Shaohua,
>
> > + if (nr_online_nodes > NUM_INVALIDATE_TLB_VECTORS)
> > + nr_node_vecs = 1;
> > + else
> > + nr_node_vecs = NUM_INVALIDATE_TLB_VECTORS/nr_online_nodes;
>
> Does this build without CONFIG_NUMA? AFAIK nr_online_nodes is only
> defined for a numa kernel.
yes it's ok without CONFIG_NUMA

> > +
> > +static int tlb_cpuhp_notify(struct notifier_block *n,
> > + unsigned long action, void *hcpu)
> > +{
> > + switch (action & 0xf) {
> > + case CPU_ONLINE:
> > + case CPU_DEAD:
> > + calculate_tlb_offset();
>
> I still think the notifier is overkill and a static mapping at boot time
> would be fine.
this hasn't much overhead, so please keep it. I'm afraid static mapping
calculation for hotplug cpu will introduce more complex.