• Desnes A. Nunes do Rosario's avatar
    selftests/powerpc: Purge extra count_pmc() calls of ebb selftests · 3337bf41
    Desnes A. Nunes do Rosario authored
    An extra count on ebb_state.stats.pmc_count[PMC_INDEX(pmc)] is being per-
    formed when count_pmc() is used to reset PMCs on a few selftests. This
    extra pmc_count can occasionally invalidate results, such as the ones from
    cycles_test shown hereafter. The ebb_check_count() failed with an above
    the upper limit error due to the extra value on ebb_state.stats.pmc_count.
    
    Furthermore, this extra count is also indicated by extra PMC1 trace_log on
    the output of the cycle test (as well as on pmc56_overflow_test):
    
    ==========
       ...
       [21]: counter = 8
       [22]: register SPRN_MMCR0 = 0x0000000080000080
       [23]: register SPRN_PMC1  = 0x0000000080000004
       [24]: counter = 9
       [25]: register SPRN_MMCR0 = 0x0000000080000080
       [26]: register SPRN_PMC1  = 0x0000000080000004
       [27]: counter = 10
       [28]: register SPRN_MMCR0 = 0x0000000080000080
       [29]: register SPRN_PMC1  = 0x0000000080000004
    >> [30]: register SPRN_PMC1  = 0x000000004000051e
    PMC1 count (0x280000546) above upper limit 0x2800003e8 (+0x15e)
    [FAIL] Test FAILED on line 52
    failure: cycles
    ==========
    Signed-off-by: default avatarDesnes A. Nunes do Rosario <desnesn@linux.ibm.com>
    Tested-by: default avatarSachin Sant <sachinp@linux.vnet.ibm.com>
    Signed-off-by: default avatarMichael Ellerman <mpe@ellerman.id.au>
    Link: https://lore.kernel.org/r/20200626164737.21943-1-desnesn@linux.ibm.com
    3337bf41
pmc56_overflow_test.c 1.61 KB