On 11/03/2015 01:41 PM, Stephane Eranian wrote:
> Will,
> 
> Could you provide the list of events detected by libpfm4?
> You need to run as root: sudo examples/showevtinfo -L
> Clearly the ubo uncore event should not be processed as part of tracepoints.

Hi Stephane,

The count of the number of elements in the array was not be reset when the 
static array was being reset.  Attached is a patch that addresses the problem.  
It allows the PAPI fmultiplex1 test to run correctly when the tracepoints are 
being read in multiple times.

-Will

commit cd4d01158b71bb5a0aa89d63113cd4a3cd208ade
Author: William Cohen <wco...@redhat.com>
Date:   Tue Nov 3 16:06:45 2015 -0500

    Reset the number of elements in the perf_pe array
    
    Reading in the tracepoints clones the perf_static_events array and
    adds elements to the the end of the array.  The number of elements in
    the array is tracked by the pme_count field in perf_event_support.  In
    addition to reverting to the perf_static_events array the pme_count
    field needs to be restored to the original count of perf_static_events.
    
    Signed-off-by: William Cohen <wco...@redhat.com>

diff --git a/src/libpfm4/lib/pfmlib_perf_event_pmu.c b/src/libpfm4/lib/pfmlib_perf_event_pmu.c
index c854535..874cc72 100644
--- a/src/libpfm4/lib/pfmlib_perf_event_pmu.c
+++ b/src/libpfm4/lib/pfmlib_perf_event_pmu.c
@@ -485,6 +485,7 @@ pfm_perf_init(void *this)
 {
 	pfmlib_pmu_t *pmu = this;
 	perf_pe = perf_static_events;
+	perf_event_support.pme_count = PME_PERF_EVENT_COUNT;
 
 	/* must dynamically add tracepoints */
 	gen_tracepoint_table();
------------------------------------------------------------------------------
_______________________________________________
perfmon2-devel mailing list
perfmon2-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/perfmon2-devel

Reply via email to