Discussion:
[pcp] Github push to performancecopilot:pcp #github
pcp@groups.io Integration
2017-07-19 07:15:01 UTC
Permalink
17 New Commits:

[pcp:master] By Ken McDonell <***@internode.on.net>:
49cf16fddc83 ( https://github.com/performancecopilot/pcp/commit/49cf16fddc831c992a38400d1ce0e21ef972a908 ) : src/include/pcp/impl.h: add PM_IS_LOCKED() and always include __pmIsLocked() in libpcp

Modified: src/include/pcp/impl.h ( https://github.com/performancecopilot/pcp/blob/master/src/include/pcp/impl.h )

[pcp:master] By Ken McDonell <***@internode.on.net>:
a17681837783 ( https://github.com/performancecopilot/pcp/commit/a17681837783d3be5a77e9bc9c767bb44fef5911 ) : src/libpcp/doc: update mk.cgraph and document planned PMNS locking and other recent changes

Modified: src/libpcp/doc/libpcp-locking.odt ( https://github.com/performancecopilot/pcp/blob/master/src/libpcp/doc/libpcp-locking.odt )
Modified: src/libpcp/doc/mk.cgraph ( https://github.com/performancecopilot/pcp/blob/master/src/libpcp/doc/mk.cgraph )

[pcp:master] By Ken McDonell <***@internode.on.net>:
9e33f06f0488 ( https://github.com/performancecopilot/pcp/commit/9e33f06f04885d0c630c38a1fc44d1e6477f6934 ) : src/pmlogcheck/pass3.c: cosmetic change Picked up from Dave's review ... the code makes more sense if we use the same __pmContext * for the PM_LOCK(), the call to __pmLogRead_ctx() and the PM_UNLOCK(). The change is cosmetic because ctxp and l_ctxp are identical at this point in the code.

Modified: src/pmlogcheck/pass3.c ( https://github.com/performancecopilot/pcp/blob/master/src/pmlogcheck/pass3.c )

[pcp:master] By Ken McDonell <***@internode.on.net>:
2b18d96fd118 ( https://github.com/performancecopilot/pcp/commit/2b18d96fd118f49e6b3c77fb6901977c69a53444 ) : src/pmlogger/src/fetch.c: remove extra c_lock unlocks in myFetch

Modified: src/pmlogger/src/fetch.c ( https://github.com/performancecopilot/pcp/blob/master/src/pmlogger/src/fetch.c )

[pcp:master] By Ken McDonell <***@internode.on.net>:
3250dfda7b24 ( https://github.com/performancecopilot/pcp/commit/3250dfda7b242501b49bf1cb79826a20d4569f0c ) : src/pmlogextract/pmlogextract.c: need to hold c_lock a bit longer for log I/O

Modified: src/pmlogextract/pmlogextract.c ( https://github.com/performancecopilot/pcp/blob/master/src/pmlogextract/pmlogextract.c )

[pcp:master] By Ken McDonell <***@internode.on.net>:
716802c8983a ( https://github.com/performancecopilot/pcp/commit/716802c8983a998b9c840025bd500d1e3563f8f0 ) : libpcp: refactor PMNS locking Avoid the big libpcp lock altogether, but a number of messy issues, especially associated with libpcp re-entrancy from the pmTraversePMNS() and pmTraverse_r() interfaces caused some major refactoring. The new pmns_lock can only be acquired after any context lock is acquired (there is none for apps using pmLoadNameSpace() outside a current context), and once the pmns_lock is acquired, no subsequent context locking is allowed until the pmns_lock is released.

Modified: src/libpcp/src/check-statics ( https://github.com/performancecopilot/pcp/blob/master/src/libpcp/src/check-statics )
Modified: src/libpcp/src/context.c ( https://github.com/performancecopilot/pcp/blob/master/src/libpcp/src/context.c )
Modified: src/libpcp/src/internal.h ( https://github.com/performancecopilot/pcp/blob/master/src/libpcp/src/internal.h )
Modified: src/libpcp/src/lock.c ( https://github.com/performancecopilot/pcp/blob/master/src/libpcp/src/lock.c )
Modified: src/libpcp/src/pmns.c ( https://github.com/performancecopilot/pcp/blob/master/src/libpcp/src/pmns.c )

[pcp:master] By Ken McDonell <***@internode.on.net>:
0f65209dc4ef ( https://github.com/performancecopilot/pcp/commit/0f65209dc4ef003fa40d19ab188a78329c92e5a9 ) : qa/check: defer removal of .bad file until the associated test is run to completion

Modified: qa/check ( https://github.com/performancecopilot/pcp/blob/master/qa/check )

[pcp:master] By Ken McDonell <***@internode.on.net>:
e939ee0f61f3 ( https://github.com/performancecopilot/pcp/commit/e939ee0f61f3cb71f281e2d79022e490819ff1df ) : qa/451 and 998: change filter to accommodate different libpcp behaviour If libpcp is compiled with -DBUILD_WITH_LOCK_ASSERTS (not the default, but I use it a lot in testing), then failures in __pmLock() and __pmUnlock() trip an assert rather than returning an error. Work around this for some corner cases in these tests.

Modified: qa/451 ( https://github.com/performancecopilot/pcp/blob/master/qa/451 )
Modified: qa/998 ( https://github.com/performancecopilot/pcp/blob/master/qa/998 )

[pcp:master] By Ken McDonell <***@internode.on.net>:
7cd417da3c74 ( https://github.com/performancecopilot/pcp/commit/7cd417da3c74bab4321968e387d89d66275448ef ) : qa/src/multithread4.c: add support for -D... command line args

Modified: qa/src/multithread4.c ( https://github.com/performancecopilot/pcp/blob/master/qa/src/multithread4.c )

[pcp:master] By Ken McDonell <***@internode.on.net>:
d94cd45a3724 ( https://github.com/performancecopilot/pcp/commit/d94cd45a3724374b30c24d1f99809fc70c9c3bba ) : qa/group: update some group membership and some comment editing

Modified: qa/group ( https://github.com/performancecopilot/pcp/blob/master/qa/group )

[pcp:master] By Ken McDonell <***@internode.on.net>:
872c8a07dca5 ( https://github.com/performancecopilot/pcp/commit/872c8a07dca51bdcd0f160e91cde67cc63b38d99 ) : Merge branch 'master' into threadsafe

Modified: qa/110 ( https://github.com/performancecopilot/pcp/blob/master/qa/110 )
Modified: qa/common.check ( https://github.com/performancecopilot/pcp/blob/master/qa/common.check )

[pcp:master] By Ken McDonell <***@internode.on.net>:
330446ab54bf ( https://github.com/performancecopilot/pcp/commit/330446ab54bf9bcd33d2883a3331cf9da06a3883 ) : libpcp: change pmns_lock from default to ERRORCHECK pthread_mutex

Modified: src/libpcp/src/context.c ( https://github.com/performancecopilot/pcp/blob/master/src/libpcp/src/context.c )
Modified: src/libpcp/src/internal.h ( https://github.com/performancecopilot/pcp/blob/master/src/libpcp/src/internal.h )
Modified: src/libpcp/src/lock.c ( https://github.com/performancecopilot/pcp/blob/master/src/libpcp/src/lock.c )
Modified: src/libpcp/src/pmns.c ( https://github.com/performancecopilot/pcp/blob/master/src/libpcp/src/pmns.c )

[pcp:master] By Ken McDonell <***@internode.on.net>:
fa2519113269 ( https://github.com/performancecopilot/pcp/commit/fa2519113269d2837239ba48aa7bbdfac7a2d1e5 ) : src/libpcp/pmns.c: fix lock inversion The recent pmns_lock changes introduced a lock inversion with the registered mutex ... fix that, because at the time we are exploring derived metrics we don't need the pmns_lock any more. This was causing pmmgr to lock up early in its life.

Modified: src/libpcp/src/pmns.c ( https://github.com/performancecopilot/pcp/blob/master/src/libpcp/src/pmns.c )

[pcp:master] By Nathan Scott <***@redhat.com>:
4cb0df02e2fc ( https://github.com/performancecopilot/pcp/commit/4cb0df02e2fc8f29b43339112119a5e88da5d2c4 ) : build: add gitignore file for generated pcp-mpstat files

Added: src/pcp/mpstat/.gitignore ( https://github.com/performancecopilot/pcp/blob/master/src/pcp/mpstat/.gitignore )

[pcp:master] By Nathan Scott <***@redhat.com>:
04355deea42b ( https://github.com/performancecopilot/pcp/commit/04355deea42bf3a1a5063ca9c4fe96d84495b008 ) : pcp-mpstat: gracefully handle the absence of interrupt metrics Noticed that pcp-mpstat fails to run when per-CPU soft and hard interrupt metrics are missing from the source (archive, although it will probably affect non x86 hosts as well I suspect). For the default report case these are not actually used, so this is quite unfortunate - the tool can still produce correct output in that case (now does). Added an archive showing the problem and extended qa/883.

Added: qa/archives/pcp-mpstat2.0 ( https://github.com/performancecopilot/pcp/blob/master/qa/archives/pcp-mpstat2.0 )
Added: qa/archives/pcp-mpstat2.index ( https://github.com/performancecopilot/pcp/blob/master/qa/archives/pcp-mpstat2.index )
Added: qa/archives/pcp-mpstat2.meta ( https://github.com/performancecopilot/pcp/blob/master/qa/archives/pcp-mpstat2.meta )
Modified: qa/883 ( https://github.com/performancecopilot/pcp/blob/master/qa/883 )
Modified: qa/883.out ( https://github.com/performancecopilot/pcp/blob/master/qa/883.out )
Modified: qa/archives/GNUmakefile ( https://github.com/performancecopilot/pcp/blob/master/qa/archives/GNUmakefile )
Modified: src/pcp/mpstat/pcp-mpstat.py ( https://github.com/performancecopilot/pcp/blob/master/src/pcp/mpstat/pcp-mpstat.py )

[pcp:master] By Nathan Scott <***@redhat.com>:
efbfd7d3494a ( https://github.com/performancecopilot/pcp/commit/efbfd7d3494a8789330f17662bf1bffd08a3c852 ) : libpcp: drop unused code and fields from internal __pmnsTree While investigating an unrelated issue it was discovered that the "contiguous" and "symbol" fields of struct __pmnsTree are set but never used anywhere. We only ever pass pointers to this structure around outside libpcp, hence its safe to drop these unused fields (and related code).

Modified: src/include/pcp/impl.h ( https://github.com/performancecopilot/pcp/blob/master/src/include/pcp/impl.h )
Modified: src/libpcp/src/pmns.c ( https://github.com/performancecopilot/pcp/blob/master/src/libpcp/src/pmns.c )

[pcp:master] By Nathan Scott <***@redhat.com>:
adef9b57c9c8 ( https://github.com/performancecopilot/pcp/commit/adef9b57c9c8ecd21c75491ad8c4600f874e19d9 ) : Merge branch 'master' of https://github.com/kmcdonell/pcp into kenj-merge

Modified: qa/451 ( https://github.com/performancecopilot/pcp/blob/master/qa/451 )
Modified: qa/998 ( https://github.com/performancecopilot/pcp/blob/master/qa/998 )
Modified: qa/check ( https://github.com/performancecopilot/pcp/blob/master/qa/check )
Modified: qa/group ( https://github.com/performancecopilot/pcp/blob/master/qa/group )
Modified: qa/src/multithread4.c ( https://github.com/performancecopilot/pcp/blob/master/qa/src/multithread4.c )
Modified: src/include/pcp/impl.h ( https://github.com/performancecopilot/pcp/blob/master/src/include/pcp/impl.h )
Modified: src/libpcp/doc/libpcp-locking.odt ( https://github.com/performancecopilot/pcp/blob/master/src/libpcp/doc/libpcp-locking.odt )
Modified: src/libpcp/doc/mk.cgraph ( https://github.com/performancecopilot/pcp/blob/master/src/libpcp/doc/mk.cgraph )
Modified: src/libpcp/src/check-statics ( https://github.com/performancecopilot/pcp/blob/master/src/libpcp/src/check-statics )
Modified: src/libpcp/src/context.c ( https://github.com/performancecopilot/pcp/blob/master/src/libpcp/src/context.c )
Modified: src/libpcp/src/internal.h ( https://github.com/performancecopilot/pcp/blob/master/src/libpcp/src/internal.h )
Modified: src/libpcp/src/lock.c ( https://github.com/performancecopilot/pcp/blob/master/src/libpcp/src/lock.c )
Modified: src/libpcp/src/pmns.c ( https://github.com/performancecopilot/pcp/blob/master/src/libpcp/src/pmns.c )
Modified: src/pmlogcheck/pass3.c ( https://github.com/performancecopilot/pcp/blob/master/src/pmlogcheck/pass3.c )
Modified: src/pmlogextract/pmlogextract.c ( https://github.com/performancecopilot/pcp/blob/master/src/pmlogextract/pmlogextract.c )
Modified: src/pmlogger/src/fetch.c ( https://github.com/performancecopilot/pcp/blob/master/src/pmlogger/src/fetch.c )
Loading...