pcp
[Top] [All Lists]

pcp updates: python + pmstat fixes

To: pcp@xxxxxxxxxxx
Subject: pcp updates: python + pmstat fixes
From: Nathan Scott <nathans@xxxxxxxxxx>
Date: Fri, 9 Nov 2012 02:00:08 -0500 (EST)
Reply-to: Nathan Scott <nathans@xxxxxxxxxx>
Changes committed to git://oss.sgi.com/pcp/pcp.git dev

 src/pmstat/pmstat.c |    4 ++--
 src/python/pcp.py   |    8 ++++----
 2 files changed, 6 insertions(+), 6 deletions(-)

commit 187140f124c77f06154ff9f26ad433f91c550500
Author: Nathan Scott <nathans@xxxxxxxxxx>
Date:   Fri Nov 9 17:58:39 2012 +1100

    Fix pmstat handling of odd corner case in CPU metrics
    
    Came across a machine which was exhibiting a kernel bug,
    possibly in the Radeon driver, such that all CPU time was
    being consumed in the kernel.  Its likely interrupts were
    disabled for extended periods too, as on a 1sec sampling
    interval, pmstat would often observe no change in the CPU
    time metrics.
    
    When this unusual situation arises, pmstat attempts to
    divide by zero and takes sigfpe - guard against this, and
    handle it as if no values were observed (which is fairly
    close to true).

commit a50212140dea611cb92b8626549f1140ae80c393
Author: Nathan Scott <nathans@xxxxxxxxxx>
Date:   Fri Nov 9 16:10:46 2012 +1100

    Correct the python ctype used for pmAtomValue 32bit integers
    
    The Red Hat DTS testing folk have uncovered a bug using PCP
    QA test 707, in the python PMAPI wrapper, which results in a
    sigsegv in the test_pcp.python code.
    
    It turns out we've been using the wrong sized ctype for the
    32bit integer values, and they ended up being assigned into
    64bits by accident.  This was harmless on (LE) x86_64 but on
    powerpc64 (BE), life became interesting.  Small numbers like
    32 (e.g. hinv.ncpus) became very big numbers, and we end up
    walking off the end of pythons address space when iterating
    over each CPU.
    
    Red Hat bz #873751.

<Prev in Thread] Current Thread [Next in Thread>
  • pcp updates: python + pmstat fixes, Nathan Scott <=