Re: [PATCH v3 06/10] selftests/resctrl: Increase size of buffer used in MBM and MBA tests

Ilpo Järvinen
2026-03-27T17:30:42Z

[-- Attachment #1: Type: text/plain, Size: 2571 bytes --]

On Fri, 13 Mar 2026, Reinette Chatre wrote:

> Errata for Sierra Forest [1] (SRF42) and Granite Rapids [2] (GNR12)
> describe the problem that MBM on Intel RDT may overcount memory bandwidth
> measurements. The resctrl tests compare memory bandwidth reported by iMC
> PMU to that reported by MBM causing the tests to fail on these systems
> depending on the settings of the platform related to the errata.
>
> Since the resctrl tests need to run under various conditions it is not
> possible to ensure system settings are such that MBM will not overcount.
> It has been observed that the overcounting can be controlled via the
> buffer size used in the MBM and MBA tests that rely on comparisons
> between iMC PMU and MBM measurements.
>
> Running the MBM test on affected platforms with different buffer sizes it
> can be observed that the difference between iMC PMU and MBM counts reduce
> as the buffer size increases. After increasing the buffer size to more
> than 4X the differences between iMC PMU and MBM become insignificant.
>
> Increase the buffer size used in MBM and MBA tests to 4X L3 size to reduce
> possibility of tests failing due to difference in counts reported by iMC
> PMU and MBM.
>
> Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
> Tested-by: Chen Yu <yu.c.chen@intel.com>
> Link: https://edc.intel.com/content/www/us/en/design/products-and-solutions/processors-and-chipsets/sierra-forest/xeon-6700-series-processor-with-e-cores-specification-update/errata-details/ # [1]
> Link: https://edc.intel.com/content/www/us/en/design/products-and-solutions/processors-and-chipsets/birch-stream/xeon-6900-6700-6500-series-processors-with-p-cores-specification-update/011US/errata-details/ # [2]
> ---
> Changes since v2:
> - Add Chen Yu's tag.
> ---
> tools/testing/selftests/resctrl/fill_buf.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/tools/testing/selftests/resctrl/fill_buf.c b/tools/testing/selftests/resctrl/fill_buf.c
> index 19a01a52dc1a..b9fa7968cd6e 100644
> --- a/tools/testing/selftests/resctrl/fill_buf.c
> +++ b/tools/testing/selftests/resctrl/fill_buf.c
> @@ -139,6 +139,6 @@ ssize_t get_fill_buf_size(int cpu_no, const char *cache_type)
> if (ret)
> return ret;
>
> - return cache_total_size * 2 > MINIMUM_SPAN ?
> - cache_total_size * 2 : MINIMUM_SPAN;
> + return cache_total_size * 4 > MINIMUM_SPAN ?
> + cache_total_size * 4 : MINIMUM_SPAN;
> }
>

Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>

--
i.