Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

selftests/powerpc/pmu: Fix sample field check in the mmcra_thresh_marked_sample_test

The testcase verifies the setting of different fields in Monitor Mode
Control Register A (MMCRA). In the current code, EV_CODE_EXTRACT macro
is used to extract the "sample" field, which then needs to be further
processed to fetch rand_samp_elig and rand_samp_mode bits. But the
current code is not passing valid sample field to EV_CODE_EXTRACT
macro. Patch addresses this by fixing the input for EV_CODE_EXTRACT.

Fixes: 29cf373c5766 ("selftests/powerpc/pmu: Add interface test for mmcra register fields")
Reported-by: David Binderman <dcb314@hotmail.com>
Link: https://lore.kernel.org/r/DB6P189MB0568CF002762C6C43AF6DF169CA89@DB6P189MB0568.EURP189.PROD.OUTLOOK.COM
Signed-off-by: Kajol Jain <kjain@linux.ibm.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://msgid.link/20230301170918.69176-1-kjain@linux.ibm.com

authored by

Kajol Jain and committed by
Michael Ellerman
8a32341c be994293

+2 -2
+2 -2
tools/testing/selftests/powerpc/pmu/sampling_tests/mmcra_thresh_marked_sample_test.c
··· 63 63 get_mmcra_thd_stop(get_reg_value(intr_regs, "MMCRA"), 4)); 64 64 FAIL_IF(EV_CODE_EXTRACT(event.attr.config, marked) != 65 65 get_mmcra_marked(get_reg_value(intr_regs, "MMCRA"), 4)); 66 - FAIL_IF(EV_CODE_EXTRACT(event.attr.config, sample >> 2) != 66 + FAIL_IF((EV_CODE_EXTRACT(event.attr.config, sample) >> 2) != 67 67 get_mmcra_rand_samp_elig(get_reg_value(intr_regs, "MMCRA"), 4)); 68 - FAIL_IF(EV_CODE_EXTRACT(event.attr.config, sample & 0x3) != 68 + FAIL_IF((EV_CODE_EXTRACT(event.attr.config, sample) & 0x3) != 69 69 get_mmcra_sample_mode(get_reg_value(intr_regs, "MMCRA"), 4)); 70 70 FAIL_IF(EV_CODE_EXTRACT(event.attr.config, sm) != 71 71 get_mmcra_sm(get_reg_value(intr_regs, "MMCRA"), 4));