pcp
[Top] [All Lists]

pcp updates

To: pcp@xxxxxxxxxxx
Subject: pcp updates
From: Ken McDonell <kenj@xxxxxxxxxxxxxxxx>
Date: Tue, 23 Aug 2011 15:24:37 +1000
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.



<Prev in Thread] Current Thread [Next in Thread>