[lkml]   [2013]   [Dec]   [5]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: [PATCH] mm, x86: Skip NUMA_NO_NODE while parsing SLIT
On Thu, 5 Dec 2013, Yasuaki Ishimatsu wrote:

> (2013/12/05 6:09), Toshi Kani wrote:
> > When ACPI SLIT table has an I/O locality (i.e. a locality unique
> > to an I/O device), numa_set_distance() emits the warning message
> > below.
> >
> > NUMA: Warning: node ids are out of bound, from=-1 to=-1 distance=10
> >
> > acpi_numa_slit_init() calls numa_set_distance() with pxm_to_node(),
> > which assumes that all localities have been parsed with SRAT previously.
> > SRAT does not list I/O localities, where as SLIT lists all localities
> > including I/Os. Hence, pxm_to_node() returns NUMA_NO_NODE (-1) for
> > an I/O locality. I/O localities are not supported and are ignored
> > today, but emitting such warning message leads unnecessary confusion.
> In this case, the warning message should not be shown. But if SLIT table
> is really broken, the message should be shown. Your patch seems to not care
> for second case.

It's a subtle problem of the difference in the definition of a "NUMA node"
between the ACPI specification and how it is defined in the kernel. The
specification allows I/O buses to define a NUMA node and the kernel
doesn't setup a separate node id for them, so there's no way to
distinguish between an erroneous SLIT and system localities that only
include I/O devices. If that were to change in the future we could remove
this limitation since pxm_to_node() wouldn't return NUMA_NO_NODE for
Toshi's config. A follow-up patch that adds the comment about why this is
done has been proposed to be folded into this patch.

 \ /
  Last update: 2013-12-06 00:41    [W:0.100 / U:0.016 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site