Re: [PATCH] x86/UV: GRU distributed mode mappings

From: Ingo Molnar
Date: Wed May 29 2013 - 04:15:52 EST



* Dimitri Sivanich <sivanich@xxxxxxx> wrote:

> On Tue, May 28, 2013 at 09:59:12AM +0200, Ingo Molnar wrote:
> >
> > * Dimitri Sivanich <sivanich@xxxxxxx> wrote:
> >
> > > Setup mappings for GRU distributed mode and include them as untracked
> > > pat ranges.
> >
> > Would be nice to have the customary changelog content:
> >
> > " Current code does (A), this has a problem when (B).
> > We can improve this doing (C), because (D)."
> >
> > Or so - your changelog is pretty light on the 'why' aspect.
> >
> How about the following?

Looks good to me.

> UV GRU hardware will support an optional distributed mode that will allow
> per-node address mapping of local GRU space, as opposed to mapping all GRU
> hardware to the same contiguous high space.
>
> If GRU distributed mode is selected, setup per-node page table mappings and
> include them as untracked pat ranges.
>
> Signed-off-by: Dimitri Sivanich <sivanich@xxxxxxx>
> ---
> arch/x86/kernel/apic/x2apic_uv_x.c | 63 +++++++++++++++++++++++++++++----
> 1 file changed, 57 insertions(+), 6 deletions(-)

So this looks like suitable v3.11 material - not an urgent fix needed for
v3.10, right?

Noticed this detail:

> + } else
> + return start >= gru_start_paddr && end <= gru_end_paddr;

in the kernel we generally try to balance curly braces - either all
branches are curly or none.

> + /* Save upper (63:M) bits of address only for is_GRU_range */
> + gru_first_node_paddr &= gru_dist_umask;
> + gru_last_node_paddr &= gru_dist_umask;
> + pr_info("UV: Map GRU_DIST base 0x%016llx 0x%016llx - 0x%016llx\n",
> + gru_dist_base, gru_first_node_paddr, gru_last_node_paddr);

I suspect this should be pr_debug()?

Thanks,

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