lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Thu, 25 Apr 2024 09:30:15 +0200
From: Robert Richter <rrichter@....com>
To: Dan Williams <dan.j.williams@...el.com>
Cc: "Rafael J. Wysocki" <rafael@...nel.org>,
	Dave Hansen <dave.hansen@...ux.intel.com>,
	Alison Schofield <alison.schofield@...el.com>,
	linux-acpi@...r.kernel.org, linux-kernel@...r.kernel.org,
	linux-cxl@...r.kernel.org, Len Brown <lenb@...nel.org>
Subject: Re: [PATCH v4 6/7] ACPI/NUMA: Add log messages for memory ranges
 found in CEDT

On 24.04.24 10:54:22, Dan Williams wrote:
> Robert Richter wrote:
> > Adding a pr_info() when successfully adding a CFMWS memory range.
> > 
> > Suggested-by: Alison Schofield <alison.schofield@...el.com>
> > Signed-off-by: Robert Richter <rrichter@....com>
> > ---
> >  drivers/acpi/numa/srat.c | 10 +++++++++-
> >  1 file changed, 9 insertions(+), 1 deletion(-)
> > 
> > diff --git a/drivers/acpi/numa/srat.c b/drivers/acpi/numa/srat.c
> > index e3f26e71637a..c62e4636e472 100644
> > --- a/drivers/acpi/numa/srat.c
> > +++ b/drivers/acpi/numa/srat.c
> > @@ -338,8 +338,11 @@ static int __init acpi_parse_cfmws(union acpi_subtable_headers *header,
> >  	 * found for any portion of the window to cover the entire
> >  	 * window.
> >  	 */
> > -	if (!numa_fill_memblks(start, end))
> > +	if (!numa_fill_memblks(start, end)) {
> > +		pr_info("CEDT: memblk extended [mem %#010Lx-%#010Lx]\n",
> > +			(unsigned long long) start, (unsigned long long) end - 1);
> 
> This looks like pr_debug() material to me.

This should have the same log level as the message below and/or its
corresponding SRAT message. CEDT mem blocks wouldn't be reported
otherwise only because a smaller (overlapping) entry was registered
before. That is why I used pr_info here.

> 
> >  		return 0;
> > +	}
> >  
> >  	/* No SRAT description. Create a new node. */
> >  	node = acpi_map_pxm_to_node(*fake_pxm);
> > @@ -354,8 +357,13 @@ static int __init acpi_parse_cfmws(union acpi_subtable_headers *header,
> >  		pr_warn("ACPI NUMA: Failed to add memblk for CFMWS node %d [mem %#llx-%#llx]\n",
> >  			node, start, end);
> >  	}
> > +
> >  	node_set(node, numa_nodes_parsed);
> >  
> > +	pr_info("CEDT: Node %u PXM %u [mem %#010Lx-%#010Lx]\n",
> > +		node, *fake_pxm,
> > +		(unsigned long long) start, (unsigned long long) end - 1);
> > +
> 
> This makes sense to mirror the SRAT pr_info().

I evaluated this.

SRAT shows this:

	pr_info("SRAT: Node %u PXM %u [mem %#010Lx-%#010Lx]%s%s\n",
		node, pxm,
		(unsigned long long) start, (unsigned long long) end - 1,
		hotpluggable ? " hotplug" : "",
		ma->flags & ACPI_SRAT_MEM_NON_VOLATILE ? " non-volatile" : "");

There is no direct mapping of SRAT memory affinity flags (acpi-6.5
spec, table 5.59) and something in the CFMWS entry (cxl-3.1, table
9-22). There is no "hotplug" flag and the "non-volatile" part would be
ambiguous, as some logic must be defined to handle the "volatile" and
"persistent" Window Restrictions. Since the CFMWS restrictions are not
used at all by the kernel my conclusion was to just dropped the flag
for the CEDT info.

Note there is a mapping defined for CDAT DSMAS and SRAT entries, see
CDAT 1.03 spec, Table 4.

-Robert

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ