Hi Richard,
On 5/26/2026 10:42 AM, Richard Cheng wrote:
L3_CAT measures cache isolation, which requires at least one ache bit
not shared with non-CPU agents, i.e. cbm_mask & ~shareable_bits != 0 .
On MPAM, shareable_bits == cbm_mask is a legitimate state, so there
might be situations that no bit can be reported as exclusive.
Previously get_mask_no_shareable() does the check inside cat_run_test(),
which returns -1 silently and surfaced as a failure for arm64 MPAM.
Implement cat_feature_check() to run the same check at feature-check
time, it prints a diagnostic and return false so the test case itself
can know when to skip.
Signed-off-by: Richard Cheng <[email protected]>
We have also observed this issue, and the patch helps identify the root
cause
of the CAT test failure.
./resctrl_tests -t L3_CAT
TAP version 13
# Pass: Check kernel supports resctrl filesystem
# Pass: Check resctrl mountpoint "/sys/fs/resctrl" exists
# resctrl filesystem not mounted
# dmesg: [ 43.705792] resctrl: L3 allocation detected
# dmesg: [ 43.712878] resctrl: L2 allocation detected
# dmesg: [ 43.719856] resctrl: MB allocation detected
# dmesg: [ 43.726800] resctrl: L3 monitoring detected
1..1
# Starting L3_CAT test ...
# Mounting resctrl to "/sys/fs/resctrl"
# All L3 bits are shareable; cannot measure CAT isolation
ok 1 # SKIP Hardware does not support L3_CAT or L3_CAT is disabled
# 1 skipped test(s) detected. Consider enabling relevant config options
to improve coverage.
# Totals: pass:0 fail:0 xfail:0 xpass:0 skip:1 error:0
Tested-by: Chen Yu <[email protected]>
thanks,
Chenyu