Re: [PATCH 4/4 v3] cxl/test: Simulate an x86 Low Memory Hole for tests

Robert Richter
2025-03-21T10:42:17Z

On 14.03.25 12:36:33, Fabio M. De Francesco wrote:
> Simulate an x86 Low Memory Hole for the CXL tests by changing the first
> mock CFMWS range size to 768MB and the CXL Endpoint Decoder HPA range sizes
> to 1GB.
>
> Since the auto-created region of cxl-test uses mock_cfmws[0], whose range
> base address is typically different from the one published by the BIOS on
> real hardware, the driver would fail to create and attach CXL Regions if
> it was run on the mock environment created by cxl-tests.
>
> Therefore, save the mock_cfmsw[0] range base_hpa and reuse it to match CXL
> Root Decoders and Regions with Endpoint Decoders when the driver is run on
> mock devices.
>
> Since the auto-created region of cxl-test uses mock_cfmws[0], the
> LMH path in the CXL Driver will be exercised every time the cxl-test
> module is loaded. Executing unit test: cxl-topology.sh, confirms the
> region created successfully with a LMH.
>
> Cc: Alison Schofield <alison.schofield@intel.com>
> Cc: Dan Williams <dan.j.williams@intel.com>
> Cc: Ira Weiny <ira.weiny@intel.com>
> Signed-off-by: Fabio M. De Francesco <fabio.m.de.francesco@linux.intel.com>
> ---
> drivers/cxl/core/lmh.c | 35 ++++++++++++++++++++++++----
> drivers/cxl/core/lmh.h | 2 ++

Can you take a look to move all those changes to testing/? This
indicates the interface of your mock functions need improvement.

-Robert

> tools/testing/cxl/cxl_core_exports.c | 2 ++
> tools/testing/cxl/test/cxl.c | 10 ++++++++
> 4 files changed, 45 insertions(+), 4 deletions(-)