Hi,
Please see git://sourceware.org/git/pcpfans.git fche/papi branch for
fixes relating to the coverity errors found in pmdapapi. QA has been
updated to match and tested locally for no regressions.
qa/903 | 7 +
qa/903.out | 2
qa/914.out | 10 --
qa/967 | 1
qa/967.out | 12 --
src/pmdas/papi/Install | 8 +
src/pmdas/papi/help | 2
src/pmdas/papi/papi.c | 192 ++++++++++++++++++++++------------------------
src/pmdas/papi/pmdapapi.1 | 14 ++-
src/pmdas/papi/pmns | 1
10 files changed, 122 insertions(+), 127 deletions(-)
commit 1fac24250f888e0fbaf8ca7c73dddfec6b14d1e9
Author: Lukas Berk <lberk@xxxxxxxxxx>
Date: Fri Feb 27 12:42:11 2015 -0500
Add note to pmdapapi Install script about the possible warnings
Update pmdapapi to match new output (also remove lingering batch metric
output from testsuite)
commit bfe730fde2d2bfa9fe4552e221bf8587eca8d9f8
Author: Lukas Berk <lberk@xxxxxxxxxx>
Date: Thu Feb 26 18:13:54 2015 -0500
Add sts2 assignments to auto_enable and multiplex papi_store statements
assign sts values to sts2 variable in papi_store's switch statement
as to preserve any error values
commit d87918b71cd9d0b0a327325c80bf54105c7027e9
Author: Frank Ch. Eigler <fche@xxxxxxxxxx>
Date: Tue Feb 24 19:49:21 2015 -0500
papi pmda: improve papi auto-enable & batching, related error handling
A coverity report [1] indicated problems in the way errors from a
sequence of operations were being (not) propagated out properly.
Defining what's proper is not easy, because when reading N counter
metrics, especially in auto-enable mode, may involve partial
failures. The recently added refresh-batching logic made this aspect
of the situation more confusing.
In the partial failure scenario, some counters give values, others
lack them (never having been activated), yet others fail (an
activation having been rejected). Now, per-counter fetch status is
separated into those categories at papi_fetchCallBack time: success,
vs. PMDA_FETCH_NOVALUES vs. PM_ERR_VALUE.
This is accomplished by always batching a single refresh_counter() at
the beginning of a papi_fetch(), so that by the time the individual
counters are fetched, we know whether they were requested or not, and
whether those requests succeeded. This also allows first-time fetches
of auto-enabled counters to carry proper initial values (so no more
"no values ..." initial warnings from a pmval over an auto-enabled
papi counter). The papi.control.batch metric is no longer used and so
eliminated.
[1] http://oss.sgi.com/archives/pcp/2015-02/msg00081.html
commit 8a6ef5c1474d43ad152f60c55c0e8227829c4718
Author: Lukas Berk <lberk@xxxxxxxxxx>
Date: Sun Feb 22 20:12:06 2015 -0500
Update pmdapapi papi_store function to actually loop through pmid's
src/pmdas/papi/papi.c - pmstore now loops through numpmid's instead
of immediately breaking after the first pmid
|