A bunch of changes here triggered by compilation warnings, build and
packaging issues and QA failures across the QA Farm.
No major changes of function here, although the changes range across a
fair number of source files (especially the pid_t related changes) ...
may be worth checking that I have not done something silly on any of
your favourite source files.
Changes committed to git://oss.sgi.com/kenj/pcp.git dev
build/sun/README | 26 +
build/sun/pcp.xml | 2
build/sun/postinstall | 11
build/sun/preremove | 8
build/tar/README | 4
configure.in | 114 +++++-
man/man1/pmloglabel.1 | 6
man/man3/pmregisterderived.3 | 2
src/cpan/PMDA/PMDA.xs | 2
src/cpan/PMDA/local.c | 2
src/dbpmda/src/pmda.c | 4
src/include/.gitignore | 2
src/include/GNUmakefile | 10
src/include/buildrules | 2
src/include/impl.h | 13
src/include/platform_defs.h.in | 608 -----------------------------------
src/include/platform_header.h.in | 599 ++++++++++++++++++++++++++++++++++
src/include/platform_trailer.in | 14
src/libpcp/src/config.c | 3
src/libpcp/src/connect.c | 2
src/libpcp/src/connectlocal.c | 2
src/libpcp/src/derive.c | 6
src/libpcp/src/derive_fetch.c | 2
src/libpcp/src/events.c | 2
src/libpcp/src/logconnect.c | 2
src/libpcp/src/logportmap.c | 8
src/libpcp/src/logutil.c | 8
src/libpcp/src/loop.c | 8
src/libpcp/src/p_result.c | 4
src/libpcp/src/pdu.c | 4
src/libpcp/src/pmns.c | 3
src/libpcp/src/spec.c | 7
src/libpcp/src/util.c | 4
src/libpcp/src/win32.c | 2
src/libpcp_gui/src/record.c | 6
src/libpcp_gui/src/timeclient.c | 2
src/libpcp_http/src/http_fetcher.c | 3
src/libpcp_mmv/src/mmv_stats.c | 2
src/libpcp_pmda/src/open.c | 2
src/libpcp_trace/src/pdu.c | 6
src/pmafm/mkaf | 14
src/pmafm/pmafm | 25 -
src/pmcd/rc-proc.sh | 140 +++-----
src/pmcd/src/agent.c | 2
src/pmcd/src/config.c | 40 +-
src/pmcd/src/dopdus.c | 2
src/pmcd/src/pmcd.c | 8
src/pmcd/src/util.c | 2
src/pmconfig/pmconfig.c | 3
src/pmdas/etw/tdhconsume.c | 3
src/pmdas/hotproc/src/hotproc.c | 10
src/pmdas/linux/cgroups.c | 2
src/pmdas/linux/interrupts.c | 2
src/pmdas/lmsensors/lmsensors.c | 115 +++---
src/pmdas/logger/util.c | 2
src/pmdas/mmv/mmv.c | 6
src/pmdas/mmv/mmvdump.c | 2
src/pmdas/sample/src/sample.c | 2
src/pmdas/shping/shping.c | 6
src/pmdas/solaris/zpool.c | 6
src/pmdas/solaris/zpool_perdisk.c | 6
src/pmdas/summary/pmda.c | 2
src/pmdas/summary/summary.c | 2
src/pmdas/weblog/pmda.c | 4
src/pmdumplog/pmdumplog.c | 2
src/pmie/src/act.sk | 8
src/pmie/src/dstruct.c | 7
src/pmie/src/pmie.c | 8
src/pmieconf/cpu/localdefs | 12
src/pmieconf/filesys/localdefs | 16
src/pmieconf/memory/localdefs | 13
src/pmieconf/percpu/localdefs | 12
src/pmieconf/pernetif/localdefs | 19 +
src/pmlogextract/pmlogextract.c | 23 -
src/pmlogger/pmlogger.c | 2
src/pmlogger/ports.c | 4
src/pmlogger/preamble.c | 6
src/pmloglabel/pmloglabel.c | 13
src/pmlogreduce/logio.c | 6
src/pmproxy/pmproxy.c | 2
src/procmemstat/procmemstat.c | 2
src/win32ctl/eventlog/pcp-eventlog.c | 2
src/win32ctl/setevent/pcp-setevent.c | 10
83 files changed, 1136 insertions(+), 954 deletions(-)
commit 3786f2ac85a5d049ccc8acf308ff5a5cbbf95343
Author: Ken McDonell <kenj@xxxxxxxxxxxxxxxx>
Date: Tue Aug 23 15:19:14 2011 +1000
Fix compiler warnings and remove dead code
commit 8b802274d08a23838abd4a1785d97c0bffd39636
Author: Ken McDonell <kenj@xxxxxxxxxxxxxxxx>
Date: Tue Aug 23 15:17:29 2011 +1000
rc-proc.sh - fix Gentoo issues
a) fix bug with rc-update typo
b) add incomplete code and remove TODO annotations
commit e924d885177f84eddb157cb86d2ca91d512604cb
Author: Ken McDonell <kenj@xxxxxxxxxxxxxxxx>
Date: Tue Aug 23 15:15:47 2011 +1000
pmloglabel - remove dead code behind unimplemented -s option
Compiler warning analysis reveales dead code behind the -s option
that apparently was never implemented. Remove the dead code and
all references to the -s option.
commit f7dde7a0750daaad4ad8d6e05f693a97ccc35d4e
Author: Ken McDonell <kenj@xxxxxxxxxxxxxxxx>
Date: Mon Aug 22 08:31:51 2011 +1000
Perl PMDA wrapper - small bug
Data type was wrong for store_callback() when the data type is PM_TYPE_64
... pretty unlikely that anyone has seen this in the wild, found only by
accidental code inspection investigating something totally different.
commit 4c445ae8bafdfbd7b365a6472dd12049134c723f
Author: Ken McDonell <kenj@xxxxxxxxxxxxxxxx>
Date: Mon Aug 22 08:29:24 2011 +1000
Wind back one of the pid_t related changes
ill_pid (in the archive log label) does not need to be __int32_t ... our
configure script ensures int MUST be a 32-bit integer, so the (previous)
type of int will work fine for ill_pid.
commit 392dc4deeeba11bee4024af9ea55de77eeced3c8
Author: Ken McDonell <kenj@xxxxxxxxxxxxxxxx>
Date: Sat Aug 20 20:24:17 2011 +1000
Cleanup pid_t usage
A lot of small changes across many source files to cleanup how we
handle pid_t data types and process ids hiding in integer variables.
Driven by compilation warnings on some platforms, but most of these
are latent problems that were just lurking and waiting to bite us in
the future.
Most critical changes is to enlist configure assistance to determine the
correct printf format specification for a value of type pid_t. This
requires splitting platform_dev.in into platform_header.h.in and
platform_trailer.in, and typical printf construct now looks like
printf("... pid=%" FMT_PID " more fmt", ..., pid, ...);
Changes involve making the printf changes above and explicit casting
when int -> pid_t or pid_t -> int conversions are being done ...
+ audit getpid() and fork() calls everywhere
+ __pmSendCreds() 2nd arg (from) is int, although often value is of type
pid_t in the caller
+ ditto for the 2nd arg (from) of __pmSendError()
+ __pmProcessExists() 1st arg (pid) is of type pid_t
+ __pmProcessTerminate() 1st arg (pid) is of type pid_t
+ __pmProcessCreate() return value is of type pid_t
+ ll_pid element of pmLoglabel is of type pid_t
+ audit pmLoopRegisterChild - 1st arg (pid) is of type pid_t, return
value is of type pid_t and 1st arg (pid) of callback is of type pid_t
+ ill_pid element of __pmLogLabel is of type __int32_t
+ pid element of pmRecordHost is of type pid_t
+ agentPid element of PMDA structures in pmcd is of type pid_t
+ __pmMakeAuthCookie() 2nd arg (clientId) is of type pid_t
+ __pmLogFindLocalPorts() 1st arg (pid) is of type int
+ pid element of __pmLogPort is of type int
+ process element of mmv_disk_header_t is of type __int32_t
+ from element of __pmPDUHdr is of type __int32_t
+ from element of __pmTracePDUHdr is of type __int32_t
commit 586f1c09e86b23c879fcb35f2dfacd7d4f40a7cf
Author: Ken McDonell <kenj@xxxxxxxxxxxxxxxx>
Date: Wed Aug 17 20:30:18 2011 +1000
pmieconf - tuning of rules to match available Solaris metrics
commit 65bc3600aa439eebbfcc7b0952de66456ad63689
Author: Ken McDonell <kenj@xxxxxxxxxxxxxxxx>
Date: Wed Aug 17 14:33:54 2011 +1000
Generic problems found on Solaris
Fix the following:
- Make sure <strings.h> is included when (a) we are using index()
or rindex() and (b) HAVE_STRINGS_H is defined. The problem is
benign on most platforms because of the strange relationship
between <string.h> and <strings.h>, but on Solaris caused
compilation warnings and then code failures in QA.
- Make sure prinf using "...%p..." always includes the ugly string
contatenated format "..." PRINTF_P_PFX "%p..." so that the address
is _always_ prefixed with 0x ... our QA depends on this.
commit 819cc49bf9ebe08b7c286c8d75081024183f3003
Author: Ken McDonell <kenj@xxxxxxxxxxxxxxxx>
Date: Wed Aug 17 14:26:50 2011 +1000
solaris PMDA - libzfs API variants
By inspection of the Solaris source code history, ZPOOL_CONFIG_VDEV_STATS
is (an older?) alias for ZPOOL_CONFIG_STATS.
Make the PMDA code compile in both cases.
Problem reproduced on OpenIndiana (build 148, assembled 29 Nov 2010,
Sun OS 5.11 base) in the QA Farm following an earlier report from Jeff
Sipek when PCP 3.5.5 was released.
commit 0f09a3b5ef0699566f7c1b1f6b584304d788d343
Author: Ken McDonell <kenj@xxxxxxxxxxxxxxxx>
Date: Wed Aug 17 14:25:36 2011 +1000
rc-proc.sh - fix rc/init platform specific code
Clean up after adding proper support for svc* tools for Solaris.
commit 975557afda4f50caefec6616b7f1e4503af0130a
Author: Ken McDonell <kenj@xxxxxxxxxxxxxxxx>
Date: Wed Aug 17 14:24:37 2011 +1000
pmie - guard against NULL deref
Task dump would sometimes SEGV on Solaris.
commit 8461b8900d25eeb626b711875a1cc33fbf59c486
Author: Ken McDonell <kenj@xxxxxxxxxxxxxxxx>
Date: Wed Aug 17 14:22:37 2011 +1000
pmregisterderived.3 - fix tbl typo
Found by Solaris catman(1)!!
commit 8b64c567620efa4cedc57b39e345f2fecfdc7146
Author: Ken McDonell <kenj@xxxxxxxxxxxxxxxx>
Date: Wed Aug 17 14:21:53 2011 +1000
build/tar/README - minor editorial corrections
commit 7b95b23c0bad39d26c0a3750bfb317ea8c9d09f3
Author: Ken McDonell <kenj@xxxxxxxxxxxxxxxx>
Date: Wed Aug 17 14:19:50 2011 +1000
Solaris build helper scripts
Add README to explain what's going on.
Tweak the preremove and postinstall scripts slightly (make sure
PATH includes /usr/sbin and don't muck with installed PMNS).
commit df6443273853a437271f7499c7aa63e084cadcbd
Author: Ken McDonell <kenj@xxxxxxxxxxxxxxxx>
Date: Wed Aug 17 14:17:02 2011 +1000
build/sun/pcp.xml rename pcp/pmcd -> pcp/pcp
This will change in PCP 4.0, but for the moment naming the service
that starts pmcd and (optionally) pmlogger to be pcp makes it more
consistent with all the other platforms.
commit 48a704be5ca2877c5c3d23733d70f6eef08ec0fe
Author: Ken McDonell <kenj@xxxxxxxxxxxxxxxx>
Date: Wed Aug 17 09:07:29 2011 +1000
pmafm, mkaf - rework magic(1) workaround
Cleaned up the check for magic numbers in PCP archives after Solaris
failures and removed all the PCP_PLATFORM dependencies.
|