From nscott@aconex.com Mon Jun 1 01:19:29 2009 X-Spam-Checker-Version: SpamAssassin 3.3.0-rupdated (updated) on oss.sgi.com X-Spam-Level: X-Spam-Status: No, score=-2.5 required=5.0 tests=AWL,BAYES_00 autolearn=ham version=3.3.0-rupdated Received: from cuda.sgi.com (cuda3.sgi.com [192.48.176.15]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id n516JTjm243859 for ; Mon, 1 Jun 2009 01:19:29 -0500 X-ASG-Debug-ID: 1243837156-55cc030b0000-S8gJnT X-Barracuda-URL: http://cuda.sgi.com:80/cgi-bin/mark.cgi Received: from postoffice2.aconex.com (localhost [127.0.0.1]) by cuda.sgi.com (Spam Firewall) with ESMTP id B50B61A579FC for ; Sun, 31 May 2009 23:19:17 -0700 (PDT) Received: from postoffice2.aconex.com (mail.aconex.com [203.89.202.182]) by cuda.sgi.com with ESMTP id SzxlVu2ytzN9zmdG for ; Sun, 31 May 2009 23:19:17 -0700 (PDT) Received: from postoffice.aconex.com (localhost [127.0.0.1]) by postoffice2.aconex.com (Spam Firewall) with ESMTP id 104F45CE94C for ; Mon, 1 Jun 2009 16:19:16 +1000 (EST) Received: from postoffice.aconex.com (postoffice.yarra.acx [192.168.102.1]) by postoffice2.aconex.com with ESMTP id cl97GmNPAH6nUUZu for ; Mon, 01 Jun 2009 16:19:16 +1000 (EST) Received: from gatekeeper.aconex.com (gatekeeper.yarra.acx [192.168.102.10]) by postoffice.aconex.com (Postfix) with ESMTP id 89C9DA50118 for ; Mon, 1 Jun 2009 16:19:03 +1000 (EST) Received: from localhost (localhost.localdomain [127.0.0.1]) by gatekeeper.aconex.com (Postfix) with ESMTP id 204CF4FD85 for ; Mon, 1 Jun 2009 16:26:40 +1000 (EST) X-Virus-Scanned: ClamAV version 0.94.2, clamav-milter version 0.94.2 on oss.sgi.com X-Virus-Scanned: amavisd-new at gatekeeper.yarra.acx Received: from gatekeeper.aconex.com ([127.0.0.1]) by localhost (gatekeeper.aconex.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id XUjKwEdm55k9 for ; Mon, 1 Jun 2009 16:26:36 +1000 (EST) Received: from mail-au.aconex.com (mail-au.aconex.com [192.168.102.12]) by gatekeeper.aconex.com (Postfix) with ESMTP id 3F8354FD82 for ; Mon, 1 Jun 2009 16:26:36 +1000 (EST) Date: Mon, 1 Jun 2009 16:19:11 +1000 (EST) From: Nathan Scott To: pcp@oss.sgi.com Message-ID: <1662990479.5729641243837151021.JavaMail.root@mail-au.aconex.com> X-ASG-Orig-Subj: pcp updates Subject: pcp updates MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Originating-IP: [211.28.139.193] X-Mailer: Zimbra 5.0.13_GA_2791.RHEL5_64 (ZimbraWebClient - SAF3 (Mac)/5.0.13_GA_2791.RHEL5_64) X-Barracuda-Connect: mail.aconex.com[203.89.202.182] X-Barracuda-Start-Time: 1243837158 X-Barracuda-Bayes: INNOCENT GLOBAL 0.0000 1.0000 -2.0210 X-Barracuda-Virus-Scanned: by cuda.sgi.com at sgi.com X-Barracuda-Spam-Score: -1.52 X-Barracuda-Spam-Status: No, SCORE=-1.52 using per-user scores of TAG_LEVEL=2.0 QUARANTINE_LEVEL=1000.0 KILL_LEVEL=2.1 tests=BSF_RULE7568M X-Barracuda-Spam-Report: Code version 3.2, rules version 3.2.1.27290 Rule breakdown below pts rule name description ---- ---------------------- -------------------------------------------------- 0.50 BSF_RULE7568M Custom Rule 7568M X-Virus-Status: Clean Changes committed to git://oss.sgi.com/nathans/pcp.git build/rpm/GNUmakefile | 2 src/cpan/PMDA/local.c | 1 src/pmdas/GNUmakefile | 2 src/pmdas/mmv/GNUmakefile | 4 src/pmdas/mmv/UpdateNames | 34 - src/pmdas/mmv/mmv.c | 5 src/pmdas/zimbra/GNUmakefile | 45 ++ src/pmdas/zimbra/Install | 32 + src/pmdas/zimbra/Remove | 25 + src/pmdas/zimbra/pmdazimbra.pl | 804 +++++++++++++++++++++++++++++++++++++++-- src/pmns/ReplacePmnsSubtree | 7 src/pmns/stdpmid.pcp | 1 12 files changed, 877 insertions(+), 85 deletions(-) commit dc01ad409d6c05d375b8152d715a0f09212aa3e4 Author: Nathan Scott Date: Mon Jun 1 16:04:17 2009 +1000 Remove a spurious chdir() call in Perl PMDA namespace code. commit 71dfe2018db02e447bf6261213cfd16ab1321d3d Author: Nathan Scott Date: Mon Jun 1 16:03:25 2009 +1000 Improve metric names for some Zimbra metrics. commit 0762f04bdd97bab3c3c618d29793c2dd88ee2679 Author: Nathan Scott Date: Mon Jun 1 15:30:10 2009 +1000 Initial version of the Zimbra Collaboration Suite PMDA. The Zimbra server exports statistics into CSV files while its running. Some of these we have covered inside existing agents (cpu,vm,mysql) all the rest are now exported by this new PMDA, and it covers various aspects of Zimbra operation including IMAP, SOAP, LDAP, MTA queue, JVM internals, etc. There's some scope to do a pmimport plugin here too; Zimbra keeps historical CSV files too, but not something I need at the moment. commit 9436ae52a8d87b60525cf0c4e5a4a37fc3631abd Author: Nathan Scott Date: Mon Jun 1 15:24:48 2009 +1000 Additional options for rpms generated by cpanflute2. Default to build version -1 (not -8) on rpms. Add on the --noperlreqs option, so rpms can be transfered to machines of lower Perl rev than the build host. Created the rpm in directory specified on the command line, full path; better reporting results. commit 1b67ffa9c6512d89f586a5f0720515912eb754a9 Author: Nathan Scott Date: Mon Jun 1 08:57:18 2009 +1000 Use ReplacePmnsSubtree instead of UpdateNames in MMV PMDA. Addresses locking issues around updating namespace files, and having signals appropriately blocked in case of interruption. Add PCP_DIR env variable usage into ReplacePmnsSubtree also. From wwwrun@oss.sgi.com Mon Jun 1 02:38:13 2009 X-Spam-Checker-Version: SpamAssassin 3.3.0-rupdated (updated) on oss.sgi.com X-Spam-Level: X-Spam-Status: No, score=-1.3 required=5.0 tests=ALL_TRUSTED,AWL,BAYES_00 autolearn=ham version=3.3.0-rupdated Received: from oss.sgi.com (localhost [127.0.0.1]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id n517cCrG246938 for ; Mon, 1 Jun 2009 02:38:12 -0500 Received: (from wwwrun@localhost) by oss.sgi.com (8.14.3/8.14.3/Submit) id n517cCuI246937; Mon, 1 Jun 2009 02:38:12 -0500 Date: Mon, 1 Jun 2009 02:38:12 -0500 Message-Id: <200906010738.n517cCuI246937@oss.sgi.com> From: bugzilla-daemon@oss.sgi.com To: pcp@oss.sgi.com Subject: [Bug 839] PCP GUI failed to build w/ GCC 4.4.0 X-Bugzilla-Reason: CC X-Bugzilla-Type: newchanged X-Bugzilla-Watch-Reason: None X-Bugzilla-Classification: Unclassified X-Bugzilla-Product: pcp X-Bugzilla-Component: pcp-gui X-Bugzilla-Keywords: X-Bugzilla-Severity: major X-Bugzilla-Who: peter.kovar@gmail.com X-Bugzilla-Status: NEW X-Bugzilla-Priority: P5 X-Bugzilla-Assigned-To: nathans@debian.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Changed-Fields: In-Reply-To: References: Auto-Submitted: auto-generated Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 http://oss.sgi.com/bugzilla/show_bug.cgi?id=3D839 --- Comment #2 from Peter Kov=C3=A1=C5=99 2009-06-= 01 02:38:10 CST --- It does, but adds warning for every conversion, such as p =3D "none - botched in Save!"; fileformat.cpp: In static member function =E2=80=98static void SaveViewDialog::saveChart(FILE*, Chart*, bool)=E2=80=99: fileformat.cpp:1207: warning: deprecated conversion from string constant to =E2=80=98char*=E2=80=99 fileformat.cpp:1210: warning: deprecated conversion from string constant to =E2=80=98char*=E2=80=99 fileformat.cpp:1213: warning: deprecated conversion from string constant to =E2=80=98char*=E2=80=99 fileformat.cpp:1216: warning: deprecated conversion from string constant to =E2=80=98char*=E2=80=99 fileformat.cpp:1219: warning: deprecated conversion from string constant to =E2=80=98char*=E2=80=99 fileformat.cpp:1222: warning: deprecated conversion from string constant to =E2=80=98char*=E2=80=99 --=20 Configure bugmail: http://oss.sgi.com/bugzilla/userprefs.cgi?tab=3Demail ------- You are receiving this mail because: ------- You are on the CC list for the bug.= From wwwrun@oss.sgi.com Mon Jun 1 13:26:40 2009 X-Spam-Checker-Version: SpamAssassin 3.3.0-rupdated (updated) on oss.sgi.com X-Spam-Level: X-Spam-Status: No, score=-1.2 required=5.0 tests=ALL_TRUSTED,AWL,BAYES_00, J_CHICKENPOX_63 autolearn=no version=3.3.0-rupdated Received: from oss.sgi.com (localhost [127.0.0.1]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id n51IQeDV029434 for ; Mon, 1 Jun 2009 13:26:40 -0500 Received: (from wwwrun@localhost) by oss.sgi.com (8.14.3/8.14.3/Submit) id n51IQen4029432; Mon, 1 Jun 2009 13:26:40 -0500 Date: Mon, 1 Jun 2009 13:26:40 -0500 Message-Id: <200906011826.n51IQen4029432@oss.sgi.com> From: bugzilla-daemon@oss.sgi.com To: pcp@oss.sgi.com Subject: [Bug 833] mmv PMDA succeptible to namespace locking issues X-Bugzilla-Reason: CC X-Bugzilla-Type: newchanged X-Bugzilla-Watch-Reason: None X-Bugzilla-Classification: Unclassified X-Bugzilla-Product: pcp X-Bugzilla-Component: pcp X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: mort@sgi.com X-Bugzilla-Status: RESOLVED X-Bugzilla-Priority: P5 X-Bugzilla-Assigned-To: mort@sgi.com X-Bugzilla-Target-Milestone: --- X-Bugzilla-Changed-Fields: Status Resolution In-Reply-To: References: Auto-Submitted: auto-generated Content-Type: text/plain; charset="UTF-8" MIME-Version: 1.0 http://oss.sgi.com/bugzilla/show_bug.cgi?id=833 Martin Hicks changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |FIXED --- Comment #1 from Martin Hicks 2009-06-01 13:26:39 CST --- commit 1b67ffa9c6512d89f586a5f0720515912eb754a9 -- Configure bugmail: http://oss.sgi.com/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug. From wwwrun@oss.sgi.com Mon Jun 1 22:14:14 2009 X-Spam-Checker-Version: SpamAssassin 3.3.0-rupdated (updated) on oss.sgi.com X-Spam-Level: X-Spam-Status: No, score=-1.2 required=5.0 tests=ALL_TRUSTED,AWL,BAYES_00, J_CHICKENPOX_63 autolearn=no version=3.3.0-rupdated Received: from oss.sgi.com (localhost [127.0.0.1]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id n523EE51067298 for ; Mon, 1 Jun 2009 22:14:14 -0500 Received: (from wwwrun@localhost) by oss.sgi.com (8.14.3/8.14.3/Submit) id n523EEBg067297; Mon, 1 Jun 2009 22:14:14 -0500 Date: Mon, 1 Jun 2009 22:14:14 -0500 Message-Id: <200906020314.n523EEBg067297@oss.sgi.com> From: bugzilla-daemon@oss.sgi.com To: pcp@oss.sgi.com Subject: [Bug 839] PCP GUI failed to build w/ GCC 4.4.0 X-Bugzilla-Reason: CC X-Bugzilla-Type: newchanged X-Bugzilla-Watch-Reason: None X-Bugzilla-Classification: Unclassified X-Bugzilla-Product: pcp X-Bugzilla-Component: pcp-gui X-Bugzilla-Keywords: X-Bugzilla-Severity: major X-Bugzilla-Who: nathans@debian.org X-Bugzilla-Status: ASSIGNED X-Bugzilla-Priority: P5 X-Bugzilla-Assigned-To: nathans@debian.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Changed-Fields: Status In-Reply-To: References: Auto-Submitted: auto-generated Content-Type: text/plain; charset="UTF-8" MIME-Version: 1.0 http://oss.sgi.com/bugzilla/show_bug.cgi?id=839 Nathan Scott changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED --- Comment #3 from Nathan Scott 2009-06-01 22:14:12 CST --- Thanks Peter, I'll merge a fix later today (affects both stable and master branches). -- Configure bugmail: http://oss.sgi.com/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug. From nscott@aconex.com Tue Jun 2 02:49:49 2009 X-Spam-Checker-Version: SpamAssassin 3.3.0-rupdated (updated) on oss.sgi.com X-Spam-Level: X-Spam-Status: No, score=-2.3 required=5.0 tests=AWL,BAYES_00 autolearn=ham version=3.3.0-rupdated Received: from cuda.sgi.com (cuda2.sgi.com [192.48.176.25]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id n527nnYQ082742 for ; Tue, 2 Jun 2009 02:49:49 -0500 X-ASG-Debug-ID: 1243929004-155102c50000-S8gJnT X-Barracuda-URL: http://cuda.sgi.com:80/cgi-bin/mark.cgi Received: from postoffice2.aconex.com (localhost [127.0.0.1]) by cuda.sgi.com (Spam Firewall) with ESMTP id 02CEA2C1137 for ; Tue, 2 Jun 2009 00:50:04 -0700 (PDT) Received: from postoffice2.aconex.com (mail.aconex.com [203.89.202.182]) by cuda.sgi.com with ESMTP id 3Xm7Bn3saXzjz49j for ; Tue, 02 Jun 2009 00:50:04 -0700 (PDT) Received: from postoffice.aconex.com (localhost [127.0.0.1]) by postoffice2.aconex.com (Spam Firewall) with ESMTP id E70D35D70AA for ; Tue, 2 Jun 2009 17:50:02 +1000 (EST) Received: from postoffice.aconex.com (postoffice.yarra.acx [192.168.102.1]) by postoffice2.aconex.com with ESMTP id lchInELxMlin3JjI for ; Tue, 02 Jun 2009 17:50:02 +1000 (EST) Received: from gatekeeper.aconex.com (gatekeeper.yarra.acx [192.168.102.10]) by postoffice.aconex.com (Postfix) with ESMTP id 00267A50268 for ; Tue, 2 Jun 2009 17:49:50 +1000 (EST) Received: from localhost (localhost.localdomain [127.0.0.1]) by gatekeeper.aconex.com (Postfix) with ESMTP id 8781B4FD84 for ; Tue, 2 Jun 2009 17:57:35 +1000 (EST) X-Virus-Scanned: ClamAV version 0.94.2, clamav-milter version 0.94.2 on oss.sgi.com X-Virus-Scanned: amavisd-new at gatekeeper.yarra.acx Received: from gatekeeper.aconex.com ([127.0.0.1]) by localhost (gatekeeper.aconex.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id S3WAPRE07AzO for ; Tue, 2 Jun 2009 17:57:30 +1000 (EST) Received: from mail-au.aconex.com (mail-au.aconex.com [192.168.102.12]) by gatekeeper.aconex.com (Postfix) with ESMTP id 023054FD82 for ; Tue, 2 Jun 2009 17:57:30 +1000 (EST) Date: Tue, 2 Jun 2009 17:49:57 +1000 (EST) From: Nathan Scott To: pcp@oss.sgi.com Message-ID: <1989658400.5790031243928997193.JavaMail.root@mail-au.aconex.com> X-ASG-Orig-Subj: pcp updates Subject: pcp updates MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Originating-IP: [203.89.192.141] X-Mailer: Zimbra 5.0.13_GA_2791.RHEL5_64 (ZimbraWebClient - [unknown] (Linux)/5.0.13_GA_2791.RHEL5_64) X-Barracuda-Connect: mail.aconex.com[203.89.202.182] X-Barracuda-Start-Time: 1243929006 X-Barracuda-Bayes: INNOCENT GLOBAL 0.0000 1.0000 -2.0210 X-Barracuda-Virus-Scanned: by cuda.sgi.com at sgi.com X-Barracuda-Spam-Score: -2.02 X-Barracuda-Spam-Status: No, SCORE=-2.02 using per-user scores of TAG_LEVEL=2.0 QUARANTINE_LEVEL=1000.0 KILL_LEVEL=2.1 tests= X-Barracuda-Spam-Report: Code version 3.2, rules version 3.2.1.27360 Rule breakdown below pts rule name description ---- ---------------------- -------------------------------------------------- X-Virus-Status: Clean Changes committed to git://oss.sgi.com/nathans/pcp.git src/cpan/PMDA/Changes | 4 src/cpan/PMDA/PMDA.pm | 2 src/cpan/PMDA/local.c | 101 ++++++++++-------- src/cpan/PMDA/local.h | 1 src/pmdas/zimbra/.gitignore | 2 src/pmdas/zimbra/pmdazimbra.pl | 224 ++++++++++++++++++++++++++--------------- 6 files changed, 206 insertions(+), 128 deletions(-) commit 00a511ef2846e33ee213d58265c8a4b3660e7c00 Author: Nathan Scott Date: Tue Jun 2 17:40:29 2009 +1000 Add git ignore file for Zimbra PMDA files. commit ba5a68ae2ffed27116cb427be634e6760233875f Author: Nathan Scott Date: Tue Jun 2 17:25:09 2009 +1000 Improvements and fixes to the Zimbra PMDA. Correctly handles the instance domain metrics now, some regexs had a extra space at the end which wasn't in the data file, do the proc metrics more efficiently by splicing the array during reading to match the expected fetch direct-array-offsets, add more diagnostics, and finally add timestamps metrics showing the date/time of last read on the tailed data files. commit fec9f7eb08643201067d68fefee2c1ba9ca9b60e Author: Nathan Scott Date: Tue Jun 2 17:21:52 2009 +1000 Bump Perl PMDA interface version for tail mode fixes. Implemented log file rotation and socket reconnect handling, and generally improved the file "tail" mode of operation. From wwwrun@oss.sgi.com Tue Jun 2 18:51:55 2009 X-Spam-Checker-Version: SpamAssassin 3.3.0-rupdated (updated) on oss.sgi.com X-Spam-Level: X-Spam-Status: No, score=-1.3 required=5.0 tests=ALL_TRUSTED,AWL,BAYES_00 autolearn=ham version=3.3.0-rupdated Received: from oss.sgi.com (localhost [127.0.0.1]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id n52Npti3138938 for ; Tue, 2 Jun 2009 18:51:55 -0500 Received: (from wwwrun@localhost) by oss.sgi.com (8.14.3/8.14.3/Submit) id n52Nptj7138937; Tue, 2 Jun 2009 18:51:55 -0500 Date: Tue, 2 Jun 2009 18:51:55 -0500 Message-Id: <200906022351.n52Nptj7138937@oss.sgi.com> From: bugzilla-daemon@oss.sgi.com To: pcp@oss.sgi.com Subject: [Bug 839] PCP GUI failed to build w/ GCC 4.4.0 X-Bugzilla-Reason: CC X-Bugzilla-Type: newchanged X-Bugzilla-Watch-Reason: None X-Bugzilla-Classification: Unclassified X-Bugzilla-Product: pcp X-Bugzilla-Component: pcp-gui X-Bugzilla-Keywords: X-Bugzilla-Severity: major X-Bugzilla-Who: nathans@debian.org X-Bugzilla-Status: RESOLVED X-Bugzilla-Priority: P5 X-Bugzilla-Assigned-To: nathans@debian.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Changed-Fields: Status Resolution In-Reply-To: References: Auto-Submitted: auto-generated Content-Type: text/plain; charset="UTF-8" MIME-Version: 1.0 http://oss.sgi.com/bugzilla/show_bug.cgi?id=839 Nathan Scott changed: What |Removed |Added ---------------------------------------------------------------------------- Status|ASSIGNED |RESOLVED Resolution| |FIXED --- Comment #4 from Nathan Scott 2009-06-02 18:51:53 CST --- This is fixed in the master & stable branches, and will be released in 1.4.3 whenever that comes around (sometime in the next few weeks). cheers. -- Configure bugmail: http://oss.sgi.com/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug. From nscott@aconex.com Wed Jun 3 00:22:14 2009 X-Spam-Checker-Version: SpamAssassin 3.3.0-rupdated (updated) on oss.sgi.com X-Spam-Level: X-Spam-Status: No, score=-2.2 required=5.0 tests=AWL,BAYES_00,J_CHICKENPOX_34 autolearn=no version=3.3.0-rupdated Received: from cuda.sgi.com (cuda2.sgi.com [192.48.176.25]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id n535MD1q158111 for ; Wed, 3 Jun 2009 00:22:14 -0500 X-ASG-Debug-ID: 1244006549-192903e70000-S8gJnT X-Barracuda-URL: http://cuda.sgi.com:80/cgi-bin/mark.cgi Received: from postoffice2.aconex.com (localhost [127.0.0.1]) by cuda.sgi.com (Spam Firewall) with ESMTP id 198D22CA500 for ; Tue, 2 Jun 2009 22:22:29 -0700 (PDT) Received: from postoffice2.aconex.com (mail.aconex.com [203.89.202.182]) by cuda.sgi.com with ESMTP id fi8cV3i5u80dqa07 for ; Tue, 02 Jun 2009 22:22:29 -0700 (PDT) Received: from postoffice.aconex.com (localhost [127.0.0.1]) by postoffice2.aconex.com (Spam Firewall) with ESMTP id 78A185DAA9E for ; Wed, 3 Jun 2009 15:22:28 +1000 (EST) Received: from postoffice.aconex.com (postoffice.yarra.acx [192.168.102.1]) by postoffice2.aconex.com with ESMTP id Eq0Inc42Q2xKNH59 for ; Wed, 03 Jun 2009 15:22:28 +1000 (EST) Received: from gatekeeper.aconex.com (gatekeeper.yarra.acx [192.168.102.10]) by postoffice.aconex.com (Postfix) with ESMTP id 0E412A50265 for ; Wed, 3 Jun 2009 15:22:15 +1000 (EST) Received: from localhost (localhost.localdomain [127.0.0.1]) by gatekeeper.aconex.com (Postfix) with ESMTP id 2EB044FD84 for ; Wed, 3 Jun 2009 15:30:08 +1000 (EST) X-Virus-Scanned: ClamAV version 0.94.2, clamav-milter version 0.94.2 on oss.sgi.com X-Virus-Scanned: amavisd-new at gatekeeper.yarra.acx Received: from gatekeeper.aconex.com ([127.0.0.1]) by localhost (gatekeeper.aconex.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id jSpPKcMIRt9o for ; Wed, 3 Jun 2009 15:30:04 +1000 (EST) Received: from mail-au.aconex.com (mail-au.aconex.com [192.168.102.12]) by gatekeeper.aconex.com (Postfix) with ESMTP id 125654FD86 for ; Wed, 3 Jun 2009 15:30:04 +1000 (EST) Date: Wed, 3 Jun 2009 15:22:24 +1000 (EST) From: Nathan Scott To: pcp@oss.sgi.com Message-ID: <1752503945.5841581244006544113.JavaMail.root@mail-au.aconex.com> X-ASG-Orig-Subj: pcp updates Subject: pcp updates MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Originating-IP: [203.89.192.141] X-Mailer: Zimbra 5.0.13_GA_2791.RHEL5_64 (ZimbraWebClient - [unknown] (Linux)/5.0.13_GA_2791.RHEL5_64) X-Barracuda-Connect: mail.aconex.com[203.89.202.182] X-Barracuda-Start-Time: 1244006551 X-Barracuda-Bayes: INNOCENT GLOBAL 0.0000 1.0000 -2.0210 X-Barracuda-Virus-Scanned: by cuda.sgi.com at sgi.com X-Barracuda-Spam-Score: -1.52 X-Barracuda-Spam-Status: No, SCORE=-1.52 using per-user scores of TAG_LEVEL=2.0 QUARANTINE_LEVEL=1000.0 KILL_LEVEL=2.1 tests=BSF_RULE_7582B X-Barracuda-Spam-Report: Code version 3.2, rules version 3.2.1.27443 Rule breakdown below pts rule name description ---- ---------------------- -------------------------------------------------- 0.50 BSF_RULE_7582B Custom Rule 7582B X-Virus-Status: Clean Changes committed to git://oss.sgi.com/nathans/pcp.git src/libpcp/src/config.c | 2 - src/pmdas/windows/GNUmakefile | 2 - src/pmdas/windows/fetch.c | 24 +++++++++++- src/pmdas/windows/hypnotoad.h | 3 + src/pmdas/windows/open.c | 32 +++------------- src/pmdas/windows/pmda.c | 83 ++++++++++++++++++++++++++++++++++++++++-- src/pmdas/windows/pmns.mem | 15 +++++++ src/pmdas/windows/root | 1 8 files changed, 129 insertions(+), 33 deletions(-) commit f5c226b1d8acf56becdb05caba71d12f24b017a4 Author: Nathan Scott Date: Wed Jun 3 15:15:32 2009 +1000 New Windows memory cluster, stats from GlobalMemoryStatusEx(). This adds several mem.util metrics, and several swap metrics. All memory stats that use GlovalMemoryStatusEx (hinv.physmem also) are refreshed the same way now, once per fetch request not just once at startup. commit a33b7d211523dc9911be7877aaeb4c88b3a44b7e Author: Nathan Scott Date: Wed Jun 3 10:59:01 2009 +1000 Fix compiler warning due to lack of return in a Win32 interface. commit e80d2dca4e7bfda7ac597e54d1b95583314e9c50 Author: Nathan Scott Date: Wed Jun 3 10:55:15 2009 +1000 Force use of MEMORYSTATUSEX interface in Windows PMDA. This resolves a (long standing) precision problem under Win32 where only 2GB of physical memory was reported but 4GB actually installed. From wwwrun@oss.sgi.com Thu Jun 4 00:04:20 2009 X-Spam-Checker-Version: SpamAssassin 3.3.0-rupdated (updated) on oss.sgi.com X-Spam-Level: X-Spam-Status: No, score=-1.2 required=5.0 tests=ALL_TRUSTED,AWL,BAYES_00, J_CHICKENPOX_63 autolearn=no version=3.3.0-rupdated Received: from oss.sgi.com (localhost [127.0.0.1]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id n5454JO7220742 for ; Thu, 4 Jun 2009 00:04:20 -0500 Received: (from wwwrun@localhost) by oss.sgi.com (8.14.3/8.14.3/Submit) id n5454JmY220741; Thu, 4 Jun 2009 00:04:19 -0500 Date: Thu, 4 Jun 2009 00:04:19 -0500 Message-Id: <200906040504.n5454JmY220741@oss.sgi.com> From: bugzilla-daemon@oss.sgi.com To: pcp@oss.sgi.com Subject: [Bug 837] PCP Charts doesn't seem to recover from a host-based PCP restart X-Bugzilla-Reason: CC X-Bugzilla-Type: newchanged X-Bugzilla-Watch-Reason: None X-Bugzilla-Classification: Unclassified X-Bugzilla-Product: pcp X-Bugzilla-Component: pcp-glider X-Bugzilla-Keywords: X-Bugzilla-Severity: major X-Bugzilla-Who: nathans@debian.org X-Bugzilla-Status: RESOLVED X-Bugzilla-Priority: P5 X-Bugzilla-Assigned-To: nathans@debian.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Changed-Fields: Status Resolution In-Reply-To: References: Auto-Submitted: auto-generated Content-Type: text/plain; charset="UTF-8" MIME-Version: 1.0 http://oss.sgi.com/bugzilla/show_bug.cgi?id=837 Nathan Scott changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |FIXED --- Comment #2 from Nathan Scott 2009-06-04 00:04:15 CST --- This is fixed, and will be included in the next version of pcp-glider, today or tomorrow. -- Configure bugmail: http://oss.sgi.com/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug. From nscott@aconex.com Thu Jun 4 00:15:46 2009 X-Spam-Checker-Version: SpamAssassin 3.3.0-rupdated (updated) on oss.sgi.com X-Spam-Level: X-Spam-Status: No, score=-2.5 required=5.0 tests=AWL,BAYES_00 autolearn=ham version=3.3.0-rupdated Received: from cuda.sgi.com (cuda3.sgi.com [192.48.176.15]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id n545Fkag221492 for ; Thu, 4 Jun 2009 00:15:46 -0500 X-ASG-Debug-ID: 1244092563-195402520000-S8gJnT X-Barracuda-URL: http://cuda.sgi.com:80/cgi-bin/mark.cgi Received: from postoffice2.aconex.com (localhost [127.0.0.1]) by cuda.sgi.com (Spam Firewall) with ESMTP id 75AE4121A73E for ; Wed, 3 Jun 2009 22:16:03 -0700 (PDT) Received: from postoffice2.aconex.com (mail.aconex.com [203.89.202.182]) by cuda.sgi.com with ESMTP id rvEtqzJWImESoYxU for ; Wed, 03 Jun 2009 22:16:03 -0700 (PDT) Received: from postoffice.aconex.com (localhost [127.0.0.1]) by postoffice2.aconex.com (Spam Firewall) with ESMTP id 3F14D5DFF48 for ; Thu, 4 Jun 2009 15:16:00 +1000 (EST) Received: from postoffice.aconex.com (postoffice.yarra.acx [192.168.102.1]) by postoffice2.aconex.com with ESMTP id Lk73vd4CQBZLRoDm for ; Thu, 04 Jun 2009 15:16:00 +1000 (EST) Received: from gatekeeper.aconex.com (gatekeeper.yarra.acx [192.168.102.10]) by postoffice.aconex.com (Postfix) with ESMTP id 74A53A50118 for ; Thu, 4 Jun 2009 15:15:46 +1000 (EST) Received: from localhost (localhost.localdomain [127.0.0.1]) by gatekeeper.aconex.com (Postfix) with ESMTP id 0C65F4FD87 for ; Thu, 4 Jun 2009 15:23:48 +1000 (EST) X-Virus-Scanned: ClamAV version 0.94.2, clamav-milter version 0.94.2 on oss.sgi.com X-Virus-Scanned: amavisd-new at gatekeeper.yarra.acx Received: from gatekeeper.aconex.com ([127.0.0.1]) by localhost (gatekeeper.aconex.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id xtA7RW8Ewryw for ; Thu, 4 Jun 2009 15:23:44 +1000 (EST) Received: from mail-au.aconex.com (mail-au.aconex.com [192.168.102.12]) by gatekeeper.aconex.com (Postfix) with ESMTP id 08B664FD86 for ; Thu, 4 Jun 2009 15:23:44 +1000 (EST) Date: Thu, 4 Jun 2009 15:15:56 +1000 (EST) From: Nathan Scott To: pcp@oss.sgi.com Message-ID: <1977716616.5903511244092556118.JavaMail.root@mail-au.aconex.com> X-ASG-Orig-Subj: pcp updates Subject: pcp updates MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Originating-IP: [211.28.150.226] X-Mailer: Zimbra 5.0.13_GA_2791.RHEL5_64 (ZimbraWebClient - SAF3 (Mac)/5.0.13_GA_2791.RHEL5_64) X-Barracuda-Connect: mail.aconex.com[203.89.202.182] X-Barracuda-Start-Time: 1244092564 X-Barracuda-Bayes: INNOCENT GLOBAL 0.0000 1.0000 -2.0210 X-Barracuda-Virus-Scanned: by cuda.sgi.com at sgi.com X-Barracuda-Spam-Score: -2.02 X-Barracuda-Spam-Status: No, SCORE=-2.02 using per-user scores of TAG_LEVEL=2.0 QUARANTINE_LEVEL=1000.0 KILL_LEVEL=2.1 tests= X-Barracuda-Spam-Report: Code version 3.2, rules version 3.2.2.21 Rule breakdown below pts rule name description ---- ---------------------- -------------------------------------------------- X-Virus-Status: Clean Changes committed to git://oss.sgi.com/nathans/pcp.git src/libpcp/src/util.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) commit 54c218d249774f75fc791466f5aa245bb1b6a844 Author: Nathan Scott Date: Thu Jun 4 14:59:56 2009 +1000 Turns out Win32 apps can return EINVAL on a failed socket send. This resolves bugzilla bug #837 related to failing to reconnect. From wwwrun@oss.sgi.com Thu Jun 4 01:13:04 2009 X-Spam-Checker-Version: SpamAssassin 3.3.0-rupdated (updated) on oss.sgi.com X-Spam-Level: X-Spam-Status: No, score=-1.2 required=5.0 tests=ALL_TRUSTED,AWL,BAYES_00, J_CHICKENPOX_63 autolearn=no version=3.3.0-rupdated Received: from oss.sgi.com (localhost [127.0.0.1]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id n546D4xt224038 for ; Thu, 4 Jun 2009 01:13:04 -0500 Received: (from wwwrun@localhost) by oss.sgi.com (8.14.3/8.14.3/Submit) id n546D4pH224037; Thu, 4 Jun 2009 01:13:04 -0500 Date: Thu, 4 Jun 2009 01:13:04 -0500 Message-Id: <200906040613.n546D4pH224037@oss.sgi.com> From: bugzilla-daemon@oss.sgi.com To: pcp@oss.sgi.com Subject: [Bug 838] Annoying files created at C:\ X-Bugzilla-Reason: CC X-Bugzilla-Type: newchanged X-Bugzilla-Watch-Reason: None X-Bugzilla-Classification: Unclassified X-Bugzilla-Product: pcp X-Bugzilla-Component: pcp-glider X-Bugzilla-Keywords: X-Bugzilla-Severity: minor X-Bugzilla-Who: nathans@debian.org X-Bugzilla-Status: RESOLVED X-Bugzilla-Priority: P5 X-Bugzilla-Assigned-To: nathans@debian.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Changed-Fields: Status Resolution In-Reply-To: References: Auto-Submitted: auto-generated Content-Type: text/plain; charset="UTF-8" MIME-Version: 1.0 http://oss.sgi.com/bugzilla/show_bug.cgi?id=838 Nathan Scott changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |FIXED --- Comment #1 from Nathan Scott 2009-06-04 01:13:01 CST --- OK, these files are coming from the Windows tmpnam routine. http://msdn.microsoft.com/en-us/library/hs3e7355(VS.71).aspx In libpcp, we use tmpnam for holding some error messages before displaying them - in this case we're not calling pmflush anywhere after generating them though, so the tmp file doesnt get deleted. Doing a flush cleans 'em out. Ken came across a related issue where the files couldn't be created (cos Windows creates them in the drive root dir for some reason) ... and we've discussed using tempnam instead, which will put em in TMPDIR, a more sensible place. The main reason you're getting these is during startup there is no (local) pmcd context, and if no -h option on the command line then small amounts of confusion and warnings result. That issue will go away since 0.0.5, as that is the first version that starts pmcd by default. This will all be cleaned up in the next pcp-glider release. -- Configure bugmail: http://oss.sgi.com/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug. From nscott@aconex.com Thu Jun 4 01:26:18 2009 X-Spam-Checker-Version: SpamAssassin 3.3.0-rupdated (updated) on oss.sgi.com X-Spam-Level: X-Spam-Status: No, score=-2.5 required=5.0 tests=AWL,BAYES_00 autolearn=ham version=3.3.0-rupdated Received: from cuda.sgi.com (cuda1.sgi.com [192.48.157.11]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id n546QIfB224625 for ; Thu, 4 Jun 2009 01:26:18 -0500 X-ASG-Debug-ID: 1244097190-670100810000-S8gJnT X-Barracuda-URL: http://cuda.sgi.com:80/cgi-bin/mark.cgi Received: from postoffice2.aconex.com (localhost [127.0.0.1]) by cuda.sgi.com (Spam Firewall) with ESMTP id 4FB021052C47 for ; Wed, 3 Jun 2009 23:33:10 -0700 (PDT) Received: from postoffice2.aconex.com (mail.aconex.com [203.89.202.182]) by cuda.sgi.com with ESMTP id l9aXcunItohB0JEd for ; Wed, 03 Jun 2009 23:33:10 -0700 (PDT) Received: from postoffice.aconex.com (localhost [127.0.0.1]) by postoffice2.aconex.com (Spam Firewall) with ESMTP id D0E175E1133 for ; Thu, 4 Jun 2009 16:26:31 +1000 (EST) Received: from postoffice.aconex.com (postoffice.yarra.acx [192.168.102.1]) by postoffice2.aconex.com with ESMTP id JJ6uoFI7MjiOnlj5 for ; Thu, 04 Jun 2009 16:26:31 +1000 (EST) Received: from gatekeeper.aconex.com (gatekeeper.yarra.acx [192.168.102.10]) by postoffice.aconex.com (Postfix) with ESMTP id E628EA50118 for ; Thu, 4 Jun 2009 16:26:17 +1000 (EST) Received: from localhost (localhost.localdomain [127.0.0.1]) by gatekeeper.aconex.com (Postfix) with ESMTP id B49DC4FD86 for ; Thu, 4 Jun 2009 16:34:19 +1000 (EST) X-Virus-Scanned: ClamAV version 0.94.2, clamav-milter version 0.94.2 on oss.sgi.com X-Virus-Scanned: amavisd-new at gatekeeper.yarra.acx Received: from gatekeeper.aconex.com ([127.0.0.1]) by localhost (gatekeeper.aconex.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id chw-kvRGZ+-W for ; Thu, 4 Jun 2009 16:34:15 +1000 (EST) Received: from mail-au.aconex.com (mail-au.aconex.com [192.168.102.12]) by gatekeeper.aconex.com (Postfix) with ESMTP id 5855D4FD84 for ; Thu, 4 Jun 2009 16:34:15 +1000 (EST) Date: Thu, 4 Jun 2009 16:26:27 +1000 (EST) From: Nathan Scott To: pcp@oss.sgi.com Message-ID: <604833797.5914951244096787101.JavaMail.root@mail-au.aconex.com> X-ASG-Orig-Subj: pcp-gui updates Subject: pcp-gui updates MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Originating-IP: [211.28.150.226] X-Mailer: Zimbra 5.0.13_GA_2791.RHEL5_64 (ZimbraWebClient - SAF3 (Mac)/5.0.13_GA_2791.RHEL5_64) X-Barracuda-Connect: mail.aconex.com[203.89.202.182] X-Barracuda-Start-Time: 1244097192 X-Barracuda-Bayes: INNOCENT GLOBAL 0.0000 1.0000 -2.0210 X-Barracuda-Virus-Scanned: by cuda.sgi.com at sgi.com X-Barracuda-Spam-Score: -2.02 X-Barracuda-Spam-Status: No, SCORE=-2.02 using per-user scores of TAG_LEVEL=2.0 QUARANTINE_LEVEL=1000.0 KILL_LEVEL=2.1 tests= X-Barracuda-Spam-Report: Code version 3.2, rules version 3.2.2.21 Rule breakdown below pts rule name description ---- ---------------------- -------------------------------------------------- X-Virus-Status: Clean Changes committed to git://oss.sgi.com/nathans/pcp-gui.git src/chart/main.cpp | 8 +++++++- src/chart/pmchart.cpp | 1 + src/chart/view.cpp | 3 ++- 3 files changed, 10 insertions(+), 2 deletions(-) commit d550b59755aee1bcfd060797e4651dca0f5f7e88 Author: Nathan Scott Date: Thu Jun 4 16:18:30 2009 +1000 Do a better job of cleaning up tmpfile turds. Couple of places we can generate pmprintf errors have no associated pmflush call (mainly from libqmc routines). Add some additional flush calls in pmchart code to flush these out where possible. commit 0edd4f1f15f7769f5c3449362d93f3e7f7899439 Author: Nathan Scott Date: Thu Jun 4 15:15:32 2009 +1000 Prevent a use-after-free in pmchart, found on Win32. When resizing a window after the deletion of a chart, we were deleting the chart and then asking it for its height in the readjust-the-main-window-size calculation... segv. commit c8ab2bdc6f4f481fc6ab1f7746e9cf148f2be87f Author: Nathan Scott Date: Thu Jun 4 15:12:17 2009 +1000 Another (less visible) path separator issue for Win32 - color scheme file. From vishu_nair17@yahoo.in Thu Jun 4 06:40:57 2009 X-Spam-Checker-Version: SpamAssassin 3.3.0-rupdated (updated) on oss.sgi.com X-Spam-Level: *** X-Spam-Status: No, score=3.0 required=5.0 tests=BAYES_50,HTML_MESSAGE autolearn=no version=3.3.0-rupdated Received: from cuda.sgi.com (cuda1.sgi.com [192.48.157.11]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id n54BeuvE240382 for ; Thu, 4 Jun 2009 06:40:57 -0500 X-ASG-Debug-ID: 1244116069-12b903380000-S8gJnT X-Barracuda-URL: http://cuda.sgi.com:80/cgi-bin/mark.cgi Received: from n11-vm0.bullet.mail.in.yahoo.com (localhost [127.0.0.1]) by cuda.sgi.com (Spam Firewall) with SMTP id BF2051053E95 for ; Thu, 4 Jun 2009 04:47:50 -0700 (PDT) Received: from n11-vm0.bullet.mail.in.yahoo.com (n11-vm0.bullet.mail.in.yahoo.com [202.86.4.227]) by cuda.sgi.com with SMTP id vVyb0aJyfGNZcK8Z for ; Thu, 04 Jun 2009 04:47:50 -0700 (PDT) Received: from [202.86.4.170] by n11.bullet.mail.in.yahoo.com with NNFMP; 04 Jun 2009 11:41:10 -0000 Received: from [203.104.18.52] by t1.bullet.in.yahoo.com with NNFMP; 04 Jun 2009 11:41:10 -0000 Received: from [127.0.0.1] by omp113.mail.in2.yahoo.com with NNFMP; 04 Jun 2009 11:41:10 -0000 X-Yahoo-Newman-Property: ymail-3 X-Yahoo-Newman-Id: 820815.33521.bm@omp113.mail.in2.yahoo.com Received: (qmail 2744 invoked by uid 60001); 4 Jun 2009 11:41:10 -0000 DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=s1024; d=yahoo.in; h=Message-ID:X-YMail-OSG:Received:X-Mailer:Date:From:Subject:To:Cc:MIME-Version:Content-Type; b=WSw4D5GSnyeVIwk6WjgB2fXPwu14b6X6IWCG7BGrvigOZRhBcUdCsRfiErsslz6ek3AieI5XDm3XvYDEMk55lCJKgo2QrIwP9l/S87A7/dfy6sYas9UAAZqGfPm0wg/gslopC2CtL7s2rV/nhhlzzzEAv2Q6WjYYYMPcqE71a1s= ; Message-ID: <729145.2452.qm@web95107.mail.in2.yahoo.com> X-YMail-OSG: AyiNsF0VM1m7Cgk0zaHgDuerFc4ObgqsNh4WCwYIrGL6lycHGzShC2w3TC3qqngeg1bOw_zHGuxiFlMGjtV7juGHiUtMXPTuD5.OecT595aXNwUN010mbO21EvGXjPEcZ.SdorLiAGm5miZv1TtiY5XUjLSAYq294jAK0pnZ90vQy_1j4Tktr6nDgLAuSQ-- Received: from [164.164.151.25] by web95107.mail.in2.yahoo.com via HTTP; Thu, 04 Jun 2009 17:11:10 IST X-Mailer: YahooMailClassic/5.4.12 YahooMailWebService/0.7.289.10 Date: Thu, 4 Jun 2009 17:11:10 +0530 (IST) From: Vishu Nair X-ASG-Orig-Subj: Regarding PCP Subject: Regarding PCP To: pcp@oss.sgi.com Cc: nileshdasharathi@gmail.com MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="0-1457881213-1244115670=:2452" X-Barracuda-Connect: n11-vm0.bullet.mail.in.yahoo.com[202.86.4.227] X-Barracuda-Start-Time: 1244116071 X-Barracuda-Bayes: INNOCENT GLOBAL 0.1350 1.0000 -1.1869 X-Barracuda-Virus-Scanned: by cuda.sgi.com at sgi.com X-Barracuda-Spam-Score: -1.19 X-Barracuda-Spam-Status: No, SCORE=-1.19 using per-user scores of TAG_LEVEL=2.0 QUARANTINE_LEVEL=1000.0 KILL_LEVEL=2.1 tests=HTML_MESSAGE X-Barracuda-Spam-Report: Code version 3.2, rules version 3.2.2.21 Rule breakdown below pts rule name description ---- ---------------------- -------------------------------------------------- 0.00 HTML_MESSAGE BODY: HTML included in message X-Virus-Scanned: ClamAV version 0.94.2, clamav-milter version 0.94.2 on oss.sgi.com X-Virus-Status: Clean --0-1457881213-1244115670=:2452 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Hi, I'm interested in evaluating Performance Co-Pilot, I have tried downloading= it from the http://oss.sgi.com/projects/pcp/=20 The link (i.e. ftp://oss.sgi.com/projects/pcp/download) for downloading the= library files seems to be down. I would be immensely grateful if you could suggest an alternative method fo= r downloading PCP, PCP GUI and PCP Glider components. Awaiting your reply. Thanks, Vishalam =0A=0A=0A Cricket on your mind? Visit the ultimate cricket website. En= ter http://beta.cricket.yahoo.com --0-1457881213-1244115670=:2452 Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: quoted-printable
Hi,

I'm interested in evaluating Perfo= rmance Co-Pilot, I have tried downloading it from the http://oss.sgi.com/pr= ojects/pcp/
The link (i.e. ftp://oss.sgi.com/projects/pcp/download) for= downloading the library files seems to be down.
I would be immensely gr= ateful if you could suggest an alternative method for downloading PCP, PCP = GUI and PCP Glider components.

Awaiting your reply.

Thanks,Vishalam



=0A=0A=0A
Cricket on your mind? Visit the ultimate cricket website. Date: Sun, 7 Jun 2009 17:04:35 +1000 From: Max Matveev To: pcp@oss.sgi.com X-ASG-Orig-Subj: PCP on OpenSolaris Subject: PCP on OpenSolaris X-Mailer: VM 7.17 under 21.4 (patch 19) "Constant Variable" XEmacs Lucid X-Barracuda-Connect: outbound.icp-qv1-irony-out2.iinet.net.au[203.59.1.107] X-Barracuda-Start-Time: 1244358375 X-Barracuda-Bayes: INNOCENT GLOBAL 0.0000 1.0000 -2.0210 X-Barracuda-Virus-Scanned: by cuda.sgi.com at sgi.com X-Barracuda-Spam-Score: -2.02 X-Barracuda-Spam-Status: No, SCORE=-2.02 using per-user scores of TAG_LEVEL=2.0 QUARANTINE_LEVEL=1000.0 KILL_LEVEL=2.1 tests= X-Barracuda-Spam-Report: Code version 3.2, rules version 3.2.2.248 Rule breakdown below pts rule name description ---- ---------------------- -------------------------------------------------- X-Virus-Scanned: ClamAV version 0.94.2, clamav-milter version 0.94.2 on oss.sgi.com X-Virus-Status: Clean It looks like Solaris' PCP bits have bitrotted: a colleague has tried to compile it and it does not even compile. I've cleaned it up to the point where it compiles, not even tried to run it with all that newfangled SMF stuff in Solaris 10. I'm not sure if what I've done with cpan/PMDA is kosher or not - Nathan, have you had any experience of using this module in the situation where the perl has been compiled with a different compiler from the PMDA.so? On OpenSolaris perl is compiled with SunStudio's compiler and I'm using gcc to compile PCP. max The following changes since commit 7d06aa20de116a5d409f8d874e0abd7cf65b94e0: Nathan Scott (1): Bump version number to 2.8.7 for Win32 release. are available in the git repository at: git://oss.sgi.com/makc/pcp opensolaris Max Matveev (1): Make PCP build on OpenSolaris 2009.06 src/cpan/PMDA/Makefile.PL | 1 + src/include/builddefs.in | 2 ++ src/pmdas/cisco/GNUmakefile | 2 +- src/pmdas/jstat/GNUmakefile | 2 +- src/pmdas/mailq/mailq.c | 8 ++++---- src/pmdas/mmv/GNUmakefile | 2 +- src/pmdas/solaris/.gitignore | 6 ++++++ src/pmdas/solaris/help | 38 +++++++++++++++++++------------------- src/pmdas/trace/src/GNUmakefile | 2 +- 9 files changed, 36 insertions(+), 27 deletions(-) create mode 100644 src/pmdas/solaris/.gitignore From mort@sgi.com Mon Jun 8 12:18:11 2009 X-Spam-Checker-Version: SpamAssassin 3.3.0-rupdated (updated) on oss.sgi.com X-Spam-Level: X-Spam-Status: No, score=-2.5 required=5.0 tests=AWL,BAYES_00 autolearn=ham version=3.3.0-rupdated Received: from relay.sgi.com (relay2.corp.sgi.com [137.38.102.29]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id n58HIBuJ239513 for ; Mon, 8 Jun 2009 12:18:11 -0500 Received: from attica.americas.sgi.com (attica.americas.sgi.com [128.162.236.44]) by relay2.corp.sgi.com (Postfix) with ESMTP id B86A630408E; Mon, 8 Jun 2009 10:18:28 -0700 (PDT) Received: by attica.americas.sgi.com (Postfix, from userid 44682) id 8527FA0A55A7; Mon, 8 Jun 2009 12:18:28 -0500 (CDT) Date: Mon, 8 Jun 2009 12:18:28 -0500 From: Martin Hicks To: pcp@oss.sgi.com, Max Matveev Subject: IB pmda and writing out the default config file Message-ID: <20090608171828.GA14199@alcatraz.americas.sgi.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.5.17 (2007-11-01) X-Virus-Scanned: ClamAV version 0.94.2, clamav-milter version 0.94.2 on oss.sgi.com X-Virus-Status: Clean Hi Max and list, The infiniband PMDA, on it's first load, enumerates the local Infiniband ports and, if a config file in /var/lib/pcp/pmdas/ib does not exist, writes out a simple config file. This creates certain problems if the HCA is replaced, since the GUIDs of the local devices will change and the IB pmda will search the fabric for non-existant GUIDs. I think there are two ways to solve this, but I'm not sure which is better: - the first would be just to not write out a default config file. Users who have written their own would at least know if the existance of this config file and would figure out quickly to update it if they changed their HCA. - Or, the local port GUIDs would enver appear in the config file. The config file would only contain additional (remote) GUIDs which should be monitored by the PMDA. Comments before I go ahead with submitting a patch? thanks mh From nscott@aconex.com Mon Jun 8 19:00:31 2009 X-Spam-Checker-Version: SpamAssassin 3.3.0-rupdated (updated) on oss.sgi.com X-Spam-Level: X-Spam-Status: No, score=-2.2 required=5.0 tests=AWL,BAYES_00,J_CHICKENPOX_42 autolearn=no version=3.3.0-rupdated Received: from cuda.sgi.com (cuda2.sgi.com [192.48.176.25]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id n5900V31258860 for ; Mon, 8 Jun 2009 19:00:31 -0500 X-ASG-Debug-ID: 1244505648-61d100580000-S8gJnT X-Barracuda-URL: http://cuda.sgi.com:80/cgi-bin/mark.cgi Received: from postoffice2.aconex.com (localhost [127.0.0.1]) by cuda.sgi.com (Spam Firewall) with ESMTP id 5A4E42DEDDF for ; Mon, 8 Jun 2009 17:00:49 -0700 (PDT) Received: from postoffice2.aconex.com (mail.aconex.com [203.89.202.182]) by cuda.sgi.com with ESMTP id I9x3lRrxmtSxuw8d for ; Mon, 08 Jun 2009 17:00:49 -0700 (PDT) Received: from postoffice.aconex.com (localhost [127.0.0.1]) by postoffice2.aconex.com (Spam Firewall) with ESMTP id D1EEFA7F5; Tue, 9 Jun 2009 10:00:46 +1000 (EST) Received: from postoffice.aconex.com (postoffice.yarra.acx [192.168.102.1]) by postoffice2.aconex.com with ESMTP id sCEgBWbnwCfgMB1Y; Tue, 09 Jun 2009 10:00:46 +1000 (EST) Received: from gatekeeper.aconex.com (gatekeeper.yarra.acx [192.168.102.10]) by postoffice.aconex.com (Postfix) with ESMTP id 8C0F8A5012D; Tue, 9 Jun 2009 10:00:30 +1000 (EST) Received: from localhost (localhost.localdomain [127.0.0.1]) by gatekeeper.aconex.com (Postfix) with ESMTP id 3F1BB4FD84; Tue, 9 Jun 2009 10:09:12 +1000 (EST) X-Virus-Scanned: ClamAV version 0.94.2, clamav-milter version 0.94.2 on oss.sgi.com X-Virus-Scanned: amavisd-new at gatekeeper.yarra.acx Received: from gatekeeper.aconex.com ([127.0.0.1]) by localhost (gatekeeper.aconex.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Yi1z-lbpNFLV; Tue, 9 Jun 2009 10:09:07 +1000 (EST) Received: from mail-au.aconex.com (mail-au.aconex.com [192.168.102.12]) by gatekeeper.aconex.com (Postfix) with ESMTP id CCC8C4FD82; Tue, 9 Jun 2009 10:09:07 +1000 (EST) Date: Tue, 9 Jun 2009 10:00:41 +1000 (EST) From: Nathan Scott To: Max Matveev Cc: pcp@oss.sgi.com Message-ID: <647681153.6030381244505641945.JavaMail.root@mail-au.aconex.com> In-Reply-To: <520040377.6029471244505447489.JavaMail.root@mail-au.aconex.com> X-ASG-Orig-Subj: Re: [pcp] PCP on OpenSolaris Subject: Re: [pcp] PCP on OpenSolaris MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Originating-IP: [203.89.192.141] X-Mailer: Zimbra 5.0.13_GA_2791.RHEL5_64 (ZimbraWebClient - [unknown] (Linux)/5.0.13_GA_2791.RHEL5_64) X-Barracuda-Connect: mail.aconex.com[203.89.202.182] X-Barracuda-Start-Time: 1244505650 X-Barracuda-Bayes: INNOCENT GLOBAL 0.0000 1.0000 -2.0210 X-Barracuda-Virus-Scanned: by cuda.sgi.com at sgi.com X-Barracuda-Spam-Score: -2.02 X-Barracuda-Spam-Status: No, SCORE=-2.02 using per-user scores of TAG_LEVEL=2.0 QUARANTINE_LEVEL=1000.0 KILL_LEVEL=2.1 tests= X-Barracuda-Spam-Report: Code version 3.2, rules version 3.2.2.385 Rule breakdown below pts rule name description ---- ---------------------- -------------------------------------------------- X-Virus-Status: Clean ----- "Max Matveev" wrote: > It looks like Solaris' PCP bits have bitrotted: a colleague has tried > to compile it and it does not even compile. I've cleaned it up to > the point where it compiles, not even tried to run it with all that > newfangled SMF stuff in Solaris 10. Whatever that is... SMF stuff? > I'm not sure if what I've done with cpan/PMDA is kosher or not - > Nathan, have you had any experience of using this module in the > situation where the perl has been compiled with a different compiler > from the PMDA.so? On OpenSolaris perl is compiled with SunStudio's > compiler and I'm using gcc to compile PCP. I don't have any experience with that no, on the other platforms I've tried this on (Linux, Windows, Mac OS X) we're always using the same compiler. What was the reason for using gcc on OpenSolaris? If core bits like Perl are compiled with the Sun compiler, shouldn't PCP be compiled with that too? (wasn't the original port done with that compiler?). I dunno, wasn't me. Also, OOC: - how difficult is the packaging side of things on OpenSolaris? - whats the status of Qt4 on OpenSolaris? cheers. -- Nathan From nscott@aconex.com Mon Jun 8 22:08:00 2009 X-Spam-Checker-Version: SpamAssassin 3.3.0-rupdated (updated) on oss.sgi.com X-Spam-Level: X-Spam-Status: No, score=-2.2 required=5.0 tests=AWL,BAYES_00,J_CHICKENPOX_42 autolearn=no version=3.3.0-rupdated Received: from cuda.sgi.com (cuda2.sgi.com [192.48.176.25]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id n5937xR7004869 for ; Mon, 8 Jun 2009 22:08:00 -0500 X-ASG-Debug-ID: 1244516788-61df035d0000-S8gJnT X-Barracuda-URL: http://cuda.sgi.com:80/cgi-bin/mark.cgi Received: from postoffice2.aconex.com (localhost [127.0.0.1]) by cuda.sgi.com (Spam Firewall) with ESMTP id EBD1A2DF458 for ; Mon, 8 Jun 2009 20:06:28 -0700 (PDT) Received: from postoffice2.aconex.com (mail.aconex.com [203.89.202.182]) by cuda.sgi.com with ESMTP id dY4PXOZKXvB9UiNE for ; Mon, 08 Jun 2009 20:06:28 -0700 (PDT) Received: from postoffice.aconex.com (localhost [127.0.0.1]) by postoffice2.aconex.com (Spam Firewall) with ESMTP id 8E919B372; Tue, 9 Jun 2009 13:06:27 +1000 (EST) Received: from postoffice.aconex.com (postoffice.yarra.acx [192.168.102.1]) by postoffice2.aconex.com with ESMTP id QZi1nauRP4PLcOgb; Tue, 09 Jun 2009 13:06:27 +1000 (EST) Received: from gatekeeper.aconex.com (gatekeeper.yarra.acx [192.168.102.10]) by postoffice.aconex.com (Postfix) with ESMTP id 2EB34A5012D; Tue, 9 Jun 2009 13:06:11 +1000 (EST) Received: from localhost (localhost.localdomain [127.0.0.1]) by gatekeeper.aconex.com (Postfix) with ESMTP id 4D9524FD84; Tue, 9 Jun 2009 13:14:54 +1000 (EST) X-Virus-Scanned: ClamAV version 0.94.2, clamav-milter version 0.94.2 on oss.sgi.com X-Virus-Scanned: amavisd-new at gatekeeper.yarra.acx Received: from gatekeeper.aconex.com ([127.0.0.1]) by localhost (gatekeeper.aconex.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id FR4hPdWdeB8r; Tue, 9 Jun 2009 13:14:53 +1000 (EST) Received: from mail-au.aconex.com (mail-au.aconex.com [192.168.102.12]) by gatekeeper.aconex.com (Postfix) with ESMTP id BB1C44FD82; Tue, 9 Jun 2009 13:14:53 +1000 (EST) Date: Tue, 9 Jun 2009 13:06:26 +1000 (EST) From: Nathan Scott To: Max Matveev Cc: pcp@oss.sgi.com Message-ID: <1132154685.6054271244516786850.JavaMail.root@mail-au.aconex.com> In-Reply-To: <647681153.6030381244505641945.JavaMail.root@mail-au.aconex.com> X-ASG-Orig-Subj: Re: [pcp] PCP on OpenSolaris Subject: Re: [pcp] PCP on OpenSolaris MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Originating-IP: [203.89.192.141] X-Mailer: Zimbra 5.0.13_GA_2791.RHEL5_64 (ZimbraWebClient - [unknown] (Linux)/5.0.13_GA_2791.RHEL5_64) X-Barracuda-Connect: mail.aconex.com[203.89.202.182] X-Barracuda-Start-Time: 1244516789 X-Barracuda-Bayes: INNOCENT GLOBAL 0.0000 1.0000 -2.0210 X-Barracuda-Virus-Scanned: by cuda.sgi.com at sgi.com X-Barracuda-Spam-Score: -2.02 X-Barracuda-Spam-Status: No, SCORE=-2.02 using per-user scores of TAG_LEVEL=2.0 QUARANTINE_LEVEL=1000.0 KILL_LEVEL=2.1 tests= X-Barracuda-Spam-Report: Code version 3.2, rules version 3.2.2.395 Rule breakdown below pts rule name description ---- ---------------------- -------------------------------------------------- X-Virus-Status: Clean ----- "Nathan Scott" wrote: > ----- "Max Matveev" wrote: > > > I'm not sure if what I've done with cpan/PMDA is kosher or not - > > Nathan, have you had any experience of using this module in the > > situation where the perl has been compiled with a different > compiler > > from the PMDA.so? On OpenSolaris perl is compiled with SunStudio's > > compiler and I'm using gcc to compile PCP. > > I don't have any experience with that no, on the other platforms > I've tried this on (Linux, Windows, Mac OS X) we're always using > the same compiler. > > What was the reason for using gcc on OpenSolaris? If core bits like > Perl are compiled with the Sun compiler, shouldn't PCP be compiled > with that too? (wasn't the original port done with that compiler?). > I dunno, wasn't me. > > Also, OOC: > - how difficult is the packaging side of things on OpenSolaris? > - whats the status of Qt4 on OpenSolaris? >From a quick google search, I'm guessing that KDE (and hence probably Qt) on OpenSolaris is built with the Sun compilers. So, it would seem to be wise to stick with those...? There even seemed to be some hints at aversion to gcc-only binaries in OpenSolaris, from some of the docs I came across. *shrug* Most of your changes (except builddefs) seem to be independent of compiler used, so I think I'll just pull 'em all in for the next point release and you can follow up on the compiler issue later. cheers. -- Nathan From makc@iinet.net.au Tue Jun 9 08:00:48 2009 X-Spam-Checker-Version: SpamAssassin 3.3.0-rupdated (updated) on oss.sgi.com X-Spam-Level: X-Spam-Status: No, score=-2.6 required=5.0 tests=AWL,BAYES_00 autolearn=ham version=3.3.0-rupdated Received: from cuda.sgi.com (cuda1.sgi.com [192.48.157.11]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id n59D0kbw037925 for ; Tue, 9 Jun 2009 08:00:47 -0500 X-ASG-Debug-ID: 1244552890-29f603820000-S8gJnT X-Barracuda-URL: http://cuda.sgi.com:80/cgi-bin/mark.cgi Received: from outbound.icp-qv1-irony-out1.iinet.net.au (localhost [127.0.0.1]) by cuda.sgi.com (Spam Firewall) with ESMTP id 8DC02126A61E for ; Tue, 9 Jun 2009 06:08:10 -0700 (PDT) Received: from outbound.icp-qv1-irony-out1.iinet.net.au (outbound.icp-qv1-irony-out1.iinet.net.au [203.59.1.106]) by cuda.sgi.com with ESMTP id e9cDZ4uJfwsju4lx for ; Tue, 09 Jun 2009 06:08:10 -0700 (PDT) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: ApoEAHL5LUrL2Rwk/2dsb2JhbADPOYJCgUgF X-IronPort-AV: E=Sophos;i="4.41,331,1241366400"; d="scan'208";a="528580169" Received: from unknown (HELO alma.crabbed.net) ([203.217.28.36]) by outbound.icp-qv1-irony-out1.iinet.net.au with ESMTP; 09 Jun 2009 21:01:03 +0800 Received: by alma.crabbed.net (Postfix, from userid 501) id A315F385F60; Tue, 9 Jun 2009 22:59:28 +1000 (EST) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Message-ID: <18990.23728.352868.514525@iinet.net.au> Date: Tue, 9 Jun 2009 22:59:28 +1000 From: Max Matveev To: Nathan Scott Cc: pcp@oss.sgi.com X-ASG-Orig-Subj: Re: [pcp] PCP on OpenSolaris Subject: Re: [pcp] PCP on OpenSolaris In-Reply-To: <647681153.6030381244505641945.JavaMail.root@mail-au.aconex.com> References: <647681153.6030381244505641945.JavaMail.root@mail-au.aconex.com> <1132154685.6054271244516786850.JavaMail.root@mail-au.aconex.com> <520040377.6029471244505447489.JavaMail.root@mail-au.aconex.com> X-Mailer: VM 7.17 under 21.4 (patch 19) "Constant Variable" XEmacs Lucid X-Barracuda-Connect: outbound.icp-qv1-irony-out1.iinet.net.au[203.59.1.106] X-Barracuda-Start-Time: 1244552892 X-Barracuda-Bayes: INNOCENT GLOBAL 0.0000 1.0000 -2.0210 X-Barracuda-Virus-Scanned: by cuda.sgi.com at sgi.com X-Barracuda-Spam-Score: -2.02 X-Barracuda-Spam-Status: No, SCORE=-2.02 using per-user scores of TAG_LEVEL=2.0 QUARANTINE_LEVEL=1000.0 KILL_LEVEL=2.1 tests= X-Barracuda-Spam-Report: Code version 3.2, rules version 3.2.2.429 Rule breakdown below pts rule name description ---- ---------------------- -------------------------------------------------- X-Virus-Scanned: ClamAV version 0.94.2, clamav-milter version 0.94.2 on oss.sgi.com X-Virus-Status: Clean >>>>> "nscott" == Nathan Scott writes: nscott> Whatever that is... SMF stuff? /etc/init.d/foo is so '70s, cool kids these days use "other stuff" to start their services: Services Management Framework. nscott> What was the reason for using gcc on OpenSolaris? If core bits like nscott> Perl are compiled with the Sun compiler, shouldn't PCP be compiled nscott> with that too? Simpliest - I've had it installed. Second simple - after installing SunStudioExpress configure does not think it can compile libgen.h and other headers, then gmake adding its own stuff to compiler flags like -Wall. Finally, it's likely that I'll need to link pcp libraries with Solaris binaries compiled with gcc - all that kind of suggests that I may want to start with gcc. nscott> - how difficult is the packaging side of things on OpenSolaris? Old SVR4 style seems to be very much like Irix: a manifest, pkginfo to supply version and package name and you get the package. I'm not yet comfortable enough with new IPS packaging to comment. nscott> - whats the status of Qt4 on OpenSolaris? NFI. nscott> From a quick google search, I'm guessing that KDE (and hence nscott> probably Qt) on OpenSolaris is built with the Sun compilers. nscott> So, it would seem to be wise to stick with those...? >From my experince with C++ and Solaris, gcc and SunStudio really don't like each other: different name mangling, different STL implementations, different everything. Plain C supposed to be compatible between gcc and SunStudio. nscott> Most of your changes (except builddefs) seem to be independent nscott> of compiler used, so I think I'll just pull 'em all in for the nscott> next point release and you can follow up on the compiler issue nscott> later. I'll see if I can convince configure what new compiler can grok libgen... max From makc@iinet.net.au Tue Jun 9 08:14:06 2009 X-Spam-Checker-Version: SpamAssassin 3.3.0-rupdated (updated) on oss.sgi.com X-Spam-Level: X-Spam-Status: No, score=-2.6 required=5.0 tests=AWL,BAYES_00 autolearn=ham version=3.3.0-rupdated Received: from cuda.sgi.com (cuda1.sgi.com [192.48.157.11]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id n59DE63m038582 for ; Tue, 9 Jun 2009 08:14:06 -0500 X-ASG-Debug-ID: 1244553690-671e005c0000-S8gJnT X-Barracuda-URL: http://cuda.sgi.com:80/cgi-bin/mark.cgi Received: from outbound.icp-qv1-irony-out4.iinet.net.au (localhost [127.0.0.1]) by cuda.sgi.com (Spam Firewall) with ESMTP id EA9F0126A6D4 for ; Tue, 9 Jun 2009 06:21:30 -0700 (PDT) Received: from outbound.icp-qv1-irony-out4.iinet.net.au (outbound.icp-qv1-irony-out4.iinet.net.au [203.59.1.150]) by cuda.sgi.com with ESMTP id KHrsIk8XCne6l5j4 for ; Tue, 09 Jun 2009 06:21:30 -0700 (PDT) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: ApoEAAP9LUrL2Rwk/2dsb2JhbADPLoQKBQ X-IronPort-AV: E=Sophos;i="4.41,331,1241366400"; d="scan'208";a="418197296" Received: from unknown (HELO alma.crabbed.net) ([203.217.28.36]) by outbound.icp-qv1-irony-out4.iinet.net.au with ESMTP; 09 Jun 2009 21:14:23 +0800 Received: by alma.crabbed.net (Postfix, from userid 501) id 741A0385FDB; Tue, 9 Jun 2009 23:12:48 +1000 (EST) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Message-ID: <18990.24528.172761.247069@iinet.net.au> Date: Tue, 9 Jun 2009 23:12:48 +1000 From: Max Matveev To: Martin Hicks Cc: pcp@oss.sgi.com X-ASG-Orig-Subj: Re: IB pmda and writing out the default config file Subject: Re: IB pmda and writing out the default config file In-Reply-To: <20090608171828.GA14199@alcatraz.americas.sgi.com> References: <20090608171828.GA14199@alcatraz.americas.sgi.com> X-Mailer: VM 7.17 under 21.4 (patch 19) "Constant Variable" XEmacs Lucid X-Barracuda-Connect: outbound.icp-qv1-irony-out4.iinet.net.au[203.59.1.150] X-Barracuda-Start-Time: 1244553691 X-Barracuda-Bayes: INNOCENT GLOBAL 0.0000 1.0000 -2.0210 X-Barracuda-Virus-Scanned: by cuda.sgi.com at sgi.com X-Barracuda-Spam-Score: -2.02 X-Barracuda-Spam-Status: No, SCORE=-2.02 using per-user scores of TAG_LEVEL=2.0 QUARANTINE_LEVEL=1000.0 KILL_LEVEL=2.1 tests= X-Barracuda-Spam-Report: Code version 3.2, rules version 3.2.2.429 Rule breakdown below pts rule name description ---- ---------------------- -------------------------------------------------- X-Virus-Scanned: ClamAV version 0.94.2, clamav-milter version 0.94.2 on oss.sgi.com X-Virus-Status: Clean >>>>> "mort" == Martin Hicks writes: mort> Hi Max and list, mort> The infiniband PMDA, on it's first load, enumerates the local Infiniband mort> ports and, if a config file in /var/lib/pcp/pmdas/ib does not exist, mort> writes out a simple config file. There are two levels on indirection here: firstly you need to have a semi-stable mapping between external and internal instance IDs, secondly you need to map the external instance IDs to HCAs/ports. Originally I've used GUIDs to map the names like mlx4_1:1 to instance IDs but it was such gross hack that I quickly got rid of it. Current scheme attempts to tie the name to GUID via IB pmda config file and then external to internal is done via pmdaCache. mort> This creates certain problems if the HCA is replaced, since the GUIDs of mort> the local devices will change and the IB pmda will search the fabric for mort> non-existant GUIDs. mort> I think there are two ways to solve this, but I'm not sure which is mort> better: mort> - the first would be just to not write out a default config file. mort> Users who have written their own would at least know if the existance mort> of this config file and would figure out quickly to update it if they mort> changed their HCA. mort> - Or, the local port GUIDs would enver appear in the config file. The mort> config file would only contain additional (remote) GUIDs which should mort> be monitored by the PMDA. HCA names are assigned in the order of discovery, if you add (not just change) an HCA then something which used to be mthca2 may become mthca3. With the config file you have a name to GUID mapping, if you add an HCA it will not be reported by the PMDA until the config file is updated. You need to decide what's more important - stable instance mapping or automatic adjustments in case of change. I've decided that stable instance mapping was more important. Perhaps a better way to deal with this would be to add some keywords to the config file to indicate local HCAs and to complain bitterly if they're not found. BTW, the config file can be an executable too - nasmgr used that to generate its own naming scheme. max From mort@sgi.com Tue Jun 9 08:18:19 2009 X-Spam-Checker-Version: SpamAssassin 3.3.0-rupdated (updated) on oss.sgi.com X-Spam-Level: X-Spam-Status: No, score=-2.5 required=5.0 tests=AWL,BAYES_00 autolearn=ham version=3.3.0-rupdated Received: from relay.sgi.com (relay2.corp.sgi.com [137.38.102.29]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id n59DIJbc038853 for ; Tue, 9 Jun 2009 08:18:19 -0500 Received: from attica.americas.sgi.com (attica.americas.sgi.com [128.162.236.44]) by relay2.corp.sgi.com (Postfix) with ESMTP id 2A3D930410F; Tue, 9 Jun 2009 06:18:37 -0700 (PDT) Received: by attica.americas.sgi.com (Postfix, from userid 44682) id 8DA7AA0A6D42; Tue, 9 Jun 2009 08:18:36 -0500 (CDT) Date: Tue, 9 Jun 2009 08:18:36 -0500 From: Martin Hicks To: Max Matveev Cc: pcp@oss.sgi.com Subject: Re: IB pmda and writing out the default config file Message-ID: <20090609131836.GF14199@alcatraz.americas.sgi.com> References: <20090608171828.GA14199@alcatraz.americas.sgi.com> <18990.24528.172761.247069@iinet.net.au> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <18990.24528.172761.247069@iinet.net.au> User-Agent: Mutt/1.5.17 (2007-11-01) X-Virus-Scanned: ClamAV version 0.94.2, clamav-milter version 0.94.2 on oss.sgi.com X-Virus-Status: Clean On Tue, Jun 09, 2009 at 11:12:48PM +1000, Max Matveev wrote: > > HCA names are assigned in the order of discovery, if you add (not just > change) an HCA then something which used to be mthca2 may become > mthca3. With the config file you have a name to GUID mapping, if you > add an HCA it will not be reported by the PMDA until the config file > is updated. You need to decide what's more important - stable instance > mapping or automatic adjustments in case of change. I've decided that > stable instance mapping was more important. > > Perhaps a better way to deal with this would be to add some keywords > to the config file to indicate local HCAs and to complain bitterly if > they're not found. I like this idea. Maybe that's the way to go... > > BTW, the config file can be an executable too - nasmgr used that to > generate its own naming scheme. I noticed that. I wasn't sure if anything actually used that functionality. mh From nscott@aconex.com Tue Jun 9 17:27:08 2009 X-Spam-Checker-Version: SpamAssassin 3.3.0-rupdated (updated) on oss.sgi.com X-Spam-Level: X-Spam-Status: No, score=-2.5 required=5.0 tests=AWL,BAYES_00 autolearn=ham version=3.3.0-rupdated Received: from cuda.sgi.com (cuda1.sgi.com [192.48.157.11]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id n59MR7OQ061300 for ; Tue, 9 Jun 2009 17:27:08 -0500 X-ASG-Debug-ID: 1244586873-6d2602df0000-S8gJnT X-Barracuda-URL: http://cuda.sgi.com:80/cgi-bin/mark.cgi Received: from postoffice2.aconex.com (localhost [127.0.0.1]) by cuda.sgi.com (Spam Firewall) with ESMTP id 8975E8E1917 for ; Tue, 9 Jun 2009 15:34:33 -0700 (PDT) Received: from postoffice2.aconex.com (mail.aconex.com [203.89.202.182]) by cuda.sgi.com with ESMTP id I9vGHJjM8RWHgAYU for ; Tue, 09 Jun 2009 15:34:33 -0700 (PDT) Received: from postoffice.aconex.com (localhost [127.0.0.1]) by postoffice2.aconex.com (Spam Firewall) with ESMTP id 60CEA7881B8; Wed, 10 Jun 2009 08:26:53 +1000 (EST) Received: from postoffice.aconex.com (postoffice.yarra.acx [192.168.102.1]) by postoffice2.aconex.com with ESMTP id JfaCdoDQbDcYQRkz; Wed, 10 Jun 2009 08:26:53 +1000 (EST) Received: from gatekeeper.aconex.com (gatekeeper.yarra.acx [192.168.102.10]) by postoffice.aconex.com (Postfix) with ESMTP id 98A8FA50118; Wed, 10 Jun 2009 08:26:36 +1000 (EST) Received: from localhost (localhost.localdomain [127.0.0.1]) by gatekeeper.aconex.com (Postfix) with ESMTP id 83CE84FD82; Wed, 10 Jun 2009 08:35:26 +1000 (EST) X-Virus-Scanned: ClamAV version 0.94.2, clamav-milter version 0.94.2 on oss.sgi.com X-Virus-Scanned: amavisd-new at gatekeeper.yarra.acx Received: from gatekeeper.aconex.com ([127.0.0.1]) by localhost (gatekeeper.aconex.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id CdpkGvS4-yjh; Wed, 10 Jun 2009 08:35:21 +1000 (EST) Received: from mail-au.aconex.com (mail-au.aconex.com [192.168.102.12]) by gatekeeper.aconex.com (Postfix) with ESMTP id 4C7A54FD84; Wed, 10 Jun 2009 08:35:21 +1000 (EST) Date: Wed, 10 Jun 2009 08:26:48 +1000 (EST) From: Nathan Scott To: Max Matveev Cc: pcp@oss.sgi.com Message-ID: <1055407397.6085731244586408007.JavaMail.root@mail-au.aconex.com> In-Reply-To: <18990.23728.352868.514525@iinet.net.au> X-ASG-Orig-Subj: Re: [pcp] PCP on OpenSolaris Subject: Re: [pcp] PCP on OpenSolaris MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Originating-IP: [211.28.150.226] X-Mailer: Zimbra 5.0.13_GA_2791.RHEL5_64 (ZimbraWebClient - SAF3 (Mac)/5.0.13_GA_2791.RHEL5_64) X-Barracuda-Connect: mail.aconex.com[203.89.202.182] X-Barracuda-Start-Time: 1244586874 X-Barracuda-Bayes: INNOCENT GLOBAL 0.0000 1.0000 -2.0210 X-Barracuda-Virus-Scanned: by cuda.sgi.com at sgi.com X-Barracuda-Spam-Score: -2.02 X-Barracuda-Spam-Status: No, SCORE=-2.02 using per-user scores of TAG_LEVEL=2.0 QUARANTINE_LEVEL=1000.0 KILL_LEVEL=2.1 tests= X-Barracuda-Spam-Report: Code version 3.2, rules version 3.2.2.462 Rule breakdown below pts rule name description ---- ---------------------- -------------------------------------------------- X-Virus-Status: Clean ----- "Max Matveev" wrote: > >>>>> "nscott" == Nathan Scott writes: > > nscott> Whatever that is... SMF stuff? > > /etc/init.d/foo is so '70s, cool kids these days use "other stuff" to > start their services: Services Management Framework. Ah, yeah. Theres work to be done in that area for PCP on Mac OS X too, if anyones keen. > Simpliest - I've had it installed. Second simple - after installing > SunStudioExpress configure does not think it can compile libgen.h and > other headers, then gmake adding its own stuff to compiler flags like > -Wall. Finally, it's likely that I'll need to link pcp libraries with > Solaris binaries compiled with gcc - all that kind of suggests that I > may want to start with gcc. Which libraries are those? For the Windows port, I worked backward from "which compiler is used for the open source Qt" (mingw) and used that for PCP to avoid these kinds of issues. > nscott> - whats the status of Qt4 on OpenSolaris? > NFI. People will probably want the GUI tools on OpenSolaris at some point (probably about 5 seconds after base PCP is ported :) > nscott> From a quick google search, I'm guessing that KDE (and hence > nscott> probably Qt) on OpenSolaris is built with the Sun compilers. > nscott> So, it would seem to be wise to stick with those...? > From my experince with C++ and Solaris, gcc and SunStudio really > don't > like each other: different name mangling, different STL > implementations, different everything. Plain C supposed to be > compatible between gcc and SunStudio. Ew, sounds like thats going to be a problem for the GUI tools and pmdumptext. > nscott> Most of your changes (except builddefs) seem to be > independent > nscott> of compiler used, so I think I'll just pull 'em all in for > the > nscott> next point release and you can follow up on the compiler > issue > nscott> later. > I'll see if I can convince configure what new compiler can grok > libgen... OK. I have a similar outstanding issue on Windows where it doesn't quite pick up iptypes.h (finds it but wont compile) ... using it in the PCP source is fine though. cheers. -- Nathan From nscott@aconex.com Wed Jun 10 00:51:19 2009 X-Spam-Checker-Version: SpamAssassin 3.3.0-rupdated (updated) on oss.sgi.com X-Spam-Level: X-Spam-Status: No, score=-2.4 required=5.0 tests=AWL,BAYES_00,J_CHICKENPOX_44, J_CHICKENPOX_45,J_CHICKENPOX_73 autolearn=no version=3.3.0-rupdated Received: from cuda.sgi.com (cuda1.sgi.com [192.48.157.11]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id n5A5pIPv077140 for ; Wed, 10 Jun 2009 00:51:19 -0500 X-ASG-Debug-ID: 1244613524-09e500ab0000-S8gJnT X-Barracuda-URL: http://cuda.sgi.com:80/cgi-bin/mark.cgi Received: from postoffice2.aconex.com (localhost [127.0.0.1]) by cuda.sgi.com (Spam Firewall) with ESMTP id C6A7FF39DC8 for ; Tue, 9 Jun 2009 22:58:44 -0700 (PDT) Received: from postoffice2.aconex.com (mail.aconex.com [203.89.202.182]) by cuda.sgi.com with ESMTP id m0tGDgxvxZRJAc71 for ; Tue, 09 Jun 2009 22:58:44 -0700 (PDT) Received: from postoffice.aconex.com (localhost [127.0.0.1]) by postoffice2.aconex.com (Spam Firewall) with ESMTP id 7C0501667A for ; Wed, 10 Jun 2009 15:51:29 +1000 (EST) Received: from postoffice.aconex.com (postoffice.yarra.acx [192.168.102.1]) by postoffice2.aconex.com with ESMTP id WcmGmEHZdjTk8aAL for ; Wed, 10 Jun 2009 15:51:29 +1000 (EST) Received: from gatekeeper.aconex.com (gatekeeper.yarra.acx [192.168.102.10]) by postoffice.aconex.com (Postfix) with ESMTP id 92796A50118 for ; Wed, 10 Jun 2009 15:51:12 +1000 (EST) Received: from localhost (localhost.localdomain [127.0.0.1]) by gatekeeper.aconex.com (Postfix) with ESMTP id 209AC4FD84 for ; Wed, 10 Jun 2009 16:00:05 +1000 (EST) X-Virus-Scanned: ClamAV version 0.94.2, clamav-milter version 0.94.2 on oss.sgi.com X-Virus-Scanned: amavisd-new at gatekeeper.yarra.acx Received: from gatekeeper.aconex.com ([127.0.0.1]) by localhost (gatekeeper.aconex.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 8mggr1+5vMgh for ; Wed, 10 Jun 2009 16:00:01 +1000 (EST) Received: from mail-au.aconex.com (mail-au.aconex.com [192.168.102.12]) by gatekeeper.aconex.com (Postfix) with ESMTP id 809F34FD82 for ; Wed, 10 Jun 2009 16:00:01 +1000 (EST) Date: Wed, 10 Jun 2009 15:51:25 +1000 (EST) From: Nathan Scott To: pcp@oss.sgi.com Message-ID: <78606246.6137151244613085760.JavaMail.root@mail-au.aconex.com> In-Reply-To: <1269717499.6137001244613048632.JavaMail.root@mail-au.aconex.com> X-ASG-Orig-Subj: pcp updates (2.8.8) Subject: pcp updates (2.8.8) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Originating-IP: [211.28.150.226] X-Mailer: Zimbra 5.0.13_GA_2791.RHEL5_64 (ZimbraWebClient - SAF3 (Mac)/5.0.13_GA_2791.RHEL5_64) X-Barracuda-Connect: mail.aconex.com[203.89.202.182] X-Barracuda-Start-Time: 1244613527 X-Barracuda-Bayes: INNOCENT GLOBAL 0.0000 1.0000 -2.0210 X-Barracuda-Virus-Scanned: by cuda.sgi.com at sgi.com X-Barracuda-Spam-Score: -1.52 X-Barracuda-Spam-Status: No, SCORE=-1.52 using per-user scores of TAG_LEVEL=2.0 QUARANTINE_LEVEL=1000.0 KILL_LEVEL=2.1 tests=BSF_RULE7568M X-Barracuda-Spam-Report: Code version 3.2, rules version 3.2.2.490 Rule breakdown below pts rule name description ---- ---------------------- -------------------------------------------------- 0.50 BSF_RULE7568M Custom Rule 7568M X-Virus-Status: Clean Changes committed to git://oss.sgi.com/pcp/pcp.git CHANGELOG | 8 +++ VERSION.pcp | 2 debian/changelog | 7 ++ src/cpan/LogSummary/GNUmakefile | 13 ++-- src/cpan/PMDA/Changes | 4 + src/cpan/PMDA/GNUmakefile | 15 +++-- src/cpan/PMDA/Makefile.PL | 14 +++-- src/cpan/PMDA/PMDA.pm | 2 src/cpan/PMDA/PMDA.xs | 2 src/cpan/PMDA/local.c | 21 -------- src/cpan/PMDA/local.h | 1 src/include/builddefs.in | 2 src/include/platform_defs.h.in | 4 + src/libpcp/src/util.c | 4 + src/pmdas/cisco/GNUmakefile | 2 src/pmdas/jstat/GNUmakefile | 2 src/pmdas/mailq/mailq.c | 8 +-- src/pmdas/mmv/GNUmakefile | 2 src/pmdas/solaris/.gitignore | 6 ++ src/pmdas/solaris/help | 38 +++++++------- src/pmdas/trace/src/GNUmakefile | 2 src/pmdas/windows/fetch.c | 30 ++++++++--- src/pmdas/windows/hypnotoad.h | 4 + src/pmdas/windows/instance.c | 39 ++++++-------- src/pmdas/windows/open.c | 85 +++++++++++++++++++++++++------- src/pmdas/windows/pmda.c | 60 +++++++++++++++------- src/pmdas/zimbra/GNUmakefile | 3 - src/pmdas/zimbra/pmdazimbra.pl | 105 ++++++++++++++++++++++++++++++++++++---- src/pmdas/zimbra/zimbraprobe.sh | 26 +++++++++ 29 files changed, 361 insertions(+), 150 deletions(-) commit fb8144d6304838340b3793dc1cde25ae18daacf3 Author: Nathan Scott Date: Wed Jun 10 15:32:49 2009 +1000 Further cpan build tweaks simplifying the Win32 build somewhat. commit b8415f0af296b24004fffa876d0fa21c3be5ae03 Author: Nathan Scott Date: Wed Jun 10 15:00:13 2009 +1000 Incorporate perl modules into the Win32 build. Steps required to get this going were: - use dmake.exe for perl part of the build on Win32. - drop unused local_strdup_hashed routine in PMDA/local.c which pulled in a and hsearch dependency, not satisfied on Windows. - Makefile.PL path tweaking and add the PCP_VERSION macro. - use __pmParseDebug not pmParseDebug which doesn't really exist. - pull in dirent.h in PMDA/local.c for struct dirent. commit 23670065ef2299a796cf05a0887d91fae1d04984 Author: Nathan Scott Date: Wed Jun 10 12:23:24 2009 +1000 Improve the instance domain handling logic in the Windows PMDA. Fix a bug where we'd not set V_COLLECTED for any but the first instance for some instance domains. Move the logic which sets the instance domain to empty initially to a more sensible spot and rework the instance PDU handling code. Fixed a small memory leak in re-establishing instance domains. Allow for more CPUs in the per-processor indom (up to 9999). Add a fast path into the fetch callback for metrics with indoms which now first looks to see if the instance ID maps directly into the value table, instead of always scanning from instance ID zero to the end. Esp. helps some large domains like threads and processes, but also a small improvement for others. commit 4c60dec38299df6f5d1891798fd11eed151ae516 Author: Nathan Scott Date: Tue Jun 9 18:39:10 2009 +1000 Rework the auto-switch 32/64 logic for certain Windows metrics. Also, ensure a one-trip evaluation for instances that are not of REDO type in the Windows PMDA. commit efb31580ed745d64f629fd97c09f5465a78dc37c Author: Nathan Scott Date: Tue Jun 9 18:30:53 2009 +1000 Correct logic error on fetch filesys metrics update checking. commit ca0a91d2480b2e260195fba222cfa7b93fda6081 Author: Max Matveev Date: Sun Jun 7 16:48:02 2009 +1000 Make PCP build on OpenSolaris 2009.06 - GCC 3.4.3 needs -fPIC to create DSO with lots of symbols, -fpic is not enough. - standard awk on Solaris does not grok single equal as logical compare in patterns. - solaris pmda is a (mostly empty) shell and does not provide a lot of metrics - remove the bogus metrics from the help file - cpan module uses built-in defintions which depend on the compiler used to build perl's importer. If the compiler is different then built-ins do not match. commit 15ac266071439d260b8d7ebf4175d3cd4e6cbae3 Author: Nathan Scott Date: Tue Jun 9 14:33:27 2009 +1000 Fix hinv.ncpu and hinv.ndisk as first Windows PMDA fetch. If the very first fetch to a newly started Windows PMDA is either hinv.ncpu or hinv.ndisk, zero could be returned. This happened because these two were relying on other metrics to populate the disk/CPU instance domain, and they then just returned the count. Added some logic to say "if we haven't had some other metric ID cover this for us, then explicitly populate the instance domain" for these metrics. commit 354e2b925e90e948702b4f36f10e34a9691b7450 Author: Nathan Scott Date: Tue Jun 9 12:01:04 2009 +1000 Extend the Zimbra PMDA with service status metrics. commit 7e01dd91277d69cf513321f960625d24beb978b1 Author: Nathan Scott Date: Tue Jun 9 10:27:47 2009 +1000 Use tempnam not tmpnam for pmprintf temporary filename generation. This provides better control over tmpfile placement, and has much better behaviour in general under Win32 conditions - doesn't make tmp files in the root, addressing part of bugzilla bug #838. This is a modified version of Ken's patch, originally addressing issues (probably drive root directory permissions) on Vista. From nscott@aconex.com Wed Jun 10 01:28:41 2009 X-Spam-Checker-Version: SpamAssassin 3.3.0-rupdated (updated) on oss.sgi.com X-Spam-Level: X-Spam-Status: No, score=-1.8 required=5.0 tests=AWL,BAYES_00,J_CHICKENPOX_34, J_CHICKENPOX_44,J_CHICKENPOX_64,J_CHICKENPOX_74,SUBJ_FORWARDED autolearn=no version=3.3.0-rupdated Received: from cuda.sgi.com (cuda2.sgi.com [192.48.176.25]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id n5A6Sfmt078307 for ; Wed, 10 Jun 2009 01:28:41 -0500 X-ASG-Debug-ID: 1244615337-7df801cd0000-S8gJnT X-Barracuda-URL: http://cuda.sgi.com:80/cgi-bin/mark.cgi Received: from postoffice2.aconex.com (localhost [127.0.0.1]) by cuda.sgi.com (Spam Firewall) with ESMTP id D18DF2E4D40 for ; Tue, 9 Jun 2009 23:28:57 -0700 (PDT) Received: from postoffice2.aconex.com (mail.aconex.com [203.89.202.182]) by cuda.sgi.com with ESMTP id Zr6FoqvfWBv9CmF0 for ; Tue, 09 Jun 2009 23:28:57 -0700 (PDT) Received: from postoffice.aconex.com (localhost [127.0.0.1]) by postoffice2.aconex.com (Spam Firewall) with ESMTP id 9B67A6C3202 for ; Wed, 10 Jun 2009 16:28:55 +1000 (EST) Received: from postoffice.aconex.com (postoffice.yarra.acx [192.168.102.1]) by postoffice2.aconex.com with ESMTP id Odv1toOkNmIDtqfN for ; Wed, 10 Jun 2009 16:28:55 +1000 (EST) Received: from gatekeeper.aconex.com (gatekeeper.yarra.acx [192.168.102.10]) by postoffice.aconex.com (Postfix) with ESMTP id AC9D5A5012D for ; Wed, 10 Jun 2009 16:28:38 +1000 (EST) Received: from localhost (localhost.localdomain [127.0.0.1]) by gatekeeper.aconex.com (Postfix) with ESMTP id 73CD84FD82 for ; Wed, 10 Jun 2009 16:37:31 +1000 (EST) X-Virus-Scanned: ClamAV version 0.94.2, clamav-milter version 0.94.2 on oss.sgi.com X-Virus-Scanned: amavisd-new at gatekeeper.yarra.acx Received: from gatekeeper.aconex.com ([127.0.0.1]) by localhost (gatekeeper.aconex.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id ViEEHvg591Uc for ; Wed, 10 Jun 2009 16:37:27 +1000 (EST) Received: from mail-au.aconex.com (mail-au.aconex.com [192.168.102.12]) by gatekeeper.aconex.com (Postfix) with ESMTP id 38B1E4FD84 for ; Wed, 10 Jun 2009 16:37:27 +1000 (EST) Date: Wed, 10 Jun 2009 16:28:46 +1000 (EST) From: Nathan Scott To: pcp@oss.sgi.com Message-ID: <1973226816.6140621244615326651.JavaMail.root@mail-au.aconex.com> In-Reply-To: <1649095773.6140551244615212792.JavaMail.root@mail-au.aconex.com> X-ASG-Orig-Subj: Fwd: [Announce] Performance Counters for Linux, v8 Subject: Fwd: [Announce] Performance Counters for Linux, v8 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Originating-IP: [211.28.150.226] X-Mailer: Zimbra 5.0.13_GA_2791.RHEL5_64 (ZimbraWebClient - SAF3 (Mac)/5.0.13_GA_2791.RHEL5_64) X-Barracuda-Connect: mail.aconex.com[203.89.202.182] X-Barracuda-Start-Time: 1244615339 X-Barracuda-Bayes: INNOCENT GLOBAL 0.0000 1.0000 -2.0210 X-Barracuda-Virus-Scanned: by cuda.sgi.com at sgi.com X-Barracuda-Spam-Score: -2.02 X-Barracuda-Spam-Status: No, SCORE=-2.02 using per-user scores of TAG_LEVEL=2.0 QUARANTINE_LEVEL=1000.0 KILL_LEVEL=2.1 tests= X-Barracuda-Spam-Report: Code version 3.2, rules version 3.2.2.493 Rule breakdown below pts rule name description ---- ---------------------- -------------------------------------------------- X-Virus-Status: Clean FYI. Looks like a potential source of hardware event counters for PCP to use as well... ----- Forwarded Message ----- From: "Ingo Molnar" To: linux-kernel@vger.kernel.org Cc: "Peter Zijlstra" , "Corey Ashford" , "Fr=C3=A9d=C3=A9ric Weisbecker" , "M= ike Galbraith" , linux-kernel@vger.kernel.org, "Steven Roste= dt" , "David S. Miller" , "Arnald= o Carvalho de Melo" , "Stephane Eranian" , "Paul Mackerras" , "H. Peter Anvin" , oprofile-list@lists.sf.net, "Thomas Gleixner" , "L= inus Torvalds" , "Andrew Morton" , "Arjan van de Ven" Sent: Sunday, June 7, 2009 6:35:03 AM GMT +10:00 Canberra / Melbourne / Syd= ney Subject: [Announce] Performance Counters for Linux, v8 We are pleased to announce version 8 of the performance counters=20 subsystem for Linux. This new subsystem adds a new system call (sys_perf_counter_open())=20 and it provides the new 'perf' tool that makes use of these new=20 kernel capabilities. This subsystem and this tool is new in that it tries a new approach=20 at integrating all things performance analysis under one roof. There have been many changes since -v7 - see the shortlog below for=20 details. There are a lot of new contributors to this code. Many thanks go to:=20 Peter Zijlstra, Paul Mackerras, Robert Richter, Arnaldo Carvalho de=20 Melo, Mike Galbraith, Thomas Gleixner, Wu Fengguang, Jaswinder Singh=20 Rajput, Yong Wang, Frederic Weisbecker, Yinghai Lu, Luis Henriques,=20 Eric Paris, Arjan van de Ven, Tim Blechmann, Steven Whitehouse,=20 Jaswinder Singh, H. Peter Anvin, Hidetoshi Seto, Erdem Aktas and=20 Andrew Morton. The biggest change in -v8 is a re-focusig of our effort towards=20 building tools to help various user-space development workflows. The=20 latest code and perfcounter-tools deal with all sorts of user-space=20 profiling usage models, they are very fast and are able to look up=20 DSO symbols regardless of where they are loaded - and try to be easy=20 to use and easy to configure. Per-application and system-wide profiling modes are supported - plus=20 a number of intermediate modes are supported as well via the use of=20 inherited counters that traverse into child-task hierarchies=20 automatically and transparently. With perfcounters there is no daemon needed: if a perfcounters=20 kernel is booted on a supported CPU (all AMD models and Core2 /=20 Corei7 / Atom Intel CPUs - both 64-bit and 32-bit user-space is=20 supported) then profiling can be done straight away. Profiling sessions are recorded into local files, which can then be=20 analyzed. There's a number of high-level-overview tools 'perf stat'=20 and 'perf top' which help one get a quick impression about what to=20 profile and in what way. New in -v8 is the 'perf' utility which has merged all the=20 perfcounters utilities and which exposes all the functionality of=20 the kernel subsystem, in one uniform and unified way: mercury:~/tip/tools/perf> perf usage: perf [--version] [--help] COMMAND [ARGS] The most commonly used perf commands are: annotate Read perf.data (created by perf record) and display annotated= code list List all symbolic event types record Run a command and record its profile into perf.data report Read perf.data (created by perf record) and display the profi= le stat Run a command and gather performance counter statistics top Run a command and profile it See 'perf help COMMAND' for more information on a specific command. There's also a new "record + report" separated profilig workflow=20 supported: use "perf record ./my-app" to record its profile, then=20 use "perf report" and all its --sort options to get various=20 high-level and low level details. Oprofile users will find this=20 workflow familar. On the lowest level, 'perf annotate' will annotate the source code=20 alongside profiling information and assembly code: $ perf annotate decode_tree_entry ------------------------------------------------ Percent |=09Source code & Disassembly of /home/mingo/git/git ------------------------------------------------ : :=09/home/mingo/git/git: file format elf64-x86-64 : : :=09Disassembly of section .text: : :=0900000000004a0da0 : :=09=09*modep =3D mode; :=09=09return str; :=09} : :=09static void decode_tree_entry(struct tree_desc *desc, const ch= ar *buf, unsigned long size) :=09{ 3.82 :=09 4a0da0:=0941 54 =09push %r12 :=09=09const char *path; :=09=09unsigned int mode, len; : :=09=09if (size < 24 || buf[size - 21]) 0.17 :=09 4a0da2:=0948 83 fa 17 =09cmp $0x17,%rdx :=09=09*modep =3D mode; :=09=09return str; :=09} : :=09static void decode_tree_entry(struct tree_desc *desc, const ch= ar *buf, unsigned long size) :=09{ 0.00 :=09 4a0da6:=0949 89 fc =09mov %rdi,%r12 0.00 :=09 4a0da9:=0955 =09push %rbp 3.37 :=09 4a0daa:=0953 =09push %rbx :=09=09const char *path; :=09=09unsigned int mode, len; : :=09=09if (size < 24 || buf[size - 21]) 0.08 :=09 4a0dab:=0976 73 =09jbe 4a0e20 0.00 :=09 4a0dad:=0980 7c 16 eb 00 =09cmpb $0x0,-0x15(%rsi,%rd= x,1) 3.48 :=09 4a0db2:=0975 6c =09jne 4a0e20 :=09static const char *get_mode(const char *str, unsigned int *mod= ep) :=09{ :=09=09unsigned char c; :=09=09unsigned int mode =3D 0; : :=09=09if (*str =3D=3D ' ') 1.94 :=09 4a0db4:=090f b6 06 =09movzbl (%rsi),%eax 0.39 :=09 4a0db7:=093c 20 =09cmp $0x20,%al 0.00 :=09 4a0db9:=0974 65 =09je 4a0e20 :=09=09=09return NULL; : :=09=09while ((c =3D *str++) !=3D ' ') { 0.06 :=09 4a0dbb:=0989 c2 =09mov %eax,%edx :=09=09=09if (c < '0' || c > '7') 1.99 :=09 4a0dbd:=0931 ed =09xor %ebp,%ebp :=09=09unsigned int mode =3D 0; : :=09=09if (*str =3D=3D ' ') :=09=09=09return NULL; : :=09=09while ((c =3D *str++) !=3D ' ') { 1.74 :=09 4a0dbf:=0948 8d 5e 01 =09lea 0x1(%rsi),%rbx :=09=09=09if (c < '0' || c > '7') 0.00 :=09 4a0dc3:=098d 42 d0 =09lea -0x30(%rdx),%eax 0.17 :=09 4a0dc6:=093c 07 =09cmp $0x7,%al 0.00 :=09 4a0dc8:=0976 0d =09jbe 4a0dd7 0.00 :=09 4a0dca:=09eb 54 =09jmp 4a0e20 0.00 :=09 4a0dcc:=090f 1f 40 00 =09nopl 0x0(%rax) 16.57 :=09 4a0dd0:=098d 42 d0 =09lea -0x30(%rdx),%eax 0.14 :=09 4a0dd3:=093c 07 =09cmp $0x7,%al 0.00 :=09 4a0dd5:=0977 49 =09ja 4a0e20 :=09=09=09=09return NULL; :=09=09=09mode =3D (mode << 3) + (c - '0'); 3.12 :=09 4a0dd7:=090f b6 c2 =09movzbl %dl,%eax :=09=09unsigned int mode =3D 0; : :=09=09if (*str =3D=3D ' ') :=09=09=09return NULL; : :=09=09while ((c =3D *str++) !=3D ' ') { 0.00 :=09 4a0dda:=090f b6 13 =09movzbl (%rbx),%edx 16.74 :=09 4a0ddd:=0948 83 c3 01 =09add $0x1,%rbx :=09=09=09if (c < '0' || c > '7') :=09=09=09=09return NULL; :=09=09=09mode =3D (mode << 3) + (c - '0'); Those who already use Git will (hopefully) find 'perf' intuitive, as=20 we've picked up a number of internal libraries from Git to build=20 this tool so the look-and-feel will be familar. It's very=20 extensible, new subcommands can be added easily - while there's just=20 a single new binary in the system. 'perf report' supports multi-key histograms and a rich set of views=20 of the same performance data - per task or per dso, or a finegrained=20 per symbol view (and all permutations of these keys). Most of the user-visible action in -v8 was in the tooling, but the=20 kernel side code has been revamped all around as well: - Sampling support for inherited counters - Performance optimizations to lazy-switch PMU contexts - Enhanced PowerPC and x86 support. - Generic tracepoints can be used via perfcounters too - Fixed-frequency, auto-sampling counters. (they can be used via=20 the '-F' option in perf record and perf top.) - Generic "hardware cache" event enumeration method - for those=20 who want more than just a handful of essential hardware counters. - Automatic "fool-proof" event-throttling code to protect against accidentally too short sampling periods. - The 'raw events' configuration space has been extended - every event type that oprofile is able to handle can be=20 specified via raw perfcounter events as well. - ... and lots of other changes. To try/test/check this code, the latest perfcounters tree can be=20 pulled/cloned from: git pull \=20 =09git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip.git \ =09=09perfcounters/core Or the following patch can be applied to the latest=20 (v2.6.30-rc8-git3) upstream -git Linux kernel: http://redhat.com/~mingo/perfcounters/perfcounters-v8-v2.6.30-rc8-git3.p= atch The 'perf' utility can be built by pulling that tree and by doing: cd tools/perf/ make make install ( The combo patch is too large to be posted to lkml - and all the=20 v7->v8 patches have been posted to lkml already. ) As usual, test feedback, patche, comments and suggestions are=20 welcome! =09Ingo ------------------> Andrew Morton (1): mutex: add atomic_dec_and_mutex_lock(), fix Arjan van de Ven (2): perf_counter tools: Warning fixes on 32-bit perf_counter tools: Initialize a stack variable before use Arnaldo Carvalho de Melo (26): perf record: Allow specifying a pid to record perf_counter: First part of 'perf report' conversion to C + elfutils perf_counter: Implement dso__load using libelf perf_counter: Use rb_trees in perf report perf_counter: Add our private copy of list.h perf_counter: Use rb_tree for symhists and threads in report perf report: Fix kernel symbol resolution perf: Don't assume /proc/kallsyms is ordered perf report: Sort output by symbol usage perf report: Use hex2long instead of sscanf perf report: Only load text symbols from kallsyms perf report: Show the IP only in --verbose mode perf_counter tools: Move symbol resolution classes from report to lib= perf perf_counter tools: struct symbol priv area perf_counter tools: Consolidate dso methods to load kernel symbols perf_counter tools: Optionally pass a symbol filter to the dso load r= outines perf_counter tools: Convert builtin-top to use libperf symbol routine= s perf_counter tools: Shorten the DSO names using cwd perf_counter tools: Add locking to perf top perf_counter tools: Add string.[ch] perf_counter tools: Use hex2u64 in more places perf_counter tools: Add missing rb_erase in dso__delete_symbols perf_counter tools: Cover PLT symbols too perf_counter tools: Fix off-by-one bug in symbol__new perf report: Fix rbtree bug perf report: Add -vvv to print the list of threads and its mmaps Erdem Aktas (1): perf_counter tools: fix buffer overwrite problem for perf top command Eric Paris (2): mutex: add atomic_dec_and_mutex_lock() mutex: add atomic_dec_and_mutex_lock() Frederic Weisbecker (3): perf_counter: Sleep before refresh using poll in perf top perf_counter tools: Fix warn_unused_result warnings perf top: Fix zero or negative refresh delay H. Peter Anvin (1): mutex: drop "inline" from mutex_lock() inside kernel/mutex.c Hidetoshi Seto (1): x86: smarten /proc/interrupts output for new counters Ingo Molnar (183): performance counters: documentation performance counters: x86 support x86, perfcounters: read out MSR_CORE_PERF_GLOBAL_STATUS with counters= disabled perfcounters: select ANON_INODES perfcounters, x86: simplify disable/enable of counters perfcounters, x86: clean up debug code perfcounters: consolidate global-disable codepaths perf counters: restructure the API perf counters: add support for group counters perf counters: group counter, fixes perf counters: hw driver API perf counters: implement PERF_COUNT_CPU_CLOCK perf counters: consolidate hw_perf save/restore APIs perf counters: implement PERF_COUNT_TASK_CLOCK perf counters: add prctl interface to disable/enable counters perf counters: clean up state transitions perf counters: update docs x86: implement atomic64_t on 32-bit perfcounters: restructure x86 counter math perfcounters: implement "counter inheritance" perfcounters: fix task clock counter perfcounters: add context switch counter perfcounters: add task migrations counter perfcounters: add nr-of-faults counter perfcounters: fix non-intel-perfmon CPUs perfcounters, x86: fix sw counters on non-PMC CPUs perfcounters: fix lapic initialization perfcounters: release CPU context when exiting task counters perfcounters: flush on setuid exec perfcounters: use hw_event.disable flag perfcounters: remove warnings perfcounters: tweak group scheduling x86, perfcounters: rename intel_arch_perfmon.h =3D> perf_counter.h x86, perfcounters: prepare for fixed-mode PMCs perfcounters: add fixed-mode PMC enumeration x86, perfcounters: refactor code for fixed-function PMCs perfcounters: hw ops rename perfcounters: fix task clock counter perfcounters: pull inherited counters perfcounters: fix init context lock perfcounters: enable lowlevel pmc code to schedule counters x86, perfcounters: print out the ->used bitmask perfcounters: remove ->nr_inherited perfcounters: generalize the counter scheduler perfcounters: add PERF_COUNT_BUS_CYCLES x86, perfcounters: add support for fixed-function pmcs perfcounters: include asm/perf_counter.h only if CONFIG_PERF_COUNTERS= =3Dy perfcounters: fix "perf counters kills oprofile" bug, v2 perfcounters: remove duplicate definition of LOCAL_PERF_VECTOR perfcounters: fix acpi_idle_do_entry() workaround perfcounters: fix reserved bits sizing perf_counter: fix crash on perfmon v1 systems perf_counter: create Documentation/perf_counter/ and move perfcounter= s.txt there perf_counter: add sample user-space to Documentation/perf_counter/ perf_counter tools: tidy up in-kernel dependencies perf_counter tools: fix build warning in kerneltop.c perf_counter tools: increase cpu-cycles again x86, perfcounters: add atomic64_xchg() perf_counter: fix off task->comm by one perf_counter tools: include PID in perf-report output, tweak user/ker= nel printut perf_counter: copy in Git's top Makefile perf_counter tools: add in basic glue from Git perf_counter tools: clean up after introduction of the Git command fr= amework perf_counter tools: separate kerneltop into 'perf top' and 'perf stat= ' perf_counter tools: add help texts perf_counter tools: add 'perf record' command perf_counter tools: fix --version perf_counter tools: add 'perf help' perf_counter tools: fix 'make install' perfcounters, sched: remove __task_delta_exec() perf_counter tools: move helper library to util/* perf_counter: add/update copyrights perf_counter tools: add perf-report to the Makefile perf_counter tools: perf stat: make -l default-on perf_counter tools: fix infinite loop in perf-report on zeroed event = records perf_counter tools: fix x86 syscall numbers perf_counter: round-robin per-CPU counters too perf_counter: initialize the per-cpu context earlier perf_counter: convert perf_resource_mutex to a spinlock perf_counter: fix fixed-purpose counter support on v2 Intel-PERFMON perf_counter tools: remove debug code from builtin-stat.c perf_counter: x86: Fix throttling perf_counter: x86: Disallow interval of 1 perf_counter: x86: Protect against infinite loops in intel_pmu_handle= _irq() perf_counter: Remove ACPI quirk perf stat: handle Ctrl-C perf_counter: fix threaded task exit perf_counter, x86: fix zero irq_period counters perf_counter, x86: speed up the scheduling fast-path perf_counter: fix counter freeing logic perf_counter: fix counter inheritance race perf_counter: Fix context removal deadlock perf_counter: fix !PERF_COUNTERS build failure perf_counter tools: increase limits perf_counter: Increase mmap limit perf_counter tools: increase limits, fix perf_counter: Move child perfcounter init to after scheduler init perf stat: flip around ':k' and ':u' flags Revert "perf_counter, x86: speed up the scheduling fast-path" perf_counter: fix warning & lockup perf_counter, x86: Fix APIC NMI programming perf_counter, x86: Make NMI lockups more robust perf_counter: Initialize ->oncpu properly perf record: Straighten out argv types perf stat: Remove unused variable perf record: Convert to Git option parsing perf_counter tools: Librarize event string parsing perf stat: Convert to Git option parsing perf top: Convert to Git option parsing perf_counter tools: remove the standalone perf-report utility perf record: Convert to Git option parsing perf report: Add help/manpage perf report: add --dump-raw-trace option perf report: add counter for unknown events perf report: add more debugging perf report: Only load text symbols from kallsyms, fix perf_counter tools: Introduce stricter C code checking perf_counter tools: Rename output.perf to perf.data perf_counter tools: Add built-in pager support perf report: Remove include pref_counter: tools: report: Add header printout & prettify pref_counter: tools: report: Robustify in case of weird events perf_counter: Fix perf_counter_init_task() on !CONFIG_PERF_COUNTERS perf_counter tools: report: Add help text for --sort perf_counter tools: Clean up builtin-stat.c's do_perfstat() perf_counter tools: Split display into reading and printing perf_counter tools: Also display time-normalized stat results perf_counter: Fix cpuctx->task_ctx races perf_counter: Robustify counter-free logic perf_counter tools: Print 'CPU utilization factor' in builtin-stat perf_counter tools: Fix 'make install' perf_counter tools: Generate per command manpages (and pdf/html, etc.= ) perf_counter tools: Fix unknown command help text perf_counter: Tidy up style details perf report: Clean up the default output perf report: Fix column width/alignment of dsos perf record: Add --append option perf record: Increase mmap buffering default perf report: Print more info instead of entries perf_counter tools: Make source code headers more coherent perf record: Print out the number of events captured perf report: Print -D to stdout perf report: Improve sort key recognition perf report: Handle vDSO symbols properly perf_counter tools: Clean up old kerneltop references perf record: Refine capture printout perf report: Display 100% correctly perf stat: Print out all arguments perf report: Add front-entry cache for lookups perf help: Fix bug when there's no perf-* command around perf_counter tools: Optimize harder perf_counter tools: Work around warnings in older GCCs perf_counter: Fix throttling lock-up perf report: Clean up event processing perf report: Split out event processing helpers perf report: Handle all known event types perf top: Reduce default filter threshold perf record/report: Fix PID/COMM handling perf_counter tools: Build with native optimization perf_counter tools: Print out symbol parsing errors only if --verbose perf report: Print out the total number of events perf_counter tools: Add color terminal output support perf_counter tools: Dont output in color on !tty perf report: Bail out if there are unrecognized options/arguments perf stat: Update help text perf record: Split out counter creation into a helper function perf record, top: Implement --freq perf report: Display user/kernel differentiator perf_counter tools: Clarify events/samples naming perf_counter tools: Remove -march=3Dnative perf_counter tools: Sample and display frequency adjustment changes perf record: Set frequency correctly perf_counter: Separate out attr->type from attr->config perf_counter: Implement generalized cache event types perf_counter tools: Fix cache-event printout perf_counter tools: Uniform help printouts perf_counter tools: Tidy up manpage details perf_counter tools: Prepare for 'perf annotate' perf_counter tools: Add 'perf annotate' feature perf_counter tools: Move from Documentation/perf_counter/ to tools/pe= rf/ perf_counter tools: Fix error condition in parse_aliases() perf annotate: Automatically pick up vmlinux in the local directory perf annotate: Fix command line help text Jaswinder Singh (1): x86: perf_counter.c intel_perfmon_event_map and max_intel_perfmon_eve= nts should be static Jaswinder Singh Rajput (7): x86: perf_counter remove unwanted hw_perf_enable_all x86: irqinit_32.c fix compilation warning x86: prepare perf_counter to add more cpus x86: AMD Support for perf_counter x86: decent declarations in perf_counter.c x86: use pr_info in perf_counter.c x86: perf_counter cleanup Luis Henriques (2): perf_counter: fix alignment in /proc/interrupts locking, rtmutex.c: Documentation cleanup Mike Galbraith (23): perfcounters: throttle on too high IRQ rates perfcounters: ratelimit performance counter interrupts perfcounters fix section mismatch warning in perf_counter.c::perf_cou= nters_lapic_init() perfcounters: fix refcounting bug perfcounters: fix "perf counters kill oprofile" bug perf_counters: account NMI interrupts perfcounters: fix use after free in perf_release() perf_counter tools: kerneltop: add real-time data acquisition thread perf_counter tools: kerneltop: display per function percentage along = with event count perf_counter tools: fix build error perf_counter, x86: clean up throttling printk perf top: fix segfault perf top: Reduce display overhead perf top: Remove leftover NMI/IRQ bits perf top: fix typo in -d option perf record: Fix the profiling of existing pid or whole box perf_counter tools: Document '--' option parsing terminator perf_counter tools: Fix top symbol table dump typo perf_counter tools: Fix top symbol table max_ip typo perf_counter tools: Guard against record damaging existing files perf_counter tools: Make .gitignore reflect perf_counter tools files perf_counter tools: Cleanup Makefile perf_counter tools: Fix uninitialized variable in perf-report.c Paul Mackerras (62): perf_counter: Fix return value from dummy hw_perf_counter_init perf_counter: Fix the cpu_clock software counter perf_counter: Add optional hw_perf_group_sched_in arch function perf_counter: Add dummy perf_counter_print_debug function powerpc/perf_counter: Add perf_counter system call on powerpc powerpc: Provide a way to defer perf counter work until interrupts ar= e enabled powerpc/perf_counter: Add generic support for POWER-family PMU hardwa= re powerpc/perf_counter: Add support for PPC970 family powerpc/perf_counter: Add support for POWER6 perf_counter: Always schedule all software counters in powerpc/perf_counter: Make sure PMU gets enabled properly perf_counter: Add support for pinned and exclusive counter groups perf_counter: Add counter enable/disable ioctls perf_counters: make software counters work as per-cpu counters perf_counters: allow users to count user, kernel and/or hypervisor ev= ents perfcounters: fix refcounting bug, take 2 perfcounters: make context switch and migration software counters wor= k again perfcounters/powerpc: Make exclude_kernel bit work on Apple G5 proces= sors perfcounters/powerpc: Add support for POWER5 processors perfcounters: fix a few minor cleanliness issues perfcounters: provide expansion room in the ABI perfcounters/powerpc: fix oops with multiple counters in a group perfcounters/powerpc: add support for POWER5+ processors perfcounters/powerpc: add support for POWER4 processors perf_counter: abstract wakeup flag setting in core to fix powerpc bui= ld perf_counter: powerpc: clean up perc_counter_interrupt perf_counter: fix type/event_id layout on big-endian systems perf_counter: add an mmap method to allow userspace to read hardware = counters perf_counter tools: remove glib dependency and fix bugs in kerneltop.= c perf_counter: update documentation perf_counter: record time running and time enabled for each counter perf_counter: powerpc: only reserve PMU hardware when we need it perf_counter: make it possible for hw_perf_counter_init to return err= or codes perf_counter tools: optionally scale counter values in perfstat mode perf_counter: fix powerpc build perf_counter: powerpc: set sample enable bit for marked instruction e= vents perf_counter: add MAINTAINERS entry perf_counter: powerpc: add nmi_enter/nmi_exit calls perf_counter: powerpc: allow use of limited-function counters perf_counter: update copyright notice perf_counter: Put whole group on when enabling group leader perf_counter: don't count scheduler ticks as context switches perf_counter: call atomic64_set for counter->count perf_counter: call hw_perf_save_disable/restore around group_sched_in perf_counter: powerpc: use u64 for event codes internally perf_counter: allow arch to supply event misc flags and instruction p= ointer perf_counter: powerpc: supply more precise information on counter ove= rflow events perf_counter: powerpc: initialize cpuhw pointer before use perf_counter: Dynamically allocate tasks' perf_counter_context struct perf_counter: Optimize context switch between identical inherited con= texts perf_counter: powerpc: Implement interrupt throttling perf_counter: Fix race in attaching counters to tasks and exiting perf_counter: Don't swap contexts containing locked mutex perf_counter: Provide functions for locking and pinning the context f= or a task perf_counter: Allow software counters to count while task is not runn= ing perf_counter: Initialize per-cpu context earlier on cpu up perf_counter: Fix cpu migration counter perf_counter: Remove unused prev_state field perf_counter: powerpc: Fix event alternative code generation on POWER= 5/5+ perf_counter: powerpc: Fix race causing "oops trying to read PMC0" er= rors perf_counter: powerpc: Use new identifier names in powerpc-specific c= ode perf_counter: Fix lockup with interrupting counters Peter Zijlstra (169): perfcounters: IRQ and NMI support on AMD CPUs perfcounters: IRQ and NMI support on AMD CPUs, fix x86: perf_counter cleanup perf_counter: x86: fix 32-bit irq_period assumption perf_counter: use list_move_tail() perf_counter: add comment to barrier perf_counter: x86: use ULL postfix for 64bit constants perf_counter: software counter event infrastructure perf_counter: provide pagefault software events perf_counter: provide major/minor page fault software events perf_counter: hrtimer based sampling for software time events perf_counter: add an event_list perf_counter: fix hrtimer sampling perf_counter: fix uninitialized usage of event_list perf_counter: generic context switch event perf_counter: fix up counter free paths perf_counter: hook up the tracepoint events perf_counter: revamp syscall input ABI perf_counter: unify irq output code perf_counter: remove the event config bitfields perf_counter: avoid recursion perf_counter: new output ABI - part 1 perf_counter tools: update to new syscall ABI perf_counter tools: use mmap() output perf_counter tools: remove glib dependency and fix bugs in kerneltop.= c, fix poll() perf_counter: fix perf_poll() perf_counter: more elaborate write API perf_counter: output objects perf_counter: sanity check on the output API perf_counter: optionally provide the pid/tid of the sampled task perf_counter: kerneltop: mmap_pages argument perf_counter: kerneltop: output event support perf_counter: allow and require one-page mmap on counting counters perf_counter: unify and fix delayed counter wakeup perf_counter: fix update_userpage() perf_counter: kerneltop: simplify data_head read perf_counter: executable mmap() information perf_counter: kerneltop: parse the mmap data stream perf_counter: x86: proper error propagation for the x86 hw_perf_count= er_init() perf_counter: small cleanup of the output routines perf_counter: re-arrange the perf_event_type perf_counter tools: kerneltop: update event_types perf_counter: provide generic callchain bits perf_counter: x86: callchain support perf_counter: pmc arbitration perf_counter: move the event overflow output bits to record_type perf_counter: per event wakeups perf_counter: kerneltop: update to new ABI perf_counter: add more context information perf_counter: update mmap() counter read perf_counter: update mmap() counter read, take 2 perf_counter: add more context information perf_counter: SIGIO support perf_counter: generalize pending infrastructure perf_counter: x86: self-IPI for pending work perf_counter: theres more to overflow than writing events perf_counter: fix the mlock accounting perf_counter: PERF_RECORD_TIME perf_counter: counter overflow limit perf_counter: comment the perf_event_type stuff perf_counter: change event definition perf_counter: rework context time perf_counter: rework the task clock software counter perf_counter: remove rq->lock usage perf_counter: minimize context time updates perf_counter: fix NMI race in task clock perf_counter: provide misc bits in the event header perf_counter: use misc field to widen type perf_counter: kerneltop: keep up with ABI changes perf_counter: add some comments perf_counter: track task-comm data perf_counter: some simple userspace profiling perf_counter: move PERF_RECORD_TIME perf_counter: allow for data addresses to be recorded perf_counter: optimize mmap/comm tracking perf_counter: sysctl for system wide perf counters perf_counter: log full path names perf_counter tools: fix Documentation/perf_counter build error perf_counter: fix race in perf_output_* perf_counter: fix nmi-watchdog interaction perf_counter: tool: handle 0-length data files perf_counter: documentation update perf_counter: x86: fixup nmi_watchdog vs perf_counter boo-boo perf_counter: uncouple data_head updates from wakeups perf_counter: add ioctl(PERF_COUNTER_IOC_RESET) perf_counter: provide an mlock threshold perf_counter: fix the output lock perf_counter: inheritable sample counters perf_counter: tools: update the tools to support process and inherite= d counters perf_counter: optimize perf_counter_task_tick() perf_counter: rework ioctl()s perf_counter: add PERF_RECORD_CONFIG perf_counter: add PERF_RECORD_CPU perf_counter: fix print debug irq disable perf_counter: x86: More accurate counter update perf_counter: x86: Allow unpriviliged use of NMIs perf_counter: Fix perf_output_copy() WARN to account for overflow perf_counter: x86: Fix up the amd NMI/INT throttle perf_counter: Rework the perf counter disable/enable perf_counter: x86: Robustify interrupt handling perf_counter: remove perf_disable/enable exports perf_counter: per user mlock gift perf_counter: frequency based adaptive irq_period perf top: update to use the new freq interface perf_counter: frequency based adaptive irq_period, 32-bit fix perf_counter: Fix inheritance cleanup code perf_counter: Fix counter inheritance perf_counter: Solve the rotate_ctx vs inherit race differently perf_counter: Log irq_period changes perf_counter: Optimize disable of time based sw counters perf_counter: Optimize sched in/out of counters perf_counter: Fix dynamic irq_period logging perf_counter: Sanitize counter->mutex perf_counter: Sanitize context locking perf_counter: Fix userspace build perf_counter: Simplify context cleanup perf_counter: Change pctrl() behaviour perf_counter: Remove perf_counter_context::nr_enabled perf_counter: Fix perf-$cmd invokation perf_counter: Remove unused ABI bits perf_counter: Make pctrl() affect inherited counters too perf_counter: Propagate inheritance failures down the fork() path perf_counter: Fix PERF_COUNTER_CONTEXT_SWITCHES for cpu counters perf_counter: x86: Expose INV and EDGE bits perf_counter: x86: Remove interrupt throttle perf_counter: Generic per counter interrupt throttle perf report: Fix segfault on unknown symbols perf report: Fix ELF symbol parsing perf report: More robust error handling perf_counter: tools: /usr/lib/debug%s.debug support perf_counter: tools: report: Add vmlinux support perf_counter: tools: report: Rework histogram code perf_counter: tools: report: Dynamic sort/print bits pref_counter: tools: report: Add --sort option perf_counter: tools: report: Add comm sorting pref_counter: tools: report: Add dso sorting perf_counter tools: report: Implement header output for --sort varian= ts perf_counter: Fix COMM and MMAP events for cpu wide counters perf_counter: Clean up task_ctx vs interrupts perf_counter: Ammend cleanup in fork() fail perf_counter: Use PID namespaces properly perf_counter: tools: Expand the COMM,MMAP event synthesizer perf_counter: tools: Better handle existing data files perf_counter tools: Remove the last nmi bits x86: Fix atomic_long_xchg() on 64bit perf_counter: Add unique counter id perf_counter: Rename various fields perf_counter: Remove the last nmi/irq bits perf_counter: x86: Emulate longer sample periods perf_counter: Change data head from u32 to u64 perf_counter: Add ioctl for changing the sample period/frequency perf_counter: Rename perf_counter_hw_event =3D> perf_counter_attr perf_counter tools: Fix up the ABI shakeup perf report: Separate out idle threads perf_counter: Add a comm hook for pure fork()s perf record: Use long arg for counter period perf report: Fix comm sorting perf_counter: Fix race in counter initialization perf report: Simplify symbol output perf report: Add consistent spacing rules perf_counter: Add fork event perf_counter: Remove munmap stuff perf_counter tools: Use fork and remove munmap events x86: Set context.vdso before installing the mapping perf_counter: Generate mmap events for install_special_mapping() perf report: Deal with maps perf_counter: Change PERF_SAMPLE_CONFIG into PERF_SAMPLE_ID perf_counter: Add PERF_SAMPLE_PERIOD perf_counter: Fix frequency adjustment for < HZ Robert Richter (30): perf_counter, x86: remove X86_FEATURE_ARCH_PERFMON flag for AMD cpus perf_counter, x86: declare perf_max_counters only for CONFIG_PERF_COU= NTERS perf_counter, x86: add default path to cpu detection perf_counter, x86: rework pmc_amd_save_disable_all() and pmc_amd_rest= ore_all() perf_counter, x86: protect per-cpu variables with compile barriers on= ly perfcounters: rename struct hw_perf_counter_ops into struct pmu perf_counter, x86: rename struct pmc_x86_ops into struct x86_pmu perf_counter, x86: make interrupt handler model specific perf_counter, x86: remove get_status() from struct x86_pmu perf_counter, x86: remove ack_status() from struct x86_pmu perf_counter, x86: rename __hw_perf_counter_set_period into x86_perf_= counter_set_period perf_counter, x86: rename intel only functions perf_counter, x86: modify initialization of struct x86_pmu perf_counter, x86: make x86_pmu data a static struct perf_counter, x86: move counter parameters to struct x86_pmu perf_counter, x86: make pmu version generic perf_counter, x86: make x86_pmu_read() static inline perf_counter, x86: rename cpuc->active_mask perf_counter, x86: generic use of cpuc->active perf_counter, x86: consistent use of type int for counter index perf_counter, x86: rework counter enable functions perf_counter, x86: rework counter disable functions perf_counter, x86: change and remove pmu initialization checks perf_counter, x86: implement the interrupt handler for AMD cpus perf_counter, x86: return raw count with x86_perf_counter_update() perf_counter, x86: introduce max_period variable perf_counter, x86: remove vendor check in fixed_mode_idx() perf_counter, x86: remove unused function argument in intel_pmu_get_s= tatus() perf_counter: update 'perf top' documentation perf_counter, x86: rename bitmasks to ->used_mask and ->active_mask Steven Whitehouse (1): perfcounters: export perf_tpcounter_event Thomas Gleixner (14): performance counters: core code perf counters: protect them against CSTATE transitions perf counters: clean up 'raw' type API perf counters: expand use of counter->event signals: split do_tkill signals: implement sys_rt_tgsigqueueinfo x86: hookup sys_rt_tgsigqueueinfo perf_counter tools: remove build generated files perfcounter tools: move common defines ... to local header file perfcounter tools: make rdclock an inline function perfcounter tools: fix pointer mismatch perfcounter tools: get the syscall number from arch/*/include/asm/uni= std.h perf_counter tools: Add 'perf list' to list available events perf_counter tools: Add help for perf list Tim Blechmann (1): perf_counter: include missing header Wu Fengguang (9): perf_counter tools: Merge common code into perfcounters.h perf_counter tools: Move perfstat supporting code into perfcounters.h perf_counter tools: support symbolic event names in kerneltop perf_counter tools: Reuse event_name() in kerneltop perf_counter tools: move remaining code into kerneltop.c perf_counter tools: fix comment for sym_weight() perf_counter tools: fix event_id type perf_counter tools: cut down default count for cpu-cycles perf_counter tools: when no command is feed to perfstat, display help= and exit Yinghai Lu (2): perf_counter: more barrier in blank weak function x86: make irqinit_32.c more like irqinit_64.c, v2 Yong Wang (4): perf_counter/x86: Always use NMI for performance-monitoring interrupt perf_counter/x86: Remove the IRQ (non-NMI) handling bits perf_counter: Documentation update perf_counter tools: Fix incorrect printf formats MAINTAINERS | 10 + arch/powerpc/include/asm/hw_irq.h | 39 + arch/powerpc/include/asm/paca.h | 1 + arch/powerpc/include/asm/perf_counter.h | 95 + arch/powerpc/include/asm/reg.h | 2 + arch/powerpc/include/asm/systbl.h | 2 +- arch/powerpc/include/asm/unistd.h | 1 + arch/powerpc/kernel/Makefile | 2 + arch/powerpc/kernel/asm-offsets.c | 1 + arch/powerpc/kernel/entry_64.S | 9 + arch/powerpc/kernel/irq.c | 5 + arch/powerpc/kernel/perf_counter.c | 1214 ++++++ arch/powerpc/kernel/power4-pmu.c | 557 +++ arch/powerpc/kernel/power5+-pmu.c | 630 ++++ arch/powerpc/kernel/power5-pmu.c | 570 +++ arch/powerpc/kernel/power6-pmu.c | 490 +++ arch/powerpc/kernel/ppc970-pmu.c | 441 +++ arch/powerpc/mm/fault.c | 10 +- arch/powerpc/platforms/Kconfig.cputype | 1 + arch/x86/Kconfig | 1 + arch/x86/ia32/ia32entry.S | 4 +- arch/x86/include/asm/atomic_32.h | 236 ++ arch/x86/include/asm/entry_arch.h | 2 +- arch/x86/include/asm/hardirq.h | 2 + arch/x86/include/asm/hw_irq.h | 2 + arch/x86/include/asm/intel_arch_perfmon.h | 31 - arch/x86/include/asm/irq_vectors.h | 8 +- arch/x86/include/asm/perf_counter.h | 100 + arch/x86/include/asm/unistd_32.h | 2 + arch/x86/include/asm/unistd_64.h | 5 +- arch/x86/kernel/apic/apic.c | 3 + arch/x86/kernel/cpu/Makefile | 12 +- arch/x86/kernel/cpu/common.c | 2 + arch/x86/kernel/cpu/perf_counter.c | 1417 +++++++ arch/x86/kernel/cpu/perfctr-watchdog.c | 4 +- arch/x86/kernel/entry_64.S | 5 + arch/x86/kernel/irq.c | 10 + arch/x86/kernel/irqinit_32.c | 59 +- arch/x86/kernel/irqinit_64.c | 12 +- arch/x86/kernel/signal.c | 1 - arch/x86/kernel/syscall_table_32.S | 2 + arch/x86/kernel/traps.c | 15 +- arch/x86/mm/fault.c | 12 +- arch/x86/oprofile/nmi_int.c | 7 +- arch/x86/oprofile/op_model_ppro.c | 10 +- arch/x86/vdso/vdso32-setup.c | 6 +- arch/x86/vdso/vma.c | 7 +- drivers/char/sysrq.c | 2 + fs/exec.c | 9 + include/asm-generic/atomic.h | 2 +- include/linux/compat.h | 2 + include/linux/init_task.h | 10 + include/linux/kernel_stat.h | 5 + include/linux/mutex.h | 1 + include/linux/perf_counter.h | 685 ++++ include/linux/prctl.h | 3 + include/linux/sched.h | 21 +- include/linux/signal.h | 2 + include/linux/syscalls.h | 5 + init/Kconfig | 35 + kernel/Makefile | 1 + kernel/compat.c | 11 + kernel/exit.c | 16 +- kernel/fork.c | 12 + kernel/mutex.c | 27 +- kernel/perf_counter.c | 4160 +++++++++++++++++= ++++ kernel/rtmutex.c | 8 +- kernel/sched.c | 57 +- kernel/signal.c | 56 +- kernel/sys.c | 7 + kernel/sys_ni.c | 3 + kernel/sysctl.c | 27 + kernel/timer.c | 3 + mm/mmap.c | 5 + tools/perf/.gitignore | 16 + tools/perf/Documentation/Makefile | 300 ++ tools/perf/Documentation/asciidoc.conf | 91 + tools/perf/Documentation/manpage-1.72.xsl | 14 + tools/perf/Documentation/manpage-base.xsl | 35 + tools/perf/Documentation/manpage-bold-literal.xsl | 17 + tools/perf/Documentation/manpage-normal.xsl | 13 + tools/perf/Documentation/manpage-suppress-sp.xsl | 21 + tools/perf/Documentation/perf-annotate.txt | 29 + tools/perf/Documentation/perf-help.txt | 38 + tools/perf/Documentation/perf-list.txt | 25 + tools/perf/Documentation/perf-record.txt | 42 + tools/perf/Documentation/perf-report.txt | 26 + tools/perf/Documentation/perf-stat.txt | 66 + tools/perf/Documentation/perf-top.txt | 39 + tools/perf/Documentation/perf.txt | 24 + tools/perf/Makefile | 929 +++++ tools/perf/builtin-annotate.c | 1355 +++++++ tools/perf/builtin-help.c | 461 +++ tools/perf/builtin-list.c | 20 + tools/perf/builtin-record.c | 544 +++ tools/perf/builtin-report.c | 1291 +++++++ tools/perf/builtin-stat.c | 339 ++ tools/perf/builtin-top.c | 692 ++++ tools/perf/builtin.h | 26 + tools/perf/command-list.txt | 10 + tools/perf/design.txt | 442 +++ tools/perf/perf.c | 428 +++ tools/perf/perf.h | 67 + tools/perf/util/PERF-VERSION-GEN | 42 + tools/perf/util/abspath.c | 117 + tools/perf/util/alias.c | 77 + tools/perf/util/cache.h | 119 + tools/perf/util/color.c | 241 ++ tools/perf/util/color.h | 36 + tools/perf/util/config.c | 873 +++++ tools/perf/util/ctype.c | 26 + tools/perf/util/environment.c | 9 + tools/perf/util/exec_cmd.c | 165 + tools/perf/util/exec_cmd.h | 13 + tools/perf/util/generate-cmdlist.sh | 24 + tools/perf/util/help.c | 367 ++ tools/perf/util/help.h | 29 + tools/perf/util/levenshtein.c | 84 + tools/perf/util/levenshtein.h | 8 + tools/perf/util/list.h | 603 +++ tools/perf/util/pager.c | 99 + tools/perf/util/parse-events.c | 316 ++ tools/perf/util/parse-events.h | 17 + tools/perf/util/parse-options.c | 508 +++ tools/perf/util/parse-options.h | 174 + tools/perf/util/path.c | 353 ++ tools/perf/util/quote.c | 481 +++ tools/perf/util/quote.h | 68 + tools/perf/util/rbtree.c | 383 ++ tools/perf/util/rbtree.h | 171 + tools/perf/util/run-command.c | 395 ++ tools/perf/util/run-command.h | 93 + tools/perf/util/sigchain.c | 52 + tools/perf/util/sigchain.h | 11 + tools/perf/util/strbuf.c | 359 ++ tools/perf/util/strbuf.h | 137 + tools/perf/util/string.c | 34 + tools/perf/util/string.h | 8 + tools/perf/util/symbol.c | 576 +++ tools/perf/util/symbol.h | 47 + tools/perf/util/usage.c | 80 + tools/perf/util/util.h | 410 ++ tools/perf/util/wrapper.c | 206 + 143 files changed, 26321 insertions(+), 122 deletions(-) create mode 100644 arch/powerpc/include/asm/perf_counter.h create mode 100644 arch/powerpc/kernel/perf_counter.c create mode 100644 arch/powerpc/kernel/power4-pmu.c create mode 100644 arch/powerpc/kernel/power5+-pmu.c create mode 100644 arch/powerpc/kernel/power5-pmu.c create mode 100644 arch/powerpc/kernel/power6-pmu.c create mode 100644 arch/powerpc/kernel/ppc970-pmu.c delete mode 100644 arch/x86/include/asm/intel_arch_perfmon.h create mode 100644 arch/x86/include/asm/perf_counter.h create mode 100644 arch/x86/kernel/cpu/perf_counter.c create mode 100644 include/linux/perf_counter.h create mode 100644 kernel/perf_counter.c create mode 100644 tools/perf/.gitignore create mode 100644 tools/perf/Documentation/Makefile create mode 100644 tools/perf/Documentation/asciidoc.conf create mode 100644 tools/perf/Documentation/manpage-1.72.xsl create mode 100644 tools/perf/Documentation/manpage-base.xsl create mode 100644 tools/perf/Documentation/manpage-bold-literal.xsl create mode 100644 tools/perf/Documentation/manpage-normal.xsl create mode 100644 tools/perf/Documentation/manpage-suppress-sp.xsl create mode 100644 tools/perf/Documentation/perf-annotate.txt create mode 100644 tools/perf/Documentation/perf-help.txt create mode 100644 tools/perf/Documentation/perf-list.txt create mode 100644 tools/perf/Documentation/perf-record.txt create mode 100644 tools/perf/Documentation/perf-report.txt create mode 100644 tools/perf/Documentation/perf-stat.txt create mode 100644 tools/perf/Documentation/perf-top.txt create mode 100644 tools/perf/Documentation/perf.txt create mode 100644 tools/perf/Makefile create mode 100644 tools/perf/builtin-annotate.c create mode 100644 tools/perf/builtin-help.c create mode 100644 tools/perf/builtin-list.c create mode 100644 tools/perf/builtin-record.c create mode 100644 tools/perf/builtin-report.c create mode 100644 tools/perf/builtin-stat.c create mode 100644 tools/perf/builtin-top.c create mode 100644 tools/perf/builtin.h create mode 100644 tools/perf/command-list.txt create mode 100644 tools/perf/design.txt create mode 100644 tools/perf/perf.c create mode 100644 tools/perf/perf.h create mode 100755 tools/perf/util/PERF-VERSION-GEN create mode 100644 tools/perf/util/abspath.c create mode 100644 tools/perf/util/alias.c create mode 100644 tools/perf/util/cache.h create mode 100644 tools/perf/util/color.c create mode 100644 tools/perf/util/color.h create mode 100644 tools/perf/util/config.c create mode 100644 tools/perf/util/ctype.c create mode 100644 tools/perf/util/environment.c create mode 100644 tools/perf/util/exec_cmd.c create mode 100644 tools/perf/util/exec_cmd.h create mode 100755 tools/perf/util/generate-cmdlist.sh create mode 100644 tools/perf/util/help.c create mode 100644 tools/perf/util/help.h create mode 100644 tools/perf/util/levenshtein.c create mode 100644 tools/perf/util/levenshtein.h create mode 100644 tools/perf/util/list.h create mode 100644 tools/perf/util/pager.c create mode 100644 tools/perf/util/parse-events.c create mode 100644 tools/perf/util/parse-events.h create mode 100644 tools/perf/util/parse-options.c create mode 100644 tools/perf/util/parse-options.h create mode 100644 tools/perf/util/path.c create mode 100644 tools/perf/util/quote.c create mode 100644 tools/perf/util/quote.h create mode 100644 tools/perf/util/rbtree.c create mode 100644 tools/perf/util/rbtree.h create mode 100644 tools/perf/util/run-command.c create mode 100644 tools/perf/util/run-command.h create mode 100644 tools/perf/util/sigchain.c create mode 100644 tools/perf/util/sigchain.h create mode 100644 tools/perf/util/strbuf.c create mode 100644 tools/perf/util/strbuf.h create mode 100644 tools/perf/util/string.c create mode 100644 tools/perf/util/string.h create mode 100644 tools/perf/util/symbol.c create mode 100644 tools/perf/util/symbol.h create mode 100644 tools/perf/util/usage.c create mode 100644 tools/perf/util/util.h create mode 100644 tools/perf/util/wrapper.c --=20 Nathan From nscott@aconex.com Thu Jun 11 23:34:53 2009 X-Spam-Checker-Version: SpamAssassin 3.3.0-rupdated (updated) on oss.sgi.com X-Spam-Level: X-Spam-Status: No, score=-2.3 required=5.0 tests=AWL,BAYES_00 autolearn=ham version=3.3.0-rupdated Received: from cuda.sgi.com (cuda1.sgi.com [192.48.157.11]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id n5C4YrWs186415 for ; Thu, 11 Jun 2009 23:34:53 -0500 X-ASG-Debug-ID: 1244781749-4bf302a00000-S8gJnT X-Barracuda-URL: http://cuda.sgi.com:80/cgi-bin/mark.cgi Received: from postoffice2.aconex.com (localhost [127.0.0.1]) by cuda.sgi.com (Spam Firewall) with ESMTP id 474C3120B740 for ; Thu, 11 Jun 2009 21:42:32 -0700 (PDT) Received: from postoffice2.aconex.com (mail.aconex.com [203.89.202.182]) by cuda.sgi.com with ESMTP id P8gF8suYGPGhnHiX for ; Thu, 11 Jun 2009 21:42:32 -0700 (PDT) Received: from postoffice.aconex.com (localhost [127.0.0.1]) by postoffice2.aconex.com (Spam Firewall) with ESMTP id B2E5F2A5A4; Fri, 12 Jun 2009 14:35:07 +1000 (EST) Received: from postoffice.aconex.com (postoffice.yarra.acx [192.168.102.1]) by postoffice2.aconex.com with ESMTP id js82g6Hl2v6YHBny; Fri, 12 Jun 2009 14:35:07 +1000 (EST) Received: from gatekeeper.aconex.com (gatekeeper.yarra.acx [192.168.102.10]) by postoffice.aconex.com (Postfix) with ESMTP id C8E06A50118; Fri, 12 Jun 2009 14:34:49 +1000 (EST) Received: from localhost (localhost.localdomain [127.0.0.1]) by gatekeeper.aconex.com (Postfix) with ESMTP id CF42C4FD85; Fri, 12 Jun 2009 14:43:58 +1000 (EST) X-Virus-Scanned: ClamAV version 0.94.2, clamav-milter version 0.94.2 on oss.sgi.com X-Virus-Scanned: amavisd-new at gatekeeper.yarra.acx Received: from gatekeeper.aconex.com ([127.0.0.1]) by localhost (gatekeeper.aconex.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id cIchovxOV2BN; Fri, 12 Jun 2009 14:43:54 +1000 (EST) Received: from mail-au.aconex.com (mail-au.aconex.com [192.168.102.12]) by gatekeeper.aconex.com (Postfix) with ESMTP id 243374FD84; Fri, 12 Jun 2009 14:43:54 +1000 (EST) Date: Fri, 12 Jun 2009 14:35:02 +1000 (EST) From: Nathan Scott To: Max Matveev Cc: pcp@oss.sgi.com Message-ID: <1724715007.6285861244781302936.JavaMail.root@mail-au.aconex.com> X-ASG-Orig-Subj: MMV questions Subject: MMV questions MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Originating-IP: [203.89.192.141] X-Mailer: Zimbra 5.0.13_GA_2791.RHEL5_64 (ZimbraWebClient - [unknown] (Linux)/5.0.13_GA_2791.RHEL5_64) X-Barracuda-Connect: mail.aconex.com[203.89.202.182] X-Barracuda-Start-Time: 1244781754 X-Barracuda-Bayes: INNOCENT GLOBAL 0.0000 1.0000 -2.0210 X-Barracuda-Virus-Scanned: by cuda.sgi.com at sgi.com X-Barracuda-Spam-Score: -2.02 X-Barracuda-Spam-Status: No, SCORE=-2.02 using per-user scores of TAG_LEVEL=2.0 QUARANTINE_LEVEL=1000.0 KILL_LEVEL=2.1 tests= X-Barracuda-Spam-Report: Code version 3.2, rules version 3.2.2.659 Rule breakdown below pts rule name description ---- ---------------------- -------------------------------------------------- X-Virus-Status: Clean Hey Max, Few questions for you, now we've started looking into using the MMV library + agent a bit here. - how does one create an instantaneous value? (like, number of users, length of a queue, etc). - what is the MMV_ENTRY_DISCRETE type? (seems to become a PM_SEM_DISCRETE metric that changes and has some state associated with it?) - was there are pmdammv(1) man page at any point? - did you consider string values? (no support currently, afaict, but did you have a design in mind for implementing that?) More will follow as we dig deeper. We'll probably produce a Perl binding for exercising the API easily, and instrumenting Perl scripts, as well as a Java language implementation of the client side of things (which we plan to use for some production monitoring). thanks! -- Nathan From nscott@aconex.com Fri Jun 12 00:11:38 2009 X-Spam-Checker-Version: SpamAssassin 3.3.0-rupdated (updated) on oss.sgi.com X-Spam-Level: X-Spam-Status: No, score=-2.1 required=5.0 tests=AWL,BAYES_00,J_CHICKENPOX_35, J_CHICKENPOX_36,J_CHICKENPOX_45 autolearn=no version=3.3.0-rupdated Received: from cuda.sgi.com (cuda3.sgi.com [192.48.176.15]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id n5C5Bb9d189643 for ; Fri, 12 Jun 2009 00:11:38 -0500 X-ASG-Debug-ID: 1244783517-1dd002d80000-S8gJnT X-Barracuda-URL: http://cuda.sgi.com:80/cgi-bin/mark.cgi Received: from postoffice2.aconex.com (localhost [127.0.0.1]) by cuda.sgi.com (Spam Firewall) with ESMTP id C27191AC0CFC for ; Thu, 11 Jun 2009 22:11:58 -0700 (PDT) Received: from postoffice2.aconex.com (mail.aconex.com [203.89.202.182]) by cuda.sgi.com with ESMTP id X7fFEDlJItRwXMhM for ; Thu, 11 Jun 2009 22:11:58 -0700 (PDT) Received: from postoffice.aconex.com (localhost [127.0.0.1]) by postoffice2.aconex.com (Spam Firewall) with ESMTP id 7EDFD6C9554 for ; Fri, 12 Jun 2009 15:11:56 +1000 (EST) Received: from postoffice.aconex.com (postoffice.yarra.acx [192.168.102.1]) by postoffice2.aconex.com with ESMTP id NObDj2GqYPBROGFT for ; Fri, 12 Jun 2009 15:11:56 +1000 (EST) Received: from gatekeeper.aconex.com (gatekeeper.yarra.acx [192.168.102.10]) by postoffice.aconex.com (Postfix) with ESMTP id 95B47A50118 for ; Fri, 12 Jun 2009 15:11:38 +1000 (EST) Received: from localhost (localhost.localdomain [127.0.0.1]) by gatekeeper.aconex.com (Postfix) with ESMTP id D32694FD86 for ; Fri, 12 Jun 2009 15:20:47 +1000 (EST) X-Virus-Scanned: ClamAV version 0.94.2, clamav-milter version 0.94.2 on oss.sgi.com X-Virus-Scanned: amavisd-new at gatekeeper.yarra.acx Received: from gatekeeper.aconex.com ([127.0.0.1]) by localhost (gatekeeper.aconex.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id AhGZWdMR7bUo for ; Fri, 12 Jun 2009 15:20:43 +1000 (EST) Received: from mail-au.aconex.com (mail-au.aconex.com [192.168.102.12]) by gatekeeper.aconex.com (Postfix) with ESMTP id B28324FD84 for ; Fri, 12 Jun 2009 15:20:43 +1000 (EST) Date: Fri, 12 Jun 2009 15:11:52 +1000 (EST) From: Nathan Scott To: pcp@oss.sgi.com Message-ID: <952202787.6290011244783512294.JavaMail.root@mail-au.aconex.com> X-ASG-Orig-Subj: pcp updates Subject: pcp updates MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Originating-IP: [203.89.192.141] X-Mailer: Zimbra 5.0.13_GA_2791.RHEL5_64 (ZimbraWebClient - [unknown] (Linux)/5.0.13_GA_2791.RHEL5_64) X-Barracuda-Connect: mail.aconex.com[203.89.202.182] X-Barracuda-Start-Time: 1244783519 X-Barracuda-Bayes: INNOCENT GLOBAL 0.0000 1.0000 -2.0210 X-Barracuda-Virus-Scanned: by cuda.sgi.com at sgi.com X-Barracuda-Spam-Score: -2.02 X-Barracuda-Spam-Status: No, SCORE=-2.02 using per-user scores of TAG_LEVEL=2.0 QUARANTINE_LEVEL=1000.0 KILL_LEVEL=2.1 tests= X-Barracuda-Spam-Report: Code version 3.2, rules version 3.2.2.659 Rule breakdown below pts rule name description ---- ---------------------- -------------------------------------------------- X-Virus-Status: Clean Changes committed to git://oss.sgi.com/nathans/pcp.git man/man3/mmv_inc_value.3 | 2 - man/man4/mmv.4 | 18 +++++----- src/include/mmv_stats.h | 68 ++++++++++++++++++++--------------------- src/libpcp_mmv/src/mmv_stats.c | 2 - src/pmdas/mmv/mmv.c | 64 ++++++++++++++++++-------------------- src/pmdas/windows/pmda.c | 2 - 6 files changed, 76 insertions(+), 80 deletions(-) commit 66194b20e1984f08eecc6163a14d3c6cb4391e41 Author: Nathan Scott Date: Fri Jun 12 15:04:15 2009 +1000 hinv.ndisk should have discrete, not instantaneous semantics in Windows PMDA commit c5c5740e919e1b3c852269e2b140ee85864103a7 Author: Nathan Scott Date: Fri Jun 12 15:03:17 2009 +1000 MMV agent and library fixes, big and small. - fix man page cut&paste typo on mmv_inc_value NAME section - use double-backquote in mmv.4 section describing MMV magic - document the now-fixed sizes of MMV file format fields, esp. TOC struct which was not correct for 64-bit platforms (time_t). - fix mmv.4 typos - Lenght and secion, cut&pasted several times. - use fixed size types in the on-disk format for MMV mmapped file, this change largely cosmetic except for removal of time_t. - fix up some minor whitespace crimes in mmv_stats.h - pmdammv had a 32 bit (int) value for gen number in-core, but it was time_t on disk (which is a long - 64 bits for 64 bit hosts). - if HAVE_MKSTEMP was defined, we botch it completely in two ways: o path[] buffer used to hold both targets of rename(2), so we attempt to rename a file to itself. o free() of the filename was only correct for the tempnam usage, which mallocs the filename. Currently we double-free at the end of map_stats which glibc detects and implodes. - remove a couple of unneeded, shadow declarations of "int i" in the map_stats routine. - we should not unlink the temporary namespace file explicitly, as this is now done in the ReplacePmnsNames script. From makc@iinet.net.au Sun Jun 14 08:10:33 2009 X-Spam-Checker-Version: SpamAssassin 3.3.0-rupdated (updated) on oss.sgi.com X-Spam-Level: X-Spam-Status: No, score=-2.6 required=5.0 tests=AWL,BAYES_00 autolearn=ham version=3.3.0-rupdated Received: from cuda.sgi.com (cuda3.sgi.com [192.48.176.15]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id n5EDAWnD045713 for ; Sun, 14 Jun 2009 08:10:33 -0500 X-ASG-Debug-ID: 1244985053-4e9e01af0000-S8gJnT X-Barracuda-URL: http://cuda.sgi.com:80/cgi-bin/mark.cgi Received: from outbound.icp-qv1-irony-out1.iinet.net.au (localhost [127.0.0.1]) by cuda.sgi.com (Spam Firewall) with ESMTP id 8D4AE1AC8FF9 for ; Sun, 14 Jun 2009 06:10:53 -0700 (PDT) Received: from outbound.icp-qv1-irony-out1.iinet.net.au (outbound.icp-qv1-irony-out1.iinet.net.au [203.59.1.106]) by cuda.sgi.com with ESMTP id ChXYhPZj5nYaERdl for ; Sun, 14 Jun 2009 06:10:53 -0700 (PDT) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: ApoEAEyTNErL2Rwk/2dsb2JhbADQZIQNBQ X-IronPort-AV: E=Sophos;i="4.42,217,1243785600"; d="scan'208";a="531636880" Received: from unknown (HELO alma.crabbed.net) ([203.217.28.36]) by outbound.icp-qv1-irony-out1.iinet.net.au with ESMTP; 14 Jun 2009 21:10:51 +0800 Received: by alma.crabbed.net (Postfix, from userid 501) id 949C038B91C; Sun, 14 Jun 2009 23:09:06 +1000 (EST) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Message-ID: <18996.63090.298954.23537@iinet.net.au> Date: Sun, 14 Jun 2009 23:09:06 +1000 From: Max Matveev To: Nathan Scott Cc: pcp@oss.sgi.com X-ASG-Orig-Subj: Re: MMV questions Subject: Re: MMV questions In-Reply-To: <1724715007.6285861244781302936.JavaMail.root@mail-au.aconex.com> References: <1724715007.6285861244781302936.JavaMail.root@mail-au.aconex.com> X-Mailer: VM 7.17 under 21.4 (patch 19) "Constant Variable" XEmacs Lucid X-Barracuda-Connect: outbound.icp-qv1-irony-out1.iinet.net.au[203.59.1.106] X-Barracuda-Start-Time: 1244985055 X-Barracuda-Bayes: INNOCENT GLOBAL 0.0000 1.0000 -2.0210 X-Barracuda-Virus-Scanned: by cuda.sgi.com at sgi.com X-Barracuda-Spam-Score: -2.02 X-Barracuda-Spam-Status: No, SCORE=-2.02 using per-user scores of TAG_LEVEL=2.0 QUARANTINE_LEVEL=1000.0 KILL_LEVEL=2.1 tests= X-Barracuda-Spam-Report: Code version 3.2, rules version 3.2.2.864 Rule breakdown below pts rule name description ---- ---------------------- -------------------------------------------------- X-Virus-Scanned: ClamAV version 0.94.2, clamav-milter version 0.94.2 on oss.sgi.com X-Virus-Status: Clean >>>>> "nscott" == Nathan Scott writes: nscott> - how does one create an instantaneous value? (like, number nscott> of users, length of a queue, etc). You can use DISCRETE and never change the extra value from 0. nscott> - what is the MMV_ENTRY_DISCRETE type? (seems to become a nscott> PM_SEM_DISCRETE metric that changes and has some state nscott> associated with it?) It's sort of a rate - I think I've used it for time sampling or some sort of rate: it's basically a difference between two samples - old and new. There is also INTEGRAL which is used to calculate the sum of samples over time - sort of like calculating the integral of a function on a particular interval. nscott> - was there are pmdammv(1) man page at any point? No, the only "documentation" was the README file. nscott> - did you consider string values? (no support currently, afaict, nscott> but did you have a design in mind for implementing that?) Did not even think about them - did not need them. The way it was written the content of the file is fixed after it has been opened, it's not going to change. If I was adding support for strings, I'd probably create yet another section in the file to store the strings and do some sort of rudumentary allocator or just fix the maximum size for each string. nscott> More will follow as we dig deeper. I see you've already cleaned up a lot of crud I've put in back in the old days. max From nscott@aconex.com Sun Jun 14 19:20:36 2009 X-Spam-Checker-Version: SpamAssassin 3.3.0-rupdated (updated) on oss.sgi.com X-Spam-Level: X-Spam-Status: No, score=-2.3 required=5.0 tests=AWL,BAYES_00 autolearn=ham version=3.3.0-rupdated Received: from cuda.sgi.com (cuda1.sgi.com [192.48.157.11]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id n5F0KZPI071964 for ; Sun, 14 Jun 2009 19:20:35 -0500 X-ASG-Debug-ID: 1245025711-76b002b20000-S8gJnT X-Barracuda-URL: http://cuda.sgi.com:80/cgi-bin/mark.cgi Received: from postoffice2.aconex.com (localhost [127.0.0.1]) by cuda.sgi.com (Spam Firewall) with ESMTP id D6E9F88DB1F for ; Sun, 14 Jun 2009 17:28:31 -0700 (PDT) Received: from postoffice2.aconex.com (mail.aconex.com [203.89.202.182]) by cuda.sgi.com with ESMTP id 1m9HZFUR8hqOIxtw for ; Sun, 14 Jun 2009 17:28:31 -0700 (PDT) Received: from postoffice.aconex.com (localhost [127.0.0.1]) by postoffice2.aconex.com (Spam Firewall) with ESMTP id A19847908C8; Mon, 15 Jun 2009 10:20:54 +1000 (EST) Received: from postoffice.aconex.com (postoffice.yarra.acx [192.168.102.1]) by postoffice2.aconex.com with ESMTP id KeNadN40G8bvI73Z; Mon, 15 Jun 2009 10:20:54 +1000 (EST) Received: from gatekeeper.aconex.com (gatekeeper.yarra.acx [192.168.102.10]) by postoffice.aconex.com (Postfix) with ESMTP id 49643A50118; Mon, 15 Jun 2009 10:20:35 +1000 (EST) Received: from localhost (localhost.localdomain [127.0.0.1]) by gatekeeper.aconex.com (Postfix) with ESMTP id 28F0F4FD85; Mon, 15 Jun 2009 10:30:08 +1000 (EST) X-Virus-Scanned: ClamAV version 0.94.2, clamav-milter version 0.94.2 on oss.sgi.com X-Virus-Scanned: amavisd-new at gatekeeper.yarra.acx Received: from gatekeeper.aconex.com ([127.0.0.1]) by localhost (gatekeeper.aconex.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id NcKXpZmzHl93; Mon, 15 Jun 2009 10:30:03 +1000 (EST) Received: from mail-au.aconex.com (mail-au.aconex.com [192.168.102.12]) by gatekeeper.aconex.com (Postfix) with ESMTP id 45C504FD82; Mon, 15 Jun 2009 10:30:03 +1000 (EST) Date: Mon, 15 Jun 2009 10:20:49 +1000 (EST) From: Nathan Scott To: Max Matveev Cc: pcp@oss.sgi.com Message-ID: <765922600.6343411245025249624.JavaMail.root@mail-au.aconex.com> In-Reply-To: <380462529.6342771245024314554.JavaMail.root@mail-au.aconex.com> X-ASG-Orig-Subj: Re: MMV questions Subject: Re: MMV questions MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Originating-IP: [203.89.192.141] X-Mailer: Zimbra 5.0.13_GA_2791.RHEL5_64 (ZimbraWebClient - [unknown] (Linux)/5.0.13_GA_2791.RHEL5_64) X-Barracuda-Connect: mail.aconex.com[203.89.202.182] X-Barracuda-Start-Time: 1245025712 X-Barracuda-Bayes: INNOCENT GLOBAL 0.0000 1.0000 -2.0210 X-Barracuda-Virus-Scanned: by cuda.sgi.com at sgi.com X-Barracuda-Spam-Score: -2.02 X-Barracuda-Spam-Status: No, SCORE=-2.02 using per-user scores of TAG_LEVEL=2.0 QUARANTINE_LEVEL=1000.0 KILL_LEVEL=2.1 tests= X-Barracuda-Spam-Report: Code version 3.2, rules version 3.2.2.901 Rule breakdown below pts rule name description ---- ---------------------- -------------------------------------------------- X-Virus-Status: Clean ----- "Max Matveev" wrote: > >>>>> "nscott" == Nathan Scott writes: > > nscott> - how does one create an instantaneous value? (like, number > nscott> of users, length of a queue, etc). > You can use DISCRETE and never change the extra value from 0. Hmmm. That would only allow signed 64 bit values though. > nscott> - what is the MMV_ENTRY_DISCRETE type? (seems to become a > nscott> PM_SEM_DISCRETE metric that changes and has some state > nscott> associated with it?) > It's sort of a rate - I think I've used it for time sampling or some > sort of rate: it's basically a difference between two samples - old > and new. Yeah, AFAICT, time sampling is your INTEGRAL type, which handles the gettimeofday calls for you. So ... bit of a problem here, doesn't seem to be any way to extend the API to handle PM_SEM_INSTANT correctly. Any suggestions? Do we need a new "sem" field in the mmv_stats_metric_t structure? (as in struct pmDesc). I suspect so... which means an API/ABI change. > nscott> - did you consider string values? (no support currently, > afaict, > nscott> but did you have a design in mind for implementing that?) > Did not even think about them - did not need them. > > The way it was written the content of the file is fixed after it has > been opened, it's not going to change. If I was adding support for > strings, I'd probably create yet another section in the file to store > the strings and do some sort of rudumentary allocator or just fix the > maximum size for each string. OK, thanks, will think about it some more. More questions that came up today, maybe you have some thoughts here too: - we put all metrics in the namespace at mmv..* ... there's a request to make this .* so that developers have the names that they want for their metrics (obviously, top level name conflicts could then happen ... not much can be done about that though). - having to update $PCP_PMDAS_DIR/mmv/mmv.conf to add valid tokens is not very "user friendly" - developers would rather just be able to run their app and have the names magically appear when instrumentation is enabled. We might achieve this by scanning /var/tmp/mmv automatically and/or through a more distribution friendly /etc/pmdammv.d/* (directory of files, not just one conf file). Perhaps we could consider the above two things together - eg. if there's a mmv.conf entry with a cluster#, use that with mmv. prefixed names, else we use auto-numbering clusters and no mmv. prefix for other MMV files found in /var/tmp/mmv ...? That'd still give people who want fixed PMIDs with known clusters everything they need, and also give the flexibility other people want. cheers. -- Nathan From cowan@aconex.com Sun Jun 14 20:19:08 2009 X-Spam-Checker-Version: SpamAssassin 3.3.0-rupdated (updated) on oss.sgi.com X-Spam-Level: X-Spam-Status: No, score=-2.6 required=5.0 tests=BAYES_00 autolearn=ham version=3.3.0-rupdated Received: from cuda.sgi.com (cuda2.sgi.com [192.48.176.25]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id n5F1J8V8074160 for ; Sun, 14 Jun 2009 20:19:08 -0500 X-ASG-Debug-ID: 1245028769-13aa009b0000-S8gJnT X-Barracuda-URL: http://cuda.sgi.com:80/cgi-bin/mark.cgi Received: from postoffice2.aconex.com (localhost [127.0.0.1]) by cuda.sgi.com (Spam Firewall) with ESMTP id 829B52F58C2 for ; Sun, 14 Jun 2009 18:19:30 -0700 (PDT) Received: from postoffice2.aconex.com (mail.aconex.com [203.89.202.182]) by cuda.sgi.com with ESMTP id y3FFN3hjysrUNQ0i for ; Sun, 14 Jun 2009 18:19:30 -0700 (PDT) Received: from postoffice.aconex.com (localhost [127.0.0.1]) by postoffice2.aconex.com (Spam Firewall) with ESMTP id 9C08132814; Mon, 15 Jun 2009 11:19:28 +1000 (EST) Received: from postoffice.aconex.com (postoffice.yarra.acx [192.168.102.1]) by postoffice2.aconex.com with ESMTP id 9R2oHTdWFHXTHlqh; Mon, 15 Jun 2009 11:19:28 +1000 (EST) Received: from gatekeeper.aconex.com (gatekeeper.yarra.acx [192.168.102.10]) by postoffice.aconex.com (Postfix) with ESMTP id 3B245A50118; Mon, 15 Jun 2009 11:19:09 +1000 (EST) Received: from localhost (localhost.localdomain [127.0.0.1]) by gatekeeper.aconex.com (Postfix) with ESMTP id 7A7494FD85; Mon, 15 Jun 2009 11:28:42 +1000 (EST) X-Virus-Scanned: ClamAV version 0.94.2, clamav-milter version 0.94.2 on oss.sgi.com X-Virus-Scanned: amavisd-new at gatekeeper.yarra.acx Received: from gatekeeper.aconex.com ([127.0.0.1]) by localhost (gatekeeper.aconex.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id AFa-qwWW+6Kt; Mon, 15 Jun 2009 11:28:37 +1000 (EST) Received: from [192.168.5.132] (melho0.aconex.com [203.89.192.141]) by gatekeeper.aconex.com (Postfix) with ESMTP id 979184FD84; Mon, 15 Jun 2009 11:28:37 +1000 (EST) Message-ID: <4A35A166.6010402@aconex.com> Date: Mon, 15 Jun 2009 11:18:30 +1000 From: Paul Cowan Organization: Aconex User-Agent: Thunderbird 2.0.0.21 (X11/20090318) MIME-Version: 1.0 To: Nathan Scott CC: Max Matveev , pcp@oss.sgi.com X-ASG-Orig-Subj: Re: [pcp] MMV questions Subject: Re: [pcp] MMV questions References: <765922600.6343411245025249624.JavaMail.root@mail-au.aconex.com> In-Reply-To: <765922600.6343411245025249624.JavaMail.root@mail-au.aconex.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Barracuda-Connect: mail.aconex.com[203.89.202.182] X-Barracuda-Start-Time: 1245028771 X-Barracuda-Bayes: INNOCENT GLOBAL 0.0000 1.0000 -2.0210 X-Barracuda-Virus-Scanned: by cuda.sgi.com at sgi.com X-Barracuda-Spam-Score: -2.01 X-Barracuda-Spam-Status: No, SCORE=-2.01 using per-user scores of TAG_LEVEL=2.0 QUARANTINE_LEVEL=1000.0 KILL_LEVEL=2.1 tests=BSF_SC0_SA_TO_FROM_DOMAIN_MATCH X-Barracuda-Spam-Report: Code version 3.2, rules version 3.2.2.903 Rule breakdown below pts rule name description ---- ---------------------- -------------------------------------------------- 0.01 BSF_SC0_SA_TO_FROM_DOMAIN_MATCH Sender Domain Matches Recipient Domain X-Virus-Status: Clean Nathan Scott wrote: > Perhaps we could consider the above two things together - eg. if there's a > mmv.conf entry with a cluster#, use that with mmv. prefixed names, else we > use auto-numbering clusters and no mmv. prefix for other MMV files found > in /var/tmp/mmv ...? That'd still give people who want fixed PMIDs with > known clusters everything they need, and also give the flexibility other > people want. As someone writing a library to dump stuff into this API from Javaland (more details on that to follow shortly), this would be absolutely brilliant. I like this a lot, +1 from me. In terms of the string question which you raised earlier, I think that what I was thinking matches what Max said -- basically add strings to the end of the file and for string values, treat the value atom as an integer offset, add that to the base address of the file, and then just treat it as a char*. For our purposes, I'm happy to make this part of the file a fixed size (i.e. 256 bytes per string, which is what our existing MMV-like agent has as an upper limit now). So file format would become something along the lines of Byte Content 0 Header 32 TOC 1 (type = metrics) 48 TOC 2 (type = instances) 64 TOC 3 (type = values) 80 TOC 4 (type = strings; no change to TOC content required I think) 96 ... metrics instances + values follow as per normal ... x String 1 x+256 String 2 x+512 String 3 ... and so on. Does this make sense? Seems relatively easy and low-impact, I think. Another option would be to have 2 types, STRING and SHORT_STRING, with values known to be short (<=15 bytes) shoved in the 16 bytes allowed for the pmAtom + DISCRETE/INTEGRAL space. Not sure if this is worth it. Cheers, Paul From nscott@aconex.com Mon Jun 15 00:43:15 2009 X-Spam-Checker-Version: SpamAssassin 3.3.0-rupdated (updated) on oss.sgi.com X-Spam-Level: X-Spam-Status: No, score=-2.3 required=5.0 tests=AWL,BAYES_00 autolearn=ham version=3.3.0-rupdated Received: from cuda.sgi.com (cuda2.sgi.com [192.48.176.25]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id n5F5hE2W087157 for ; Mon, 15 Jun 2009 00:43:15 -0500 X-ASG-Debug-ID: 1245044616-4c6c017e0000-S8gJnT X-Barracuda-URL: http://cuda.sgi.com:80/cgi-bin/mark.cgi Received: from postoffice2.aconex.com (localhost [127.0.0.1]) by cuda.sgi.com (Spam Firewall) with ESMTP id 153AB2F6398 for ; Sun, 14 Jun 2009 22:43:36 -0700 (PDT) Received: from postoffice2.aconex.com (mail.aconex.com [203.89.202.182]) by cuda.sgi.com with ESMTP id VqWhTluSgNv3bjDg for ; Sun, 14 Jun 2009 22:43:36 -0700 (PDT) Received: from postoffice.aconex.com (localhost [127.0.0.1]) by postoffice2.aconex.com (Spam Firewall) with ESMTP id 91BD7791561; Mon, 15 Jun 2009 15:43:34 +1000 (EST) Received: from postoffice.aconex.com (postoffice.yarra.acx [192.168.102.1]) by postoffice2.aconex.com with ESMTP id tUgygWIBPuoqdQfD; Mon, 15 Jun 2009 15:43:34 +1000 (EST) Received: from gatekeeper.aconex.com (gatekeeper.yarra.acx [192.168.102.10]) by postoffice.aconex.com (Postfix) with ESMTP id 22A76A50118; Mon, 15 Jun 2009 15:43:15 +1000 (EST) Received: from localhost (localhost.localdomain [127.0.0.1]) by gatekeeper.aconex.com (Postfix) with ESMTP id E76C74FD84; Mon, 15 Jun 2009 15:52:49 +1000 (EST) X-Virus-Scanned: ClamAV version 0.94.2, clamav-milter version 0.94.2 on oss.sgi.com X-Virus-Scanned: amavisd-new at gatekeeper.yarra.acx Received: from gatekeeper.aconex.com ([127.0.0.1]) by localhost (gatekeeper.aconex.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id b9YSVlnnHzAf; Mon, 15 Jun 2009 15:52:45 +1000 (EST) Received: from mail-au.aconex.com (mail-au.aconex.com [192.168.102.12]) by gatekeeper.aconex.com (Postfix) with ESMTP id 39E0C4FD8A; Mon, 15 Jun 2009 15:52:45 +1000 (EST) Date: Mon, 15 Jun 2009 15:43:29 +1000 (EST) From: Nathan Scott To: Paul Cowan Cc: Max Matveev , pcp@oss.sgi.com Message-ID: <1674726109.6388891245044609585.JavaMail.root@mail-au.aconex.com> In-Reply-To: <4A35A166.6010402@aconex.com> X-ASG-Orig-Subj: Re: [pcp] MMV questions Subject: Re: [pcp] MMV questions MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Originating-IP: [203.89.192.141] X-Mailer: Zimbra 5.0.13_GA_2791.RHEL5_64 (ZimbraWebClient - [unknown] (Linux)/5.0.13_GA_2791.RHEL5_64) X-Barracuda-Connect: mail.aconex.com[203.89.202.182] X-Barracuda-Start-Time: 1245044618 X-Barracuda-Bayes: INNOCENT GLOBAL 0.0000 1.0000 -2.0210 X-Barracuda-Virus-Scanned: by cuda.sgi.com at sgi.com X-Barracuda-Spam-Score: -2.01 X-Barracuda-Spam-Status: No, SCORE=-2.01 using per-user scores of TAG_LEVEL=2.0 QUARANTINE_LEVEL=1000.0 KILL_LEVEL=2.1 tests=BSF_SC0_SA_TO_FROM_DOMAIN_MATCH X-Barracuda-Spam-Report: Code version 3.2, rules version 3.2.2.919 Rule breakdown below pts rule name description ---- ---------------------- -------------------------------------------------- 0.01 BSF_SC0_SA_TO_FROM_DOMAIN_MATCH Sender Domain Matches Recipient Domain X-Virus-Status: Clean ----- "Paul Cowan" wrote: > ... > So file format would become something along the lines of > > Byte Content > 0 Header > 32 TOC 1 (type = metrics) > 48 TOC 2 (type = instances) > 64 TOC 3 (type = values) > 80 TOC 4 (type = strings; no change to TOC content required I > think) > 96 ... metrics instances + values follow as per normal ... > x String 1 > x+256 String 2 > x+512 String 3 > ... and so on. > > Does this make sense? Seems relatively easy and low-impact, I think. > Yep, I think thats the way to go. We should implement the help text support at the same time I think, using the same section type. > Another option would be to have 2 types, STRING and SHORT_STRING, with > > values known to be short (<=15 bytes) shoved in the 16 bytes allowed > for > the pmAtom + DISCRETE/INTEGRAL space. Not sure if this is worth it. Yeah, I dont think its worth handling the extra case, if the larger string sections are supported. cheers. -- Nathan From kenj@internode.on.net Mon Jun 15 02:01:59 2009 X-Spam-Checker-Version: SpamAssassin 3.3.0-rupdated (updated) on oss.sgi.com X-Spam-Level: X-Spam-Status: No, score=-2.6 required=5.0 tests=AWL,BAYES_00 autolearn=ham version=3.3.0-rupdated Received: from cuda.sgi.com (cuda1.sgi.com [192.48.157.11]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id n5F71wZe091517 for ; Mon, 15 Jun 2009 02:01:59 -0500 X-ASG-Debug-ID: 1245049796-13ca018d0000-S8gJnT X-Barracuda-URL: http://cuda.sgi.com:80/cgi-bin/mark.cgi Received: from mail.internode.on.net (localhost [127.0.0.1]) by cuda.sgi.com (Spam Firewall) with ESMTP id 1C5DE1279834 for ; Mon, 15 Jun 2009 00:09:57 -0700 (PDT) Received: from mail.internode.on.net (bld-mail16.adl2.internode.on.net [150.101.137.101]) by cuda.sgi.com with ESMTP id fazW55VlQBrSm3bj for ; Mon, 15 Jun 2009 00:09:57 -0700 (PDT) Received: from [192.168.1.100] (unverified [121.44.196.47]) by mail.internode.on.net (SurgeMail 3.8f2) with ESMTP id 976098-1927428 for multiple; Mon, 15 Jun 2009 16:32:19 +0930 (CST) X-ASG-Orig-Subj: Re: [pcp] MMV questions Subject: Re: [pcp] MMV questions From: Ken McDonell Reply-To: kenj@internode.on.net To: Nathan Scott Cc: Max Matveev , pcp@oss.sgi.com In-Reply-To: <765922600.6343411245025249624.JavaMail.root@mail-au.aconex.com> References: <765922600.6343411245025249624.JavaMail.root@mail-au.aconex.com> Content-Type: text/plain Date: Mon, 15 Jun 2009 17:02:06 +1000 Message-Id: <1245049326.9070.2.camel@bozo> Mime-Version: 1.0 X-Mailer: Evolution 2.26.1 Content-Transfer-Encoding: 7bit X-Barracuda-Connect: bld-mail16.adl2.internode.on.net[150.101.137.101] X-Barracuda-Start-Time: 1245049798 X-Barracuda-Bayes: INNOCENT GLOBAL 0.0000 1.0000 -2.0210 X-Barracuda-Virus-Scanned: by cuda.sgi.com at sgi.com X-Barracuda-Spam-Score: -2.02 X-Barracuda-Spam-Status: No, SCORE=-2.02 using per-user scores of TAG_LEVEL=2.0 QUARANTINE_LEVEL=1000.0 KILL_LEVEL=2.1 tests= X-Barracuda-Spam-Report: Code version 3.2, rules version 3.2.2.925 Rule breakdown below pts rule name description ---- ---------------------- -------------------------------------------------- X-Virus-Scanned: ClamAV version 0.94.2, clamav-milter version 0.94.2 on oss.sgi.com X-Virus-Status: Clean On Mon, 2009-06-15 at 10:20 +1000, Nathan Scott wrote: > ----- "Max Matveev" wrote: > > ... In this context, is anyone interested in the extension I've been mulling over to make parts of the pmns truly dynamic, and avoiding the whole build a pmns file, merge into the global pmns and SIGHUP pmcd circus? This would seem to be very useful for an mmv-based pmda where all of the data and metadata could come from the mmap'd files ... this would include the names of the metrics and their pmids. From nscott@aconex.com Mon Jun 15 02:16:51 2009 X-Spam-Checker-Version: SpamAssassin 3.3.0-rupdated (updated) on oss.sgi.com X-Spam-Level: X-Spam-Status: No, score=-2.3 required=5.0 tests=AWL,BAYES_00 autolearn=ham version=3.3.0-rupdated Received: from cuda.sgi.com (cuda3.sgi.com [192.48.176.15]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id n5F7GpPc091998 for ; Mon, 15 Jun 2009 02:16:51 -0500 X-ASG-Debug-ID: 1245050233-3f8001b90000-S8gJnT X-Barracuda-URL: http://cuda.sgi.com:80/cgi-bin/mark.cgi Received: from postoffice2.aconex.com (localhost [127.0.0.1]) by cuda.sgi.com (Spam Firewall) with ESMTP id 240C61AD2114 for ; Mon, 15 Jun 2009 00:17:13 -0700 (PDT) Received: from postoffice2.aconex.com (mail.aconex.com [203.89.202.182]) by cuda.sgi.com with ESMTP id 3pQL6H7B9Jze6xYo for ; Mon, 15 Jun 2009 00:17:13 -0700 (PDT) Received: from postoffice.aconex.com (localhost [127.0.0.1]) by postoffice2.aconex.com (Spam Firewall) with ESMTP id 0A2173755E; Mon, 15 Jun 2009 17:17:10 +1000 (EST) Received: from postoffice.aconex.com (postoffice.yarra.acx [192.168.102.1]) by postoffice2.aconex.com with ESMTP id E4ACoBGUAtBblxwl; Mon, 15 Jun 2009 17:17:10 +1000 (EST) Received: from gatekeeper.aconex.com (gatekeeper.yarra.acx [192.168.102.10]) by postoffice.aconex.com (Postfix) with ESMTP id 6489CA502B2; Mon, 15 Jun 2009 17:16:51 +1000 (EST) Received: from localhost (localhost.localdomain [127.0.0.1]) by gatekeeper.aconex.com (Postfix) with ESMTP id B7E874FD87; Mon, 15 Jun 2009 17:26:26 +1000 (EST) X-Virus-Scanned: ClamAV version 0.94.2, clamav-milter version 0.94.2 on oss.sgi.com X-Virus-Scanned: amavisd-new at gatekeeper.yarra.acx Received: from gatekeeper.aconex.com ([127.0.0.1]) by localhost (gatekeeper.aconex.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id e4skBzaipS9D; Mon, 15 Jun 2009 17:26:22 +1000 (EST) Received: from mail-au.aconex.com (mail-au.aconex.com [192.168.102.12]) by gatekeeper.aconex.com (Postfix) with ESMTP id ED2454FD82; Mon, 15 Jun 2009 17:26:21 +1000 (EST) Date: Mon, 15 Jun 2009 17:17:06 +1000 (EST) From: Nathan Scott To: kenj@internode.on.net Cc: Max Matveev , pcp@oss.sgi.com Message-ID: <1062249994.6394561245050226008.JavaMail.root@mail-au.aconex.com> In-Reply-To: <1245049326.9070.2.camel@bozo> X-ASG-Orig-Subj: Re: [pcp] MMV questions Subject: Re: [pcp] MMV questions MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Originating-IP: [203.89.192.141] X-Mailer: Zimbra 5.0.13_GA_2791.RHEL5_64 (ZimbraWebClient - [unknown] (Linux)/5.0.13_GA_2791.RHEL5_64) X-Barracuda-Connect: mail.aconex.com[203.89.202.182] X-Barracuda-Start-Time: 1245050235 X-Barracuda-Bayes: INNOCENT GLOBAL 0.0000 1.0000 -2.0210 X-Barracuda-Virus-Scanned: by cuda.sgi.com at sgi.com X-Barracuda-Spam-Score: -2.02 X-Barracuda-Spam-Status: No, SCORE=-2.02 using per-user scores of TAG_LEVEL=2.0 QUARANTINE_LEVEL=1000.0 KILL_LEVEL=2.1 tests= X-Barracuda-Spam-Report: Code version 3.2, rules version 3.2.2.924 Rule breakdown below pts rule name description ---- ---------------------- -------------------------------------------------- X-Virus-Status: Clean ----- "Ken McDonell" wrote: > On Mon, 2009-06-15 at 10:20 +1000, Nathan Scott wrote: > > ----- "Max Matveev" wrote: > > > > ... > > In this context, is anyone interested in the extension I've been > mulling > over to make parts of the pmns truly dynamic, and avoiding the whole > build a pmns file, merge into the global pmns and SIGHUP pmcd circus? Definately. > This would seem to be very useful for an mmv-based pmda where all of > the > data and metadata could come from the mmap'd files ... this would > include the names of the metrics and their pmids. I expect the current MMV PMDA could be converted to use this... no? Or at least extended relatively simply to get to this point (names are already there, could drive the PMIDs from the mmap file too). I pushed a change into my dev branch earlier which allows clients to specify the metric semantics, and currently working on string values (should go in tomorrow). There's ondisk MMV version/format changes for both ... so feel free to hack on that branch if it helps. cheers. -- Nathan From makc@gmx.co.uk Mon Jun 15 05:39:33 2009 X-Spam-Checker-Version: SpamAssassin 3.3.0-rupdated (updated) on oss.sgi.com X-Spam-Level: X-Spam-Status: No, score=-2.6 required=5.0 tests=BAYES_00 autolearn=ham version=3.3.0-rupdated Received: from cuda.sgi.com (cuda2.sgi.com [192.48.176.25]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id n5FAdWvE099758 for ; Mon, 15 Jun 2009 05:39:32 -0500 X-ASG-Debug-ID: 1245062394-1a5903380000-S8gJnT X-Barracuda-URL: http://cuda.sgi.com:80/cgi-bin/mark.cgi Received: from outbound.icp-qv1-irony-out2.iinet.net.au (localhost [127.0.0.1]) by cuda.sgi.com (Spam Firewall) with ESMTP id 157A02F7115 for ; Mon, 15 Jun 2009 03:39:54 -0700 (PDT) Received: from outbound.icp-qv1-irony-out2.iinet.net.au (outbound.icp-qv1-irony-out2.iinet.net.au [203.59.1.107]) by cuda.sgi.com with ESMTP id 53rE7MJaU2ABZatB for ; Mon, 15 Jun 2009 03:39:54 -0700 (PDT) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AhcaAKXBNUpyS90g/2dsb2JhbACHVohnhRC9MIQNBQ X-IronPort-AV: E=Sophos;i="4.42,222,1243785600"; d="scan'208";a="520383929" Received: from unknown (HELO [114.75.221.32]) ([114.75.221.32]) by outbound.icp-qv1-irony-out2.iinet.net.au with ESMTP/TLS/AES128-SHA; 15 Jun 2009 18:39:51 +0800 References: <765922600.6343411245025249624.JavaMail.root@mail-au.aconex.com> <1245049326.9070.2.camel@bozo> Message-Id: <51B3090E-2780-44A9-B869-1CC0D8D57CBD@gmx.co.uk> From: Max To: "kenj@internode.on.net" In-Reply-To: <1245049326.9070.2.camel@bozo> Content-Type: text/plain; charset=us-ascii; format=flowed; delsp=yes Content-Transfer-Encoding: 7bit X-Mailer: iPhone Mail (5H11) Mime-Version: 1.0 (iPhone Mail 5H11) X-ASG-Orig-Subj: Re: [pcp] MMV questions Subject: Re: [pcp] MMV questions Date: Mon, 15 Jun 2009 20:39:42 +1000 Cc: Nathan Scott , "pcp@oss.sgi.com" X-Barracuda-Connect: outbound.icp-qv1-irony-out2.iinet.net.au[203.59.1.107] X-Barracuda-Start-Time: 1245062396 X-Barracuda-Bayes: INNOCENT GLOBAL 0.0000 1.0000 -2.0210 X-Barracuda-Virus-Scanned: by cuda.sgi.com at sgi.com X-Barracuda-Spam-Score: -2.02 X-Barracuda-Spam-Status: No, SCORE=-2.02 using per-user scores of TAG_LEVEL=2.0 QUARANTINE_LEVEL=1000.0 KILL_LEVEL=2.1 tests= X-Barracuda-Spam-Report: Code version 3.2, rules version 3.2.2.933 Rule breakdown below pts rule name description ---- ---------------------- -------------------------------------------------- X-Virus-Scanned: ClamAV version 0.94.2, clamav-milter version 0.94.2 on oss.sgi.com X-Virus-Status: Clean On 15/06/2009, at 17:02, Ken McDonell wrote: > >> > In this context, is anyone interested in the extension I've been > mulling > over to make parts of the pmns truly dynamic, and avoiding the whole > build a pmns file, merge into the global pmns and SIGHUP pmcd circus? > As long as adding version 4 of pmda protocol is not going to result in premature dodoisation of the current pmdas it would be great max From makc@iinet.net.au Mon Jun 15 07:57:48 2009 X-Spam-Checker-Version: SpamAssassin 3.3.0-rupdated (updated) on oss.sgi.com X-Spam-Level: X-Spam-Status: No, score=-2.6 required=5.0 tests=AWL,BAYES_00 autolearn=ham version=3.3.0-rupdated Received: from cuda.sgi.com (cuda1.sgi.com [192.48.157.11]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id n5FCvlsR104679 for ; Mon, 15 Jun 2009 07:57:48 -0500 X-ASG-Debug-ID: 1245071146-375003750000-S8gJnT X-Barracuda-URL: http://cuda.sgi.com:80/cgi-bin/mark.cgi Received: from outbound.icp-qv1-irony-out1.iinet.net.au (localhost [127.0.0.1]) by cuda.sgi.com (Spam Firewall) with ESMTP id 5404D127B77E for ; Mon, 15 Jun 2009 06:05:46 -0700 (PDT) Received: from outbound.icp-qv1-irony-out1.iinet.net.au (outbound.icp-qv1-irony-out1.iinet.net.au [203.59.1.106]) by cuda.sgi.com with ESMTP id VwisXgZ76mPxFoS5 for ; Mon, 15 Jun 2009 06:05:46 -0700 (PDT) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: ApoEAHPiNUrL2Rwk/2dsb2JhbADUDoJIgUUF X-IronPort-AV: E=Sophos;i="4.42,222,1243785600"; d="scan'208";a="532231618" Received: from unknown (HELO alma.crabbed.net) ([203.217.28.36]) by outbound.icp-qv1-irony-out1.iinet.net.au with ESMTP; 15 Jun 2009 20:58:07 +0800 Received: by alma.crabbed.net (Postfix, from userid 501) id 45A0238F14D; Mon, 15 Jun 2009 22:56:20 +1000 (EST) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Message-ID: <18998.17652.146238.762882@iinet.net.au> Date: Mon, 15 Jun 2009 22:56:20 +1000 From: Max Matveev To: Nathan Scott Cc: pcp@oss.sgi.com X-ASG-Orig-Subj: Re: MMV questions Subject: Re: MMV questions In-Reply-To: <765922600.6343411245025249624.JavaMail.root@mail-au.aconex.com> References: <380462529.6342771245024314554.JavaMail.root@mail-au.aconex.com> <765922600.6343411245025249624.JavaMail.root@mail-au.aconex.com> X-Mailer: VM 7.17 under 21.4 (patch 19) "Constant Variable" XEmacs Lucid X-Barracuda-Connect: outbound.icp-qv1-irony-out1.iinet.net.au[203.59.1.106] X-Barracuda-Start-Time: 1245071148 X-Barracuda-Bayes: INNOCENT GLOBAL 0.0000 1.0000 -2.0210 X-Barracuda-Virus-Scanned: by cuda.sgi.com at sgi.com X-Barracuda-Spam-Score: -2.02 X-Barracuda-Spam-Status: No, SCORE=-2.02 using per-user scores of TAG_LEVEL=2.0 QUARANTINE_LEVEL=1000.0 KILL_LEVEL=2.1 tests= X-Barracuda-Spam-Report: Code version 3.2, rules version 3.2.2.940 Rule breakdown below pts rule name description ---- ---------------------- -------------------------------------------------- X-Virus-Scanned: ClamAV version 0.94.2, clamav-milter version 0.94.2 on oss.sgi.com X-Virus-Status: Clean >>>>> "nscott" == Nathan Scott writes: nscott> OK, thanks, will think about it some more. More questions nscott> that came up today, maybe you have some thoughts here too: nscott> - we put all metrics in the namespace at mmv..* nscott> ... there's a request to make this .* so that nscott> developers have the names that they want for their metrics nscott> (obviously, top level name conflicts could then happen nscott> ... not much can be done about that though). nscott> - having to update $PCP_PMDAS_DIR/mmv/mmv.conf to add valid nscott> tokens is not very "user friendly" - nscott> developers would rather just be able to run their app and nscott> have the names magically appear when instrumentation is nscott> enabled. We might achieve this by scanning /var/tmp/mmv nscott> automatically and/or through a more distribution friendly nscott> /etc/pmdammv.d/* (directory of files, not just one conf nscott> file). The reson for the config file was precisely because we've tried to avoid metrics from automatically appearing - the original project was prone to "sudden" files appearing in the unusual places. Plus the obvious need to control PMID assignments. Plus it was the only place to check for updates - if the file is not updated then no need to reload rescan the directory. It's all rather lame anyway. nscott> Perhaps we could consider the above two things together - nscott> eg. if there's a mmv.conf entry with a cluster#, use that nscott> with mmv. prefixed names, else we use auto-numbering clusters nscott> and no mmv. prefix for other MMV files found in /var/tmp/mmv nscott> ...? I've tried using pmns to control pmid assigments - pmda loads its own copy of pmns. It works but only for non-DSO pmdas for obvious reasons. Having a config file as fallback should be fine too - just requires a bit more work on the pmda side to check that the files it finds in its directory should be loaded. BTW, I wouldn't worry about API or on-disk format - I think the only user of the original MMV is either dead or getting close to it. max From makc@iinet.net.au Mon Jun 15 08:00:51 2009 X-Spam-Checker-Version: SpamAssassin 3.3.0-rupdated (updated) on oss.sgi.com X-Spam-Level: X-Spam-Status: No, score=-2.6 required=5.0 tests=AWL,BAYES_00 autolearn=ham version=3.3.0-rupdated Received: from cuda.sgi.com (cuda3.sgi.com [192.48.176.15]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id n5FD0pIl104817 for ; Mon, 15 Jun 2009 08:00:51 -0500 X-ASG-Debug-ID: 1245070872-42d101380000-S8gJnT X-Barracuda-URL: http://cuda.sgi.com:80/cgi-bin/mark.cgi Received: from outbound.icp-qv1-irony-out1.iinet.net.au (localhost [127.0.0.1]) by cuda.sgi.com (Spam Firewall) with ESMTP id 94E4D1AD02F8 for ; Mon, 15 Jun 2009 06:01:12 -0700 (PDT) Received: from outbound.icp-qv1-irony-out1.iinet.net.au (outbound.icp-qv1-irony-out1.iinet.net.au [203.59.1.106]) by cuda.sgi.com with ESMTP id ej7RZBMkmV0M5pPW for ; Mon, 15 Jun 2009 06:01:12 -0700 (PDT) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: ApoEAHPiNUrL2Rwk/2dsb2JhbADUDoQNBQ X-IronPort-AV: E=Sophos;i="4.42,222,1243785600"; d="scan'208";a="532232774" Received: from unknown (HELO alma.crabbed.net) ([203.217.28.36]) by outbound.icp-qv1-irony-out1.iinet.net.au with ESMTP; 15 Jun 2009 21:01:11 +0800 Received: by alma.crabbed.net (Postfix, from userid 501) id 5C4BF38F16F; Mon, 15 Jun 2009 22:59:21 +1000 (EST) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Message-ID: <18998.17833.305088.782725@iinet.net.au> Date: Mon, 15 Jun 2009 22:59:21 +1000 From: Max Matveev To: Nathan Scott Cc: Paul Cowan , pcp@oss.sgi.com X-ASG-Orig-Subj: Re: [pcp] MMV questions Subject: Re: [pcp] MMV questions In-Reply-To: <1674726109.6388891245044609585.JavaMail.root@mail-au.aconex.com> References: <4A35A166.6010402@aconex.com> <1674726109.6388891245044609585.JavaMail.root@mail-au.aconex.com> X-Mailer: VM 7.17 under 21.4 (patch 19) "Constant Variable" XEmacs Lucid X-Barracuda-Connect: outbound.icp-qv1-irony-out1.iinet.net.au[203.59.1.106] X-Barracuda-Start-Time: 1245070874 X-Barracuda-Bayes: INNOCENT GLOBAL 0.0000 1.0000 -2.0210 X-Barracuda-Virus-Scanned: by cuda.sgi.com at sgi.com X-Barracuda-Spam-Score: -2.02 X-Barracuda-Spam-Status: No, SCORE=-2.02 using per-user scores of TAG_LEVEL=2.0 QUARANTINE_LEVEL=1000.0 KILL_LEVEL=2.1 tests= X-Barracuda-Spam-Report: Code version 3.2, rules version 3.2.2.940 Rule breakdown below pts rule name description ---- ---------------------- -------------------------------------------------- X-Virus-Scanned: ClamAV version 0.94.2, clamav-milter version 0.94.2 on oss.sgi.com X-Virus-Status: Clean >>>>> "nscott" == Nathan Scott writes: nscott> Yep, I think thats the way to go. We should implement the help text nscott> support at the same time I think, using the same section type. Personally, I'd feel that using mmaped files to export help text is kind of wasteful: help text tends to be largish and is absolutely static. On the other hand, it would be a "novel" way of providing help info - all other pmdas use the good old compiled help. And it can be "free" if no help text is defined. max From mort@bork.org Mon Jun 15 08:20:24 2009 X-Spam-Checker-Version: SpamAssassin 3.3.0-rupdated (updated) on oss.sgi.com X-Spam-Level: X-Spam-Status: No, score=-2.6 required=5.0 tests=BAYES_00 autolearn=ham version=3.3.0-rupdated Received: from cuda.sgi.com (cuda1.sgi.com [192.48.157.11]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id n5FDKN9j105695 for ; Mon, 15 Jun 2009 08:20:23 -0500 X-ASG-Debug-ID: 1245072503-0b1900e30000-S8gJnT X-Barracuda-URL: http://cuda.sgi.com:80/cgi-bin/mark.cgi Received: from darwin.bork.org (localhost [127.0.0.1]) by cuda.sgi.com (Spam Firewall) with ESMTP id 1C7369021CF for ; Mon, 15 Jun 2009 06:28:23 -0700 (PDT) Received: from darwin.bork.org (darwin.bork.org [65.49.60.145]) by cuda.sgi.com with ESMTP id OL4AsLgduE0YhWYA for ; Mon, 15 Jun 2009 06:28:23 -0700 (PDT) Received: from localhost (localhost [127.0.0.1]) by darwin.bork.org (Postfix) with ESMTP id 1240A193D8; Mon, 15 Jun 2009 09:18:07 -0400 (EDT) Received: from darwin.bork.org ([127.0.0.1]) by localhost (darwin.bork.org [127.0.0.1]) (amavisd-new, port 10024) with LMTP id y9OO-PBg2pmV; Mon, 15 Jun 2009 09:18:07 -0400 (EDT) Received: from laplace.bork.org (laplace.bork.org [IPv6:2001:470:1f11:499:21a:a0ff:feec:57ab]) by darwin.bork.org (Postfix) with ESMTP id 85A36193D4; Mon, 15 Jun 2009 09:18:06 -0400 (EDT) Received: by laplace.bork.org (Postfix, from userid 1000) id 94E68534C9; Mon, 15 Jun 2009 09:20:44 -0400 (EDT) Date: Mon, 15 Jun 2009 09:20:44 -0400 From: Martin Hicks To: Max Matveev Cc: Nathan Scott , pcp@oss.sgi.com X-ASG-Orig-Subj: Re: [pcp] MMV questions Subject: Re: [pcp] MMV questions Message-ID: <20090615132044.GJ15897@laplace.bork.org> References: <380462529.6342771245024314554.JavaMail.root@mail-au.aconex.com> <765922600.6343411245025249624.JavaMail.root@mail-au.aconex.com> <18998.17652.146238.762882@iinet.net.au> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <18998.17652.146238.762882@iinet.net.au> User-Agent: Mutt/1.5.18 (2008-05-17) X-Barracuda-Connect: darwin.bork.org[65.49.60.145] X-Barracuda-Start-Time: 1245072504 X-Barracuda-Bayes: INNOCENT GLOBAL 0.0000 1.0000 -2.0210 X-Barracuda-Virus-Scanned: by cuda.sgi.com at sgi.com X-Barracuda-Spam-Score: -2.02 X-Barracuda-Spam-Status: No, SCORE=-2.02 using per-user scores of TAG_LEVEL=2.0 QUARANTINE_LEVEL=1000.0 KILL_LEVEL=2.1 tests= X-Barracuda-Spam-Report: Code version 3.2, rules version 3.2.2.940 Rule breakdown below pts rule name description ---- ---------------------- -------------------------------------------------- X-Virus-Scanned: ClamAV version 0.94.2, clamav-milter version 0.94.2 on oss.sgi.com X-Virus-Status: Clean On Mon, Jun 15, 2009 at 10:56:20PM +1000, Max Matveev wrote: > > BTW, I wouldn't worry about API or on-disk format - I think the only > user of the original MMV is either dead or getting close to it. Since the mmv PMDA never compiled for Linux, and I have no idea what the state of the IRIX pcp is, I would say that this assumption is a good one. mh -- Martin Hicks || mort@bork.org || PGP/GnuPG: 0x4C7F2BEE From mort@sgi.com Tue Jun 16 13:11:04 2009 X-Spam-Checker-Version: SpamAssassin 3.3.0-rupdated (updated) on oss.sgi.com X-Spam-Level: X-Spam-Status: No, score=-2.5 required=5.0 tests=AWL,BAYES_00 autolearn=ham version=3.3.0-rupdated Received: from relay.sgi.com (relay1.corp.sgi.com [137.38.102.111]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id n5GIB4fb172589 for ; Tue, 16 Jun 2009 13:11:04 -0500 Received: from attica.americas.sgi.com (attica.americas.sgi.com [128.162.236.44]) by relay1.corp.sgi.com (Postfix) with ESMTP id 3B7128F8049 for ; Tue, 16 Jun 2009 11:11:26 -0700 (PDT) Received: by attica.americas.sgi.com (Postfix, from userid 44682) id E998EA0A6D43; Tue, 16 Jun 2009 13:11:25 -0500 (CDT) Date: Tue, 16 Jun 2009 13:11:25 -0500 From: Martin Hicks To: "pcp@oss.sgi.com" Subject: Perl PMDA doesn't compile without PCP already installed Message-ID: <20090616181125.GH20783@alcatraz.americas.sgi.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.5.17 (2007-11-01) X-Virus-Scanned: ClamAV version 0.94.2, clamav-milter version 0.94.2 on oss.sgi.com X-Virus-Status: Clean Need to reference the libraries in the build tree, not the libraries that are not yet installed. diff --git a/src/cpan/PMDA/Makefile.PL b/src/cpan/PMDA/Makefile.PL index 4074f7a..baa1993 100644 --- a/src/cpan/PMDA/Makefile.PL +++ b/src/cpan/PMDA/Makefile.PL @@ -11,7 +11,7 @@ WriteMakefile( XSPROTOARG => '-noprototypes', OBJECT => 'local.o PMDA.o', DEFINE => '-DPERLIO_NOT_STDIO=0 -DPCP_VERSION -DPCP_DEBUG', - LDFROM => "-L$ENV{PCP_DIR}\\local\\bin -lpcp_pmda -lpcp local.o PMDA.o", + LDFROM => "-L$ENV{PCP_DIR}\\local\\bin -L../../libpcp/src -L../../libpcp_pmda/src -lpcp_pmda -lpcp local.o PMDA.o", INC => "-I../../include -I/usr/include/pcp -I$ENV{PCP_DIR}\\include\\pcp -I$ENV{PCP_DIR}\\c\\include", LIBS => ["-L$ENV{PCP_DIR}\\local\\bin", '-lpcp_pmda', '-lpcp'], ); From mort@sgi.com Tue Jun 16 13:22:03 2009 X-Spam-Checker-Version: SpamAssassin 3.3.0-rupdated (updated) on oss.sgi.com X-Spam-Level: X-Spam-Status: No, score=-2.4 required=5.0 tests=AWL,BAYES_00,J_CHICKENPOX_43, J_CHICKENPOX_74 autolearn=no version=3.3.0-rupdated Received: from relay.sgi.com (relay2.corp.sgi.com [137.38.102.29]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id n5GIM3hD172953 for ; Tue, 16 Jun 2009 13:22:03 -0500 Received: from attica.americas.sgi.com (attica.americas.sgi.com [128.162.236.44]) by relay2.corp.sgi.com (Postfix) with ESMTP id 4C429304097; Tue, 16 Jun 2009 11:22:25 -0700 (PDT) Received: by attica.americas.sgi.com (Postfix, from userid 44682) id EAF6FA0A6D43; Tue, 16 Jun 2009 13:22:24 -0500 (CDT) Date: Tue, 16 Jun 2009 13:22:24 -0500 From: Martin Hicks To: Max Matveev Cc: pcp@oss.sgi.com Subject: Re: IB pmda and writing out the default config file Message-ID: <20090616182224.GI20783@alcatraz.americas.sgi.com> References: <20090608171828.GA14199@alcatraz.americas.sgi.com> <18990.24528.172761.247069@iinet.net.au> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <18990.24528.172761.247069@iinet.net.au> User-Agent: Mutt/1.5.17 (2007-11-01) X-Virus-Scanned: ClamAV version 0.94.2, clamav-milter version 0.94.2 on oss.sgi.com X-Virus-Status: Clean On Tue, Jun 09, 2009 at 11:12:48PM +1000, Max Matveev wrote: > > Perhaps a better way to deal with this would be to add some keywords > to the config file to indicate local HCAs and to complain bitterly if > they're not found. In the end, I still don't love this solution because it requires manual intervention from the user to change or remove the config file when they change an HCA (or in my case when a diskless blade gets replaced in a cluster). How about this patch. It rejigs things a lot, but essentially: - No config file will be created unless the '-w' flag is passed to pmdaib. (this is a change) - By default, if no config file is found, only local ports are monitored. (before we would always write out a config file containing only local ports) - If a config file exists then it is the preferred source of information and perhaps not even local ports will be monitored. (before you could have edited the automatically created file to remove the local ports) So in the case of a user who is using a custom config file (either to name the instances differently, or to monitor remote ports) who replaces an HCA, it will be up to them to edit the config file that they created. For those who are using the ib pmda in its simplest mode with no config file, no changes will be necessary when an HCA is replaced but they have no guarantee of static device naming if they add an additional HCA. diff --git a/src/pmdas/ib/daemon.c b/src/pmdas/ib/daemon.c index 2a71151..12540cc 100644 --- a/src/pmdas/ib/daemon.c +++ b/src/pmdas/ib/daemon.c @@ -33,7 +33,8 @@ usage(void) fputs("Options:\n" " -d domain use domain (numeric) for metrics domain of PMDA\n" " -l logfile write log into logfile rather than using default log name\n" - " -c path to configuration file\n", + " -c path to configuration file\n" + " -w write the basic configuration file\n", stderr); exit(1); } @@ -46,19 +47,22 @@ main(int argc, char **argv) pmdaInterface dispatch; char helppath[MAXPATHLEN]; char *confpath = NULL; - char *p; int opt; + int writeconf = 0; __pmSetProgname(argv[0]); snprintf(helppath, sizeof(helppath), "%s%c" "ib" "%c" "help", pmGetConfig("PCP_PMDAS_DIR"), sep, sep); pmdaDaemon(&dispatch, PMDA_INTERFACE_3, pmProgname, IB, "ib.log", helppath); - while ((opt = pmdaGetOpt(argc, argv, "D:c:d:l:?", &dispatch, &err)) != EOF) { + while ((opt = pmdaGetOpt(argc, argv, "D:c:d:l:w?", &dispatch, &err)) != EOF) { switch (opt) { case 'c': confpath = optarg; break; + case 'w': + writeconf = 1; + break; default: err++; } @@ -69,7 +73,7 @@ main(int argc, char **argv) } pmdaOpenLog(&dispatch); - ibpmda_init(confpath, &dispatch); + ibpmda_init(confpath, writeconf, &dispatch); pmdaConnect(&dispatch); pmdaMain(&dispatch); diff --git a/src/pmdas/ib/dso.c b/src/pmdas/ib/dso.c index 33f10a8..4e506f8 100644 --- a/src/pmdas/ib/dso.c +++ b/src/pmdas/ib/dso.c @@ -37,5 +37,5 @@ ib_init (pmdaInterface * dispatch) pmGetConfig("PCP_PMDAS_DIR"), sep, sep); pmdaDSO(dispatch, PMDA_INTERFACE_3, "ibpmda", helppath); - ibpmda_init(NULL, dispatch); + ibpmda_init(NULL, 0, dispatch); } diff --git a/src/pmdas/ib/ib.c b/src/pmdas/ib/ib.c index ccfb079..c027f77 100644 --- a/src/pmdas/ib/ib.c +++ b/src/pmdas/ib/ib.c @@ -141,6 +141,70 @@ typedef struct port_state_s { char pcap[IB_ALLPORTCAPSTRLEN]; } port_state_t; +static char confpath[MAXPATHLEN]; +static int portcount; +/* Line number while parsing the config file */ +static FILE *fconf; +static int lcnt; + +#define print_parse_err(loglevel, fmt, args...) \ + if (fconf) { \ + __pmNotifyErr(loglevel, "%s(%d): " fmt, fconf, lcnt, args); \ + } else { \ + __pmNotifyErr(loglevel, fmt, args); \ + } + +static void +monitor_guid(pmdaIndom *itab, char *name, long long guid, int rport, + char *local, int lport) +{ + int inst; + hca_state_t *hca = NULL; + port_state_t *ps; + + if (pmdaCacheLookupName(itab[IB_HCA_INDOM].it_indom, local, NULL, + (void**)&hca) != PMDA_CACHE_ACTIVE) { + print_parse_err(LOG_ERR, "unknown HCA '%s' in 'via' clause\n", local); + return; + } + + if ((lport >= UMAD_CA_MAX_PORTS) || (lport < 0)) { + print_parse_err(LOG_ERR, + "port number %d is out of bounds for HCA %s\n", + lport, local); + return; + } + + if (hca->lports[lport].hndl == NULL) { + print_parse_err(LOG_ERR, + "port %s:%d has failed initialization\n", + local, lport); + return; + } + + if ((ps = (port_state_t *)calloc(1, sizeof(port_state_t))) == NULL) { + __pmNotifyErr (LOG_ERR, "Out of memory to save state for %s\n", name); + return; + } + + ps->guid = guid; + ps->remport = rport; + ps->lport = hca->lports + lport; + ps->portid.lid = -1; + ps->timeout = 1000; + + if ((inst = pmdaCacheStore(itab[IB_PORT_INDOM].it_indom, + PMDA_CACHE_ADD, name, ps)) < 0) { + __pmNotifyErr(LOG_ERR, "Cannot add %s to the cache - %s\n", + name, pmErrStr(inst)); + free (ps); + return; + } + + portcount++; +} + + static int foreachport(hca_state_t *hst, void (*cb)(hca_state_t *, umad_port_t *, void *), void *closure) @@ -166,7 +230,6 @@ foreachport(hca_state_t *hst, void (*cb)(hca_state_t *, umad_port_t *, void *), static void printportconfig (hca_state_t *hst, umad_port_t *port, void *arg) { - FILE *fconf = arg; uint64_t hguid = port->port_guid; __ntohll((char *)&hguid); @@ -176,6 +239,20 @@ printportconfig (hca_state_t *hst, umad_port_t *port, void *arg) hst->ca.ca_name, port->portnum); } +static void +monitorport(hca_state_t *hst, umad_port_t *port, void *arg) +{ + pmdaIndom *itab = arg; + uint64_t hguid = port->port_guid; + char name[128]; + + __ntohll((char *)&hguid); + sprintf(name, "%s:%d", port->ca_name, port->portnum); + + monitor_guid(itab, name, hguid, port->portnum, port->ca_name, port->portnum); +} + + static int mgmt_classes[] = {IB_SMI_CLASS, IB_SMI_DIRECT_CLASS, IB_SA_CLASS, IB_PERFORMANCE_CLASS}; static void @@ -196,74 +273,10 @@ openumadport (hca_state_t *hst, umad_port_t *port, void *arg) lp->hndl = hndl; } -int -ib_load_config(const char *confpath, pmdaIndom *itab, unsigned int nindoms) +static void +parse_config(pmdaIndom *itab) { - char hcas[IBPMDA_MAX_HCAS][UMAD_CA_NAME_LEN]; - hca_state_t *st = NULL; - int i, n; - int lcnt = 0; char buffer[2048]; - FILE *fconf; - int (*closef)(FILE *) = fclose; - int portcount = 0; - - if (nindoms <= IB_CNT_INDOM) { - return (-EINVAL); - } - - if (umad_init()) { - return (-EIO); - } - - if ((n = umad_get_cas_names(hcas, ARRAYSZ(hcas)))) { - if ((st = calloc (n, sizeof(hca_state_t))) == NULL) { - return (-ENOMEM); - } - } else { - return (0); - } - - for (i=0; i < n; i++) { - if (umad_get_ca(hcas[i], &st[i].ca) == 0) { - int e = pmdaCacheStore (itab[IB_HCA_INDOM].it_indom, PMDA_CACHE_ADD, - st[i].ca.ca_name, &st[i].ca); - - if (e >= 0) { - foreachport (st+i, openumadport, NULL); - } else { - __pmNotifyErr (LOG_ERR, - "Cannot add instance for %s to the " - "cache - %s\n", - st[i].ca.ca_name, pmErrStr(e)); - } - } - } - - /* Process config file - if the executable bit is set then assume - * that user wants it to be a script and run it, otherwise try loading - * it. If it cannot be loaded then create a default one and - * process it again */ - if (access(confpath, X_OK)) { - /* Not an executable, just read it */ - if ((fconf = fopen (confpath, "r")) == NULL) { - if ((fconf = fopen (confpath, "w+")) != NULL) { - for (i=0; i < n; i++) { - foreachport (st+i, printportconfig, fconf); - } - fseek (fconf, 0, SEEK_SET); - } - } - } else { - fconf = popen(confpath, "r"); - closef = pclose; - } - - if (fconf == NULL) { - __pmNotifyErr (LOG_CRIT, "Cannot open configuration file %s\n", - confpath); - return (-ENOENT); - } while ((fgets(buffer, sizeof(buffer)-1, fconf)) != NULL) { char *p; @@ -285,64 +298,98 @@ ib_load_config(const char *confpath, pmdaIndom *itab, unsigned int nindoms) int rport; char local[128]; int lport; - hca_state_t *hca = NULL; - port_state_t *ps; if (sscanf(p, "%[^ \t]%llx%d via %[^:]:%d", name, &guid, &rport, local, &lport) != 5) { __pmNotifyErr (LOG_ERR, "%s(%d): cannot parse the line\n", confpath, lcnt); - } else if (pmdaCacheLookupName(itab[IB_HCA_INDOM].it_indom, - local, NULL, - (void**)&hca) != PMDA_CACHE_ACTIVE) { - __pmNotifyErr (LOG_ERR, - "%s(%d): unknown HCA '%s' in 'via' clause\n", - confpath, lcnt, local); - } else if ((lport >= UMAD_CA_MAX_PORTS) || (lport < 0)) { - __pmNotifyErr (LOG_ERR, - "%s(%d): port number %d is out of bounds for " - "HCA %s\n", - confpath, lcnt, lport, local); - } else if (hca->lports[lport].hndl == NULL) { - __pmNotifyErr (LOG_ERR, - "%s(%d): port %s:%d has failed initialization\n", - confpath, lcnt, local, lport); - } else if ((ps = (port_state_t *)calloc(1, sizeof(port_state_t))) == NULL) { - __pmNotifyErr (LOG_ERR, "Out of memory to save state for %s\n", - name); - } else { - int inst; - ps->guid = guid; - ps->remport = rport; - ps->lport = hca->lports + lport; - ps->portid.lid = -1; - ps->timeout = 1000; - - if ((inst = pmdaCacheStore (itab[IB_PORT_INDOM].it_indom, - PMDA_CACHE_ADD, name, ps)) < 0) { - __pmNotifyErr (LOG_ERR, - "Cannot add %s to the cache - %s\n", - name, pmErrStr(inst)); - free (ps); - } else { - portcount++; - } + continue; } + + monitor_guid(itab, name, guid, rport, local, lport); } } - (*closef) (fconf); +} + +int +ib_load_config(const char *cp, int writeconf, pmdaIndom *itab, unsigned int nindoms) +{ + char hcas[IBPMDA_MAX_HCAS][UMAD_CA_NAME_LEN]; + hca_state_t *st = NULL; + int i, n; + int (*closef)(FILE *) = fclose; + + if (nindoms <= IB_CNT_INDOM) + return -EINVAL; + + if (umad_init()) + return -EIO; + + if ((n = umad_get_cas_names(hcas, ARRAYSZ(hcas)))) { + if ((st = calloc (n, sizeof(hca_state_t))) == NULL) + return -ENOMEM; + } else + /* No HCAs */ + return 0; + + /* Open config file - if the executable bit is set then assume that + * user wants it to be a script and run it, otherwise try loading it. + */ + strcpy(confpath, cp); + if (access(confpath, F_OK) == 0) { + if (writeconf) { + __pmNotifyErr(LOG_ERR, + "Config file exists and writeconf arg was given to pmdaib. " + "Using existing config file"); + writeconf = 0; + } + + if (access(confpath, X_OK)) { + /* Not an executable, just read it */ + fconf = fopen (confpath, "r"); + } else if (!writeconf) { + fconf = popen(confpath, "r"); + closef = pclose; + } + } else if (writeconf) { + fconf = fopen(confpath, "w"); + } + + for (i=0; i < n; i++) { + if (umad_get_ca(hcas[i], &st[i].ca) == 0) { + int e = pmdaCacheStore(itab[IB_HCA_INDOM].it_indom, PMDA_CACHE_ADD, + st[i].ca.ca_name, &st[i].ca); + + if (e < 0) { + __pmNotifyErr(LOG_ERR, + "Cannot add instance for %s to the cache - %s\n", + st[i].ca.ca_name, pmErrStr(e)); + continue; + } + + foreachport(st+i, openumadport, NULL); + if (fconf == NULL || writeconf) + /* No config file - monitor local ports */ + foreachport(st+i, monitorport, itab); + if (writeconf) + foreachport(st+i, printportconfig, fconf); + } + } + + if (fconf) { + parse_config(itab); + (*closef)(fconf); + } if (!portcount) { - __pmNotifyErr (LOG_INFO, - "No ports found in configuration file %s\n", - confpath); + __pmNotifyErr(LOG_INFO, "No IB ports found to monitor"); } - + itab[IB_CNT_INDOM].it_set = (pmdaInstid *)calloc(ARRAYSZ(mad_cnt_descriptors), sizeof(pmdaInstid)); if (itab[IB_CNT_INDOM].it_set == NULL) { - return (-ENOMEM); + return -ENOMEM; } itab[IB_CNT_INDOM].it_numinst = ARRAYSZ(mad_cnt_descriptors); @@ -351,8 +398,8 @@ ib_load_config(const char *confpath, pmdaIndom *itab, unsigned int nindoms) itab[IB_CNT_INDOM].it_set[i].i_name = mad_cnt_descriptors[i].name; } - - return (0); + + return 0; } static char * @@ -869,7 +916,7 @@ ib_store(pmResult *result, pmdaExt *pmda) return (PM_ERR_INST); } break; - + case METRIC_ib_control_hiwat: if ((id < 0) || (id > pmda->e_indoms[IB_CNT_INDOM].it_numinst)) { @@ -884,7 +931,7 @@ ib_store(pmResult *result, pmdaExt *pmda) } } } - return (0); + return 0; } diff --git a/src/pmdas/ib/ibpmda.h b/src/pmdas/ib/ibpmda.h index 153743b..fae2c3c 100644 --- a/src/pmdas/ib/ibpmda.h +++ b/src/pmdas/ib/ibpmda.h @@ -22,10 +22,10 @@ #include "domain.h" -void ibpmda_init (const char *configpath, pmdaInterface *); +void ibpmda_init (const char *configpath, int, pmdaInterface *); int ib_fetch_val(pmdaMetric *, unsigned int, pmAtomValue *); -int ib_load_config(const char *, pmdaIndom *, unsigned int); +int ib_load_config(const char *, int, pmdaIndom *, unsigned int); void ib_rearm_for_update(void *); void ib_reset_perfcounters (void *); int ib_store(pmResult *, pmdaExt *); diff --git a/src/pmdas/ib/pmda.c b/src/pmdas/ib/pmda.c index 6a8e02d..d5557b3 100644 --- a/src/pmdas/ib/pmda.c +++ b/src/pmdas/ib/pmda.c @@ -297,7 +297,7 @@ ib_fetch(int numpmid, pmID pmidlist[], pmResult **resp, pmdaExt *pmda) } void -ibpmda_init(const char *confpath, pmdaInterface *dp) +ibpmda_init(const char *confpath, int writeconf, pmdaInterface *dp) { char defconf[MAXPATHLEN]; int sep = __pmPathSeparator(); @@ -320,7 +320,7 @@ ibpmda_init(const char *confpath, pmdaInterface *dp) } - if ((dp->status = ib_load_config (confpath, indomtab, ARRAYSZ(indomtab)))) + if ((dp->status = ib_load_config(confpath, writeconf, indomtab, ARRAYSZ(indomtab)))) return; for (i=0; i < ARRAYSZ(indomtab); i++) { From kenj@internode.on.net Wed Jun 17 02:51:41 2009 X-Spam-Checker-Version: SpamAssassin 3.3.0-rupdated (updated) on oss.sgi.com X-Spam-Level: X-Spam-Status: No, score=-2.6 required=5.0 tests=BAYES_00 autolearn=ham version=3.3.0-rupdated Received: from cuda.sgi.com (cuda3.sgi.com [192.48.176.15]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id n5H7pe10203396 for ; Wed, 17 Jun 2009 02:51:41 -0500 X-ASG-Debug-ID: 1245225122-4e8203980000-S8gJnT X-Barracuda-URL: http://cuda.sgi.com:80/cgi-bin/mark.cgi Received: from mail.internode.on.net (localhost [127.0.0.1]) by cuda.sgi.com (Spam Firewall) with ESMTP id D90E71D4168A for ; Wed, 17 Jun 2009 00:52:03 -0700 (PDT) Received: from mail.internode.on.net (bld-mail12.adl6.internode.on.net [150.101.137.97]) by cuda.sgi.com with ESMTP id fC5y5qH5EGu4hJfd for ; Wed, 17 Jun 2009 00:52:03 -0700 (PDT) Received: from [192.168.1.100] (unverified [121.44.196.47]) by mail.internode.on.net (SurgeMail 3.8f2) with ESMTP id 1086012-1927428 for multiple; Wed, 17 Jun 2009 17:22:00 +0930 (CST) X-ASG-Orig-Subj: Re: [pcp] MMV questions Subject: Re: [pcp] MMV questions From: Ken McDonell Reply-To: kenj@internode.on.net To: Max Cc: Nathan Scott , "pcp@oss.sgi.com" In-Reply-To: <51B3090E-2780-44A9-B869-1CC0D8D57CBD@gmx.co.uk> References: <765922600.6343411245025249624.JavaMail.root@mail-au.aconex.com> <1245049326.9070.2.camel@bozo> <51B3090E-2780-44A9-B869-1CC0D8D57CBD@gmx.co.uk> Content-Type: text/plain Date: Wed, 17 Jun 2009 17:51:47 +1000 Message-Id: <1245225107.5229.7.camel@bozo> Mime-Version: 1.0 X-Mailer: Evolution 2.26.1 Content-Transfer-Encoding: 7bit X-Barracuda-Connect: bld-mail12.adl6.internode.on.net[150.101.137.97] X-Barracuda-Start-Time: 1245225124 X-Barracuda-Bayes: INNOCENT GLOBAL 0.0000 1.0000 -2.0210 X-Barracuda-Virus-Scanned: by cuda.sgi.com at sgi.com X-Barracuda-Spam-Score: -2.02 X-Barracuda-Spam-Status: No, SCORE=-2.02 using per-user scores of TAG_LEVEL=2.0 QUARANTINE_LEVEL=1000.0 KILL_LEVEL=2.1 tests= X-Barracuda-Spam-Report: Code version 3.2, rules version 3.2.2.1070 Rule breakdown below pts rule name description ---- ---------------------- -------------------------------------------------- X-Virus-Scanned: ClamAV version 0.94.2, clamav-milter version 0.94.2 on oss.sgi.com X-Virus-Status: Clean On Mon, 2009-06-15 at 20:39 +1000, Max wrote: > > On 15/06/2009, at 17:02, Ken McDonell wrote: > > > >> > > In this context, is anyone interested in the extension I've been > > mulling > > over to make parts of the pmns truly dynamic, and avoiding the whole > > build a pmns file, merge into the global pmns and SIGHUP pmcd circus? > > > As long as adding version 4 of pmda protocol is not going to result in > premature dodoisation of the current pmdas it would be great Max, you should know better than that. PMDA_INTERFACE_4 will not invalidate any existing PMDA. This change is non-trivial, which is why I plan posting a design document to the list for comment before sending bits into the git bucket. I hope to be able to post the design document within the week. From nscott@aconex.com Thu Jun 18 01:45:56 2009 X-Spam-Checker-Version: SpamAssassin 3.3.0-rupdated (updated) on oss.sgi.com X-Spam-Level: X-Spam-Status: No, score=-2.3 required=5.0 tests=AWL,BAYES_00 autolearn=ham version=3.3.0-rupdated Received: from cuda.sgi.com (cuda3.sgi.com [192.48.176.15]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id n5I6jt2p258856 for ; Thu, 18 Jun 2009 01:45:56 -0500 X-ASG-Debug-ID: 1245307579-21e103000000-S8gJnT X-Barracuda-URL: http://cuda.sgi.com:80/cgi-bin/mark.cgi Received: from postoffice2.aconex.com (localhost [127.0.0.1]) by cuda.sgi.com (Spam Firewall) with ESMTP id 5ACE91ADD75F for ; Wed, 17 Jun 2009 23:46:19 -0700 (PDT) Received: from postoffice2.aconex.com (mail.aconex.com [203.89.202.182]) by cuda.sgi.com with ESMTP id cy5CTAkyntnsXxyG for ; Wed, 17 Jun 2009 23:46:19 -0700 (PDT) Received: from postoffice.aconex.com (localhost [127.0.0.1]) by postoffice2.aconex.com (Spam Firewall) with ESMTP id 4E4B761EC1B for ; Thu, 18 Jun 2009 16:46:17 +1000 (EST) Received: from postoffice.aconex.com (postoffice.yarra.acx [192.168.102.1]) by postoffice2.aconex.com with ESMTP id Q3w1GHyAPWlhUyTp for ; Thu, 18 Jun 2009 16:46:17 +1000 (EST) Received: from gatekeeper.aconex.com (gatekeeper.yarra.acx [192.168.102.10]) by postoffice.aconex.com (Postfix) with ESMTP id 47FE5A50265 for ; Thu, 18 Jun 2009 16:45:56 +1000 (EST) Received: from localhost (localhost.localdomain [127.0.0.1]) by gatekeeper.aconex.com (Postfix) with ESMTP id 3FFE64FD84 for ; Thu, 18 Jun 2009 16:46:17 +1000 (EST) X-Virus-Scanned: ClamAV version 0.94.2, clamav-milter version 0.94.2 on oss.sgi.com X-Virus-Scanned: amavisd-new at gatekeeper.yarra.acx Received: from gatekeeper.aconex.com ([127.0.0.1]) by localhost (gatekeeper.aconex.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Dhi295tuROxH for ; Thu, 18 Jun 2009 16:46:13 +1000 (EST) Received: from mail-au.aconex.com (mail-au.aconex.com [192.168.102.12]) by gatekeeper.aconex.com (Postfix) with ESMTP id 756B34FD86 for ; Thu, 18 Jun 2009 16:46:13 +1000 (EST) Date: Thu, 18 Jun 2009 16:46:13 +1000 (EST) From: Nathan Scott To: pcp@oss.sgi.com Message-ID: <360237787.6571281245307573440.JavaMail.root@mail-au.aconex.com> X-ASG-Orig-Subj: pcp updates Subject: pcp updates MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Originating-IP: [203.89.192.141] X-Mailer: Zimbra 5.0.13_GA_2791.RHEL5_64 (ZimbraWebClient - [unknown] (Linux)/5.0.13_GA_2791.RHEL5_64) X-Barracuda-Connect: mail.aconex.com[203.89.202.182] X-Barracuda-Start-Time: 1245307580 X-Barracuda-Bayes: INNOCENT GLOBAL 0.0000 1.0000 -2.0210 X-Barracuda-Virus-Scanned: by cuda.sgi.com at sgi.com X-Barracuda-Spam-Score: -1.02 X-Barracuda-Spam-Status: No, SCORE=-1.02 using per-user scores of TAG_LEVEL=2.0 QUARANTINE_LEVEL=1000.0 KILL_LEVEL=2.1 tests=BSF_RULE7568M, BSF_RULE_7582B X-Barracuda-Spam-Report: Code version 3.2, rules version 3.2.2.1119 Rule breakdown below pts rule name description ---- ---------------------- -------------------------------------------------- 0.50 BSF_RULE7568M Custom Rule 7568M 0.50 BSF_RULE_7582B Custom Rule 7582B X-Virus-Status: Clean Changes committed to git://oss.sgi.com/nathans/pcp.git man/man3/mmv_stats_init.3 | 19 man/man4/mmv.4 | 24 - man/man4/pmns.4 | 2 src/cpan/MMV/MMV.pm | 8 src/cpan/MMV/MMV.xs | 18 src/cpan/MMV/Makefile.PL | 2 src/cpan/PMDA/Makefile.PL | 2 src/include/mmv_stats.h | 103 +++-- src/libpcp_mmv/src/mmv_stats.c | 206 +++++----- src/newhelp/chkhelp.c | 4 src/pmdas/mmv/GNUmakefile | 4 src/pmdas/mmv/Install | 1 src/pmdas/mmv/mmv.c | 844 +++++++++++++++++++---------------------- src/pmdas/mmv/mmv.conf | 12 14 files changed, 644 insertions(+), 605 deletions(-) commit 4f0fa81175d1d1416179d8855a175505d514640d Author: Nathan Scott Date: Thu Jun 18 16:10:20 2009 +1000 Fix the Perl MMV module build when no pcp installed locally. commit 36e1f546d73c4998a135acf9bbb0fe82a8ab3f23 Author: Martin Hicks Date: Thu Jun 18 16:08:24 2009 +1000 Fix the Perl PMDA module build when no pcp installed locally. commit cdc1421e51bd12eb1d0bb07bfeb2b31d75b1635f Author: Nathan Scott Date: Thu Jun 18 16:06:57 2009 +1000 Remove some conditional Win32 porting code, no longer needed in chkhelp. commit 938fe5a1238c6c034e56ee60e8f379648be5f6f1 Author: Nathan Scott Date: Thu Jun 18 16:06:16 2009 +1000 Fix a typo in the PMNS man page. commit 5302e6485b025aa2b7373877feae850e800b9af7 Author: Nathan Scott Date: Thu Jun 18 16:05:48 2009 +1000 Format extensions for the Memory Mapped Value PMDA and library. This change introduces several changes to the ondisk format, and we are much closer to having a releasable next version: - support for string values - support for metric help text (short/long) - removal of mmv.conf and support for client-driven cluster IDs (client prefered cluster ID stored in header) - additional flags field in the initial header, allowing: - option for not exporting values if intrumented PID not running (creators pid stored in header) - fixed item IDs stored ondisk, for persistent PMID numbering. From nscott@aconex.com Thu Jun 18 01:46:49 2009 X-Spam-Checker-Version: SpamAssassin 3.3.0-rupdated (updated) on oss.sgi.com X-Spam-Level: X-Spam-Status: No, score=-2.3 required=5.0 tests=AWL,BAYES_00 autolearn=ham version=3.3.0-rupdated Received: from cuda.sgi.com (cuda2.sgi.com [192.48.176.25]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id n5I6knts258934 for ; Thu, 18 Jun 2009 01:46:49 -0500 X-ASG-Debug-ID: 1245307632-710d02fb0000-S8gJnT X-Barracuda-URL: http://cuda.sgi.com:80/cgi-bin/mark.cgi Received: from postoffice2.aconex.com (localhost [127.0.0.1]) by cuda.sgi.com (Spam Firewall) with ESMTP id 4D0A9305985 for ; Wed, 17 Jun 2009 23:47:13 -0700 (PDT) Received: from postoffice2.aconex.com (mail.aconex.com [203.89.202.182]) by cuda.sgi.com with ESMTP id ofKewGtl2ruhw3ga for ; Wed, 17 Jun 2009 23:47:13 -0700 (PDT) Received: from postoffice.aconex.com (localhost [127.0.0.1]) by postoffice2.aconex.com (Spam Firewall) with ESMTP id 2369961EE0E for ; Thu, 18 Jun 2009 16:47:07 +1000 (EST) Received: from postoffice.aconex.com (postoffice.yarra.acx [192.168.102.1]) by postoffice2.aconex.com with ESMTP id sYolCFfGGa9N48eT for ; Thu, 18 Jun 2009 16:47:07 +1000 (EST) Received: from gatekeeper.aconex.com (gatekeeper.yarra.acx [192.168.102.10]) by postoffice.aconex.com (Postfix) with ESMTP id F3D07A50268 for ; Thu, 18 Jun 2009 16:46:46 +1000 (EST) Received: from localhost (localhost.localdomain [127.0.0.1]) by gatekeeper.aconex.com (Postfix) with ESMTP id EAB424FD82 for ; Thu, 18 Jun 2009 16:47:07 +1000 (EST) X-Virus-Scanned: ClamAV version 0.94.2, clamav-milter version 0.94.2 on oss.sgi.com X-Virus-Scanned: amavisd-new at gatekeeper.yarra.acx Received: from gatekeeper.aconex.com ([127.0.0.1]) by localhost (gatekeeper.aconex.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 8r9IY+Mid4vR for ; Thu, 18 Jun 2009 16:47:06 +1000 (EST) Received: from mail-au.aconex.com (mail-au.aconex.com [192.168.102.12]) by gatekeeper.aconex.com (Postfix) with ESMTP id 4D06A4FD88 for ; Thu, 18 Jun 2009 16:47:06 +1000 (EST) Date: Thu, 18 Jun 2009 16:47:06 +1000 (EST) From: Nathan Scott To: pcp@oss.sgi.com Message-ID: <9941628.6571311245307626267.JavaMail.root@mail-au.aconex.com> X-ASG-Orig-Subj: pcpqa updates Subject: pcpqa updates MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Originating-IP: [203.89.192.141] X-Mailer: Zimbra 5.0.13_GA_2791.RHEL5_64 (ZimbraWebClient - [unknown] (Linux)/5.0.13_GA_2791.RHEL5_64) X-Barracuda-Connect: mail.aconex.com[203.89.202.182] X-Barracuda-Start-Time: 1245307634 X-Barracuda-Bayes: INNOCENT GLOBAL 0.0000 1.0000 -2.0210 X-Barracuda-Virus-Scanned: by cuda.sgi.com at sgi.com X-Barracuda-Spam-Score: -2.02 X-Barracuda-Spam-Status: No, SCORE=-2.02 using per-user scores of TAG_LEVEL=2.0 QUARANTINE_LEVEL=1000.0 KILL_LEVEL=2.1 tests= X-Barracuda-Spam-Report: Code version 3.2, rules version 3.2.2.1119 Rule breakdown below pts rule name description ---- ---------------------- -------------------------------------------------- X-Virus-Status: Clean Changes committed to git://oss.sgi.com/pcp/pcpqa.git src-oss/mmv_dumpstats.c | 60 ++++++++++++++++++++++++++++------------- src-oss/mmv_genstats.c | 70 +++++++++++++++++++++++++++++++++++++----------- 2 files changed, 97 insertions(+), 33 deletions(-) commit fa7e331737c0e0521a98f2494b71021db9f439f1 Author: Nathan Scott Date: Thu Jun 18 16:39:54 2009 +1000 Update MMV QA tests to exercise new code. From makc@iinet.net.au Thu Jun 18 21:46:19 2009 X-Spam-Checker-Version: SpamAssassin 3.3.0-rupdated (updated) on oss.sgi.com X-Spam-Level: X-Spam-Status: No, score=-2.5 required=5.0 tests=AWL,BAYES_00,J_CHICKENPOX_44, J_CHICKENPOX_46 autolearn=no version=3.3.0-rupdated Received: from cuda.sgi.com (cuda2.sgi.com [192.48.176.25]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id n5J2kI3U038785 for ; Thu, 18 Jun 2009 21:46:19 -0500 X-ASG-Debug-ID: 1245379602-658400830000-S8gJnT X-Barracuda-URL: http://cuda.sgi.com:80/cgi-bin/mark.cgi Received: from outbound.icp-qv1-irony-out1.iinet.net.au (localhost [127.0.0.1]) by cuda.sgi.com (Spam Firewall) with ESMTP id 24C69309A45 for ; Thu, 18 Jun 2009 19:46:42 -0700 (PDT) Received: from outbound.icp-qv1-irony-out1.iinet.net.au (outbound.icp-qv1-irony-out1.iinet.net.au [203.59.1.106]) by cuda.sgi.com with ESMTP id 3sfsUXk2q33FABqk for ; Thu, 18 Jun 2009 19:46:42 -0700 (PDT) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: ApoEAIuYOkrL2Rwk/2dsb2JhbADQEIQIBQ X-IronPort-AV: E=Sophos;i="4.42,248,1243785600"; d="scan'208";a="536402797" Received: from unknown (HELO alma.crabbed.net) ([203.217.28.36]) by outbound.icp-qv1-irony-out1.iinet.net.au with ESMTP; 19 Jun 2009 10:46:40 +0800 Received: by alma.crabbed.net (Postfix, from userid 501) id DD2F2391BD9; Fri, 19 Jun 2009 12:44:45 +1000 (EST) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Message-ID: <19002.64413.588679.468915@iinet.net.au> Date: Fri, 19 Jun 2009 12:44:45 +1000 From: Max Matveev To: pcp@oss.sgi.com X-ASG-Orig-Subj: Fancy pmns processing Subject: Fancy pmns processing X-Mailer: VM 7.17 under 21.4 (patch 19) "Constant Variable" XEmacs Lucid X-Barracuda-Connect: outbound.icp-qv1-irony-out1.iinet.net.au[203.59.1.106] X-Barracuda-Start-Time: 1245379604 X-Barracuda-Bayes: INNOCENT GLOBAL 0.0000 1.0000 -2.0210 X-Barracuda-Virus-Scanned: by cuda.sgi.com at sgi.com X-Barracuda-Spam-Score: -2.02 X-Barracuda-Spam-Status: No, SCORE=-2.02 using per-user scores of TAG_LEVEL=2.0 QUARANTINE_LEVEL=1000.0 KILL_LEVEL=2.1 tests= X-Barracuda-Spam-Report: Code version 3.2, rules version 3.2.2.1188 Rule breakdown below pts rule name description ---- ---------------------- -------------------------------------------------- X-Virus-Scanned: ClamAV version 0.94.2, clamav-milter version 0.94.2 on oss.sgi.com X-Virus-Status: Clean Hi folks, I've got an interesting pmns problem I'm trying to resolve: I have a pmda which, depending on the installation, serves different metrics. The metric list is defined by the namespace which gets installed with some metrics appearing in all installations and others only in some. I'd like to avoid copying the metric names and the help file entries into multiple files, what I'd like to do is to have pmns which looks like root { makc } makc { common private } #include "makc.common" makc.private { foo 1:2:3 } Then I ship both makc.pmns and makc.common and makc.help with makc.help.common which somehow gets combined during pmda install. The best I've managed to come up so far is to effectively take over the pmns and help processing from the PMDA shell library, combine pmns using explicit cpp run in Install script, do my own help compilation and lie to the Install script about the help source to stop it from messing with my prepared help.dir/help.pag. Does anyone has a more elegant solution? max From nscott@aconex.com Fri Jun 19 01:03:39 2009 X-Spam-Checker-Version: SpamAssassin 3.3.0-rupdated (updated) on oss.sgi.com X-Spam-Level: X-Spam-Status: No, score=-2.3 required=5.0 tests=AWL,BAYES_00 autolearn=ham version=3.3.0-rupdated Received: from cuda.sgi.com (cuda3.sgi.com [192.48.176.15]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id n5J63cWd048603 for ; Fri, 19 Jun 2009 01:03:38 -0500 X-ASG-Debug-ID: 1245391442-715101880000-S8gJnT X-Barracuda-URL: http://cuda.sgi.com:80/cgi-bin/mark.cgi Received: from postoffice2.aconex.com (localhost [127.0.0.1]) by cuda.sgi.com (Spam Firewall) with ESMTP id 4924B129CA0B for ; Thu, 18 Jun 2009 23:04:02 -0700 (PDT) Received: from postoffice2.aconex.com (mail.aconex.com [203.89.202.182]) by cuda.sgi.com with ESMTP id dzpL4tV0g5d90lNk for ; Thu, 18 Jun 2009 23:04:02 -0700 (PDT) Received: from postoffice.aconex.com (localhost [127.0.0.1]) by postoffice2.aconex.com (Spam Firewall) with ESMTP id 8EA2760B35 for ; Fri, 19 Jun 2009 16:04:01 +1000 (EST) Received: from postoffice.aconex.com (postoffice.yarra.acx [192.168.102.1]) by postoffice2.aconex.com with ESMTP id A8XuMxQoody43fAT for ; Fri, 19 Jun 2009 16:04:01 +1000 (EST) Received: from gatekeeper.aconex.com (gatekeeper.yarra.acx [192.168.102.10]) by postoffice.aconex.com (Postfix) with ESMTP id 0E670A5012D for ; Fri, 19 Jun 2009 16:03:40 +1000 (EST) Received: from localhost (localhost.localdomain [127.0.0.1]) by gatekeeper.aconex.com (Postfix) with ESMTP id 7FEE64FD84 for ; Fri, 19 Jun 2009 16:04:01 +1000 (EST) X-Virus-Scanned: ClamAV version 0.94.2, clamav-milter version 0.94.2 on oss.sgi.com X-Virus-Scanned: amavisd-new at gatekeeper.yarra.acx Received: from gatekeeper.aconex.com ([127.0.0.1]) by localhost (gatekeeper.aconex.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id VRyGeSeY+xc7 for ; Fri, 19 Jun 2009 16:03:57 +1000 (EST) Received: from mail-au.aconex.com (mail-au.aconex.com [192.168.102.12]) by gatekeeper.aconex.com (Postfix) with ESMTP id 804D64FD82 for ; Fri, 19 Jun 2009 16:03:57 +1000 (EST) Date: Fri, 19 Jun 2009 16:03:57 +1000 (EST) From: Nathan Scott To: pcp@oss.sgi.com Message-ID: <2077578939.6619481245391437478.JavaMail.root@mail-au.aconex.com> X-ASG-Orig-Subj: pcp updates Subject: pcp updates MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Originating-IP: [203.89.192.141] X-Mailer: Zimbra 5.0.13_GA_2791.RHEL5_64 (ZimbraWebClient - [unknown] (Linux)/5.0.13_GA_2791.RHEL5_64) X-Barracuda-Connect: mail.aconex.com[203.89.202.182] X-Barracuda-Start-Time: 1245391444 X-Barracuda-Bayes: INNOCENT GLOBAL 0.0000 1.0000 -2.0210 X-Barracuda-Virus-Scanned: by cuda.sgi.com at sgi.com X-Barracuda-Spam-Score: -1.52 X-Barracuda-Spam-Status: No, SCORE=-1.52 using per-user scores of TAG_LEVEL=2.0 QUARANTINE_LEVEL=1000.0 KILL_LEVEL=2.1 tests=BSF_RULE7568M X-Barracuda-Spam-Report: Code version 3.2, rules version 3.2.2.1201 Rule breakdown below pts rule name description ---- ---------------------- -------------------------------------------------- 0.50 BSF_RULE7568M Custom Rule 7568M X-Virus-Status: Clean Changes committed to git://oss.sgi.com/nathans/pcp.git man/man4/mmv.4 | 2 src/cpan/PMDA/PMDA.xs | 27 +++-- src/cpan/PMDA/local.c | 180 ++++------------------------------- src/cpan/PMDA/local.h | 5 src/libpcp/src/logmeta.c | 1 src/pmdas/mmv/mmv.c | 237 ++++++++++++++++++++++------------------------- 6 files changed, 154 insertions(+), 298 deletions(-) commit 63c3d4fb9eda983b4fb48bd51353ed3c77a186e7 Author: Nathan Scott Date: Fri Jun 19 15:35:38 2009 +1000 Remove a redundant variable assignment in libpcp, from code reviewing. commit 3c744ac05a9ef0ce7574932788ee074943409432 Author: Nathan Scott Date: Fri Jun 19 15:35:09 2009 +1000 Change the MMV PMDA to be able to use metrics with deep name hierarchies. Current code assumes mmv.. whereas we want to be able to have more complex name groupings like mmv..... Simplified fetch/store logic for the reload metric too. commit 6b351446761c986c4db9761b3d26dde0ae97cee6 Author: Nathan Scott Date: Fri Jun 19 15:32:45 2009 +1000 Rework the Perl module to use PMNS routines from libpcp instead of redoing it. commit 6f2072fae2fde12afc70149d1968f298c4cb4513 Author: Nathan Scott Date: Fri Jun 19 15:31:43 2009 +1000 Correct an offset described in mmv file format header. From nscott@aconex.com Fri Jun 19 01:23:26 2009 X-Spam-Checker-Version: SpamAssassin 3.3.0-rupdated (updated) on oss.sgi.com X-Spam-Level: X-Spam-Status: No, score=-2.3 required=5.0 tests=AWL,BAYES_00 autolearn=ham version=3.3.0-rupdated Received: from cuda.sgi.com (cuda3.sgi.com [192.48.176.15]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id n5J6NPn3049902 for ; Fri, 19 Jun 2009 01:23:26 -0500 X-ASG-Debug-ID: 1245392628-74b901c20000-S8gJnT X-Barracuda-URL: http://cuda.sgi.com:80/cgi-bin/mark.cgi Received: from postoffice2.aconex.com (localhost [127.0.0.1]) by cuda.sgi.com (Spam Firewall) with ESMTP id EE6681ADF44D for ; Thu, 18 Jun 2009 23:23:49 -0700 (PDT) Received: from postoffice2.aconex.com (mail.aconex.com [203.89.202.182]) by cuda.sgi.com with ESMTP id SoWdad02C5ioji5k for ; Thu, 18 Jun 2009 23:23:49 -0700 (PDT) Received: from postoffice.aconex.com (localhost [127.0.0.1]) by postoffice2.aconex.com (Spam Firewall) with ESMTP id 7CF086222F2; Fri, 19 Jun 2009 16:23:47 +1000 (EST) Received: from postoffice.aconex.com (postoffice.yarra.acx [192.168.102.1]) by postoffice2.aconex.com with ESMTP id GT0BWIotB4cfG4Nr; Fri, 19 Jun 2009 16:23:47 +1000 (EST) Received: from gatekeeper.aconex.com (gatekeeper.yarra.acx [192.168.102.10]) by postoffice.aconex.com (Postfix) with ESMTP id E728FA5012D; Fri, 19 Jun 2009 16:23:25 +1000 (EST) Received: from localhost (localhost.localdomain [127.0.0.1]) by gatekeeper.aconex.com (Postfix) with ESMTP id 6146F4FD87; Fri, 19 Jun 2009 16:23:47 +1000 (EST) X-Virus-Scanned: ClamAV version 0.94.2, clamav-milter version 0.94.2 on oss.sgi.com X-Virus-Scanned: amavisd-new at gatekeeper.yarra.acx Received: from gatekeeper.aconex.com ([127.0.0.1]) by localhost (gatekeeper.aconex.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Jfrbk0vqVf-b; Fri, 19 Jun 2009 16:23:42 +1000 (EST) Received: from mail-au.aconex.com (mail-au.aconex.com [192.168.102.12]) by gatekeeper.aconex.com (Postfix) with ESMTP id A66784FD84; Fri, 19 Jun 2009 16:23:42 +1000 (EST) Date: Fri, 19 Jun 2009 16:23:42 +1000 (EST) From: Nathan Scott To: Max Matveev Cc: pcp@oss.sgi.com Message-ID: <462165906.6621001245392622649.JavaMail.root@mail-au.aconex.com> In-Reply-To: <2106371383.6620881245392390532.JavaMail.root@mail-au.aconex.com> X-ASG-Orig-Subj: Re: [pcp] Fancy pmns processing Subject: Re: [pcp] Fancy pmns processing MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Originating-IP: [203.89.192.141] X-Mailer: Zimbra 5.0.13_GA_2791.RHEL5_64 (ZimbraWebClient - [unknown] (Linux)/5.0.13_GA_2791.RHEL5_64) X-Barracuda-Connect: mail.aconex.com[203.89.202.182] X-Barracuda-Start-Time: 1245392630 X-Barracuda-Bayes: INNOCENT GLOBAL 0.0082 1.0000 -1.9677 X-Barracuda-Virus-Scanned: by cuda.sgi.com at sgi.com X-Barracuda-Spam-Score: -1.97 X-Barracuda-Spam-Status: No, SCORE=-1.97 using per-user scores of TAG_LEVEL=2.0 QUARANTINE_LEVEL=1000.0 KILL_LEVEL=2.1 tests= X-Barracuda-Spam-Report: Code version 3.2, rules version 3.2.2.1202 Rule breakdown below pts rule name description ---- ---------------------- -------------------------------------------------- X-Virus-Status: Clean ----- "Max Matveev" wrote: > Hi folks, > > I've got an interesting pmns problem I'm trying to resolve: I have a > pmda which, depending on the installation, serves different > metrics. The metric list is defined by the namespace which gets > installed with some metrics appearing in all installations and others > only in some. > > ... > > The best I've managed to come up so far is to effectively take over > the pmns and help processing from the PMDA shell library, combine > pmns > using explicit cpp run in Install script, do my own help compilation > and lie to the Install script about the help source to stop it from > messing with my prepared help.dir/help.pag. > > Does anyone has a more elegant solution? Not for a traditional C agent. The Perl PMDA module generates the namespace "on the fly" at Install time, its got the most "dynamic" handling of names of anything I'm aware of. The MMV PMDA recently (today) acquired some more dynamic name handling code, too - its now handling arbitrary depth names and also all on the fly (runtime too, not just Install time). cheers. -- Nathan From nscott@aconex.com Tue Jun 23 20:11:44 2009 X-Spam-Checker-Version: SpamAssassin 3.3.0-rupdated (updated) on oss.sgi.com X-Spam-Level: X-Spam-Status: No, score=-2.3 required=5.0 tests=AWL,BAYES_00 autolearn=ham version=3.3.0-rupdated Received: from cuda.sgi.com (cuda1.sgi.com [192.48.157.11]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id n5O1BhMI055168 for ; Tue, 23 Jun 2009 20:11:44 -0500 X-ASG-Debug-ID: 1245806432-6e4700460000-S8gJnT X-Barracuda-URL: http://cuda.sgi.com:80/cgi-bin/mark.cgi Received: from postoffice2.aconex.com (localhost [127.0.0.1]) by cuda.sgi.com (Spam Firewall) with ESMTP id 48CDF128885E for ; Tue, 23 Jun 2009 18:20:32 -0700 (PDT) Received: from postoffice2.aconex.com (mail.aconex.com [203.89.202.182]) by cuda.sgi.com with ESMTP id iCLGfhDPi83GRbmO for ; Tue, 23 Jun 2009 18:20:32 -0700 (PDT) Received: from postoffice.aconex.com (localhost [127.0.0.1]) by postoffice2.aconex.com (Spam Firewall) with ESMTP id A989988BC5 for ; Wed, 24 Jun 2009 11:12:07 +1000 (EST) Received: from postoffice.aconex.com (postoffice.yarra.acx [192.168.102.1]) by postoffice2.aconex.com with ESMTP id RNxloxodZqHMmGvT for ; Wed, 24 Jun 2009 11:12:07 +1000 (EST) Received: from gatekeeper.aconex.com (gatekeeper.yarra.acx [192.168.102.10]) by postoffice.aconex.com (Postfix) with ESMTP id AB32AA503CD for ; Wed, 24 Jun 2009 11:11:43 +1000 (EST) Received: from localhost (localhost.localdomain [127.0.0.1]) by gatekeeper.aconex.com (Postfix) with ESMTP id 9796E4FD87 for ; Wed, 24 Jun 2009 11:12:07 +1000 (EST) X-Virus-Scanned: ClamAV version 0.94.2, clamav-milter version 0.94.2 on oss.sgi.com X-Virus-Scanned: amavisd-new at gatekeeper.yarra.acx Received: from gatekeeper.aconex.com ([127.0.0.1]) by localhost (gatekeeper.aconex.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id mPBW5NU1gVX4 for ; Wed, 24 Jun 2009 11:12:03 +1000 (EST) Received: from mail-au.aconex.com (mail-au.aconex.com [192.168.102.12]) by gatekeeper.aconex.com (Postfix) with ESMTP id 3B0694FD82 for ; Wed, 24 Jun 2009 11:12:03 +1000 (EST) Date: Wed, 24 Jun 2009 11:12:03 +1000 (EST) From: Nathan Scott To: pcp@oss.sgi.com Message-ID: <1607712281.6849771245805923178.JavaMail.root@mail-au.aconex.com> X-ASG-Orig-Subj: pcp updates Subject: pcp updates MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Originating-IP: [203.89.192.141] X-Mailer: Zimbra 5.0.13_GA_2791.RHEL5_64 (ZimbraWebClient - [unknown] (Linux)/5.0.13_GA_2791.RHEL5_64) X-Barracuda-Connect: mail.aconex.com[203.89.202.182] X-Barracuda-Start-Time: 1245806434 X-Barracuda-Bayes: INNOCENT GLOBAL 0.0000 1.0000 -2.0210 X-Barracuda-Virus-Scanned: by cuda.sgi.com at sgi.com X-Barracuda-Spam-Score: -1.52 X-Barracuda-Spam-Status: No, SCORE=-1.52 using per-user scores of TAG_LEVEL=2.0 QUARANTINE_LEVEL=1000.0 KILL_LEVEL=2.1 tests=BSF_RULE7568M X-Barracuda-Spam-Report: Code version 3.2, rules version 3.2.2.1625 Rule breakdown below pts rule name description ---- ---------------------- -------------------------------------------------- 0.50 BSF_RULE7568M Custom Rule 7568M X-Virus-Status: Clean Changes committed to git://oss.sgi.com/nathans/pcp.git debian/libpcp-mmv1-dev.install | 1 man/man3/mmv_inc_value.3 | 5 man/man3/mmv_lookup_value_desc.3 | 35 +- man/man3/mmv_stats_init.3 | 54 +++- man/man4/mmv.4 | 88 ++++++- src/cpan/MMV/MMV.pm | 7 src/cpan/MMV/MMV.xs | 279 ++++++++++++++++------- src/cpan/MMV/typemap | 6 src/include/GNUmakefile | 2 src/include/mmv_dev.h | 86 +++++++ src/include/mmv_stats.h | 275 ++++++++++------------- src/libpcp_mmv/src/mmv_stats.c | 466 ++++++++++++++++++++++----------------- src/pmdas/mmv/.gitignore | 1 src/pmdas/mmv/GNUmakefile | 9 src/pmdas/mmv/mmv.c | 155 ++++++------ src/pmdas/mmv/mmvdump.c | 269 ++++++++++++++++++++++ 16 files changed, 1171 insertions(+), 567 deletions(-) commit 7a16daeb4ec6b6a4afafac31df5200274f19c47f Author: Nathan Scott Date: Wed Jun 24 11:00:20 2009 +1000 Add a diagnostic tool for MMV clients and PMDA. An additional diagnostic tool has been added into the set of files installed with the MMV PMDA to aid testing and debugging by MMV users and developers. Was based on the mmv_dumpstats QA tool originally, but its basically a complete rewrite at this stage. commit 860d00b6212f0bc51b57a9912e3684140de9b227 Author: Nathan Scott Date: Wed Jun 24 10:48:55 2009 +1000 Final format modifications for MMV PMDA, for instances. This change reworks the way instance domains are handled in the MMV PMDA, to be more consistent with the way it deals with metrics. mmv_stats_init() now takes extra arguments for instances (indoms, nindoms). The ondisk format has an additional TOC type for indoms, separate to instances (paralleling the metrics / values separation). In addition to making a more consistent format thats easier to write the Java API for, we can also now specify indom help text and can thus now support everything that a "regular" PMDA can. This change also separates out the ondisk format structs from the client interface (mmv_dev.h vs mmv_stats.h) so that clients never need to directly access the on-disk file. Values *are* still updated "in-place", of course, but this is done via access to a pmAtomValue instead of by exposing implementation details at the API level. Man pages are updated to document the API tweaks and the ondisk format changes. This is expected to be the final format change we need in order to replace 2 of our mmap- based production PMDAs (Aconex and Cymetry viewer) - its likely some minor PMDA tweaks still remain to completely achieve that goal, but the ondisk format is done. As an interesting by-product of these changes, the main API routine mmv_stats_init() no longer allocates memory at all - everything is done in-place in the mmap'd file. From nscott@aconex.com Tue Jun 23 20:54:36 2009 X-Spam-Checker-Version: SpamAssassin 3.3.0-rupdated (updated) on oss.sgi.com X-Spam-Level: X-Spam-Status: No, score=-2.3 required=5.0 tests=AWL,BAYES_00 autolearn=ham version=3.3.0-rupdated Received: from cuda.sgi.com (cuda3.sgi.com [192.48.176.15]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id n5O1sa0H056178 for ; Tue, 23 Jun 2009 20:54:36 -0500 X-ASG-Debug-ID: 1245808500-126003ae0000-S8gJnT X-Barracuda-URL: http://cuda.sgi.com:80/cgi-bin/mark.cgi Received: from postoffice2.aconex.com (localhost [127.0.0.1]) by cuda.sgi.com (Spam Firewall) with ESMTP id CEF391B46F6E for ; Tue, 23 Jun 2009 18:55:00 -0700 (PDT) Received: from postoffice2.aconex.com (mail.aconex.com [203.89.202.182]) by cuda.sgi.com with ESMTP id dYKOqvUPP7LPyeL9 for ; Tue, 23 Jun 2009 18:55:00 -0700 (PDT) Received: from postoffice.aconex.com (localhost [127.0.0.1]) by postoffice2.aconex.com (Spam Firewall) with ESMTP id B5A147A3353 for ; Wed, 24 Jun 2009 11:54:58 +1000 (EST) Received: from postoffice.aconex.com (postoffice.yarra.acx [192.168.102.1]) by postoffice2.aconex.com with ESMTP id YlnKrAwVKp8h31cL for ; Wed, 24 Jun 2009 11:54:58 +1000 (EST) Received: from gatekeeper.aconex.com (gatekeeper.yarra.acx [192.168.102.10]) by postoffice.aconex.com (Postfix) with ESMTP id A3EA5A502B5 for ; Wed, 24 Jun 2009 11:54:34 +1000 (EST) Received: from localhost (localhost.localdomain [127.0.0.1]) by gatekeeper.aconex.com (Postfix) with ESMTP id 98E254FD85 for ; Wed, 24 Jun 2009 11:54:58 +1000 (EST) X-Virus-Scanned: ClamAV version 0.94.2, clamav-milter version 0.94.2 on oss.sgi.com X-Virus-Scanned: amavisd-new at gatekeeper.yarra.acx Received: from gatekeeper.aconex.com ([127.0.0.1]) by localhost (gatekeeper.aconex.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id uSFI-ky7OuAk; Wed, 24 Jun 2009 11:54:54 +1000 (EST) Received: from mail-au.aconex.com (mail-au.aconex.com [192.168.102.12]) by gatekeeper.aconex.com (Postfix) with ESMTP id 967504FD82; Wed, 24 Jun 2009 11:54:54 +1000 (EST) Date: Wed, 24 Jun 2009 11:54:49 +1000 (EST) From: Nathan Scott To: pcp@oss.sgi.com Cc: Rodney McKee Message-ID: <2031813857.6870021245808489597.JavaMail.root@mail-au.aconex.com> X-ASG-Orig-Subj: pcp-gui updates Subject: pcp-gui updates MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Originating-IP: [203.89.192.141] X-Mailer: Zimbra 5.0.13_GA_2791.RHEL5_64 (ZimbraWebClient - [unknown] (Linux)/5.0.13_GA_2791.RHEL5_64) X-Barracuda-Connect: mail.aconex.com[203.89.202.182] X-Barracuda-Start-Time: 1245808501 X-Barracuda-Bayes: INNOCENT GLOBAL 0.0000 1.0000 -2.0210 X-Barracuda-Virus-Scanned: by cuda.sgi.com at sgi.com X-Barracuda-Spam-Score: -2.02 X-Barracuda-Spam-Status: No, SCORE=-2.02 using per-user scores of TAG_LEVEL=2.0 QUARANTINE_LEVEL=1000.0 KILL_LEVEL=2.1 tests= X-Barracuda-Spam-Report: Code version 3.2, rules version 3.2.2.1628 Rule breakdown below pts rule name description ---- ---------------------- -------------------------------------------------- X-Virus-Status: Clean Changes committed to git://oss.sgi.com/nathans/pcp-gui.git src/chart/settingsdialog.ui | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) commit ffc37db96e0b2e2b717e154dd55e3337c7a18da5 Author: Nathan Scott Date: Wed Jun 24 11:46:25 2009 +1000 Fix bad right-to-left layout in preferences dialog fields. Somehow the two QLineEdit fields for editing the default sampling and logging intervals in pmchart had the right- to-left attribute set. Thanks to Rodney McKee for reporting this one. From nscott@aconex.com Wed Jun 24 01:48:00 2009 X-Spam-Checker-Version: SpamAssassin 3.3.0-rupdated (updated) on oss.sgi.com X-Spam-Level: X-Spam-Status: No, score=-2.3 required=5.0 tests=AWL,BAYES_00 autolearn=ham version=3.3.0-rupdated Received: from cuda.sgi.com (cuda3.sgi.com [192.48.176.15]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id n5O6lxbm066482 for ; Wed, 24 Jun 2009 01:47:59 -0500 X-ASG-Debug-ID: 1245826106-1b9403150000-S8gJnT X-Barracuda-URL: http://cuda.sgi.com:80/cgi-bin/mark.cgi Received: from postoffice2.aconex.com (localhost [127.0.0.1]) by cuda.sgi.com (Spam Firewall) with ESMTP id C49451B46E37 for ; Tue, 23 Jun 2009 23:48:26 -0700 (PDT) Received: from postoffice2.aconex.com (mail.aconex.com [203.89.202.182]) by cuda.sgi.com with ESMTP id aFAmJwTrKYsf7haD for ; Tue, 23 Jun 2009 23:48:26 -0700 (PDT) Received: from postoffice.aconex.com (localhost [127.0.0.1]) by postoffice2.aconex.com (Spam Firewall) with ESMTP id 51DEC8CB1D for ; Wed, 24 Jun 2009 16:48:25 +1000 (EST) Received: from postoffice.aconex.com (postoffice.yarra.acx [192.168.102.1]) by postoffice2.aconex.com with ESMTP id AC9KJWSahpzYg7wR for ; Wed, 24 Jun 2009 16:48:25 +1000 (EST) Received: from gatekeeper.aconex.com (gatekeeper.yarra.acx [192.168.102.10]) by postoffice.aconex.com (Postfix) with ESMTP id 2CE5EA502B5 for ; Wed, 24 Jun 2009 16:48:01 +1000 (EST) Received: from localhost (localhost.localdomain [127.0.0.1]) by gatekeeper.aconex.com (Postfix) with ESMTP id 3B7184FD84 for ; Wed, 24 Jun 2009 16:48:25 +1000 (EST) X-Virus-Scanned: ClamAV version 0.94.2, clamav-milter version 0.94.2 on oss.sgi.com X-Virus-Scanned: amavisd-new at gatekeeper.yarra.acx Received: from gatekeeper.aconex.com ([127.0.0.1]) by localhost (gatekeeper.aconex.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id NpS2CmRzVBAt for ; Wed, 24 Jun 2009 16:48:21 +1000 (EST) Received: from mail-au.aconex.com (mail-au.aconex.com [192.168.102.12]) by gatekeeper.aconex.com (Postfix) with ESMTP id 3A1ED4FD82 for ; Wed, 24 Jun 2009 16:48:21 +1000 (EST) Date: Wed, 24 Jun 2009 16:48:21 +1000 (EST) From: Nathan Scott To: pcp Message-ID: <627262839.6889491245826101188.JavaMail.root@mail-au.aconex.com> X-ASG-Orig-Subj: pcp updates Subject: pcp updates MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Originating-IP: [203.89.192.141] X-Mailer: Zimbra 5.0.13_GA_2791.RHEL5_64 (ZimbraWebClient - [unknown] (Linux)/5.0.13_GA_2791.RHEL5_64) X-Barracuda-Connect: mail.aconex.com[203.89.202.182] X-Barracuda-Start-Time: 1245826107 X-Barracuda-Bayes: INNOCENT GLOBAL 0.0000 1.0000 -2.0210 X-Barracuda-Virus-Scanned: by cuda.sgi.com at sgi.com X-Barracuda-Spam-Score: -2.02 X-Barracuda-Spam-Status: No, SCORE=-2.02 using per-user scores of TAG_LEVEL=2.0 QUARANTINE_LEVEL=1000.0 KILL_LEVEL=2.1 tests= X-Barracuda-Spam-Report: Code version 3.2, rules version 3.2.2.1644 Rule breakdown below pts rule name description ---- ---------------------- -------------------------------------------------- X-Virus-Status: Clean Changes committed to git://oss.sgi.com/nathans/pcp.git src/cpan/PMDA/local.c | 2 src/include/mmv_stats.h | 4 + src/pmdas/mmv/mmv.c | 142 ++++++++++++++++++++++++++---------------------- src/pmdas/mmv/mmvdump.c | 30 +++++----- 4 files changed, 99 insertions(+), 79 deletions(-) commit 704a39cc4cff8bed9fe8934a71ca83a0eceb42a5 Author: Nathan Scott Date: Wed Jun 24 16:41:44 2009 +1000 Fix up some compiler warnings that have crept in. commit c1b46ef054918215c5d549a51ada57bd63b6ebac Author: Nathan Scott Date: Wed Jun 24 15:48:48 2009 +1000 Scan all instance domains in MMV PMDA, not just first one. commit 4ca78cc53afb8495bb3d35ed91b2192076c8aed6 Author: Nathan Scott Date: Wed Jun 24 12:28:15 2009 +1000 No-prefix option for MMV clients wanting specific metric names. From nscott@aconex.com Wed Jun 24 01:49:37 2009 X-Spam-Checker-Version: SpamAssassin 3.3.0-rupdated (updated) on oss.sgi.com X-Spam-Level: X-Spam-Status: No, score=-2.3 required=5.0 tests=AWL,BAYES_00 autolearn=ham version=3.3.0-rupdated Received: from cuda.sgi.com (cuda2.sgi.com [192.48.176.25]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id n5O6nbQe066574 for ; Wed, 24 Jun 2009 01:49:37 -0500 X-ASG-Debug-ID: 1245826197-0c4b014f0000-S8gJnT X-Barracuda-URL: http://cuda.sgi.com:80/cgi-bin/mark.cgi Received: from postoffice2.aconex.com (localhost [127.0.0.1]) by cuda.sgi.com (Spam Firewall) with ESMTP id 9850431A633 for ; Tue, 23 Jun 2009 23:49:57 -0700 (PDT) Received: from postoffice2.aconex.com (mail.aconex.com [203.89.202.182]) by cuda.sgi.com with ESMTP id lsZR0qLqgCK4f17a for ; Tue, 23 Jun 2009 23:49:57 -0700 (PDT) Received: from postoffice.aconex.com (localhost [127.0.0.1]) by postoffice2.aconex.com (Spam Firewall) with ESMTP id 838478CED7 for ; Wed, 24 Jun 2009 16:49:56 +1000 (EST) Received: from postoffice.aconex.com (postoffice.yarra.acx [192.168.102.1]) by postoffice2.aconex.com with ESMTP id 0Fej9AnZV4iKKHyc for ; Wed, 24 Jun 2009 16:49:56 +1000 (EST) Received: from gatekeeper.aconex.com (gatekeeper.yarra.acx [192.168.102.10]) by postoffice.aconex.com (Postfix) with ESMTP id 5DA81A502B5 for ; Wed, 24 Jun 2009 16:49:32 +1000 (EST) Received: from localhost (localhost.localdomain [127.0.0.1]) by gatekeeper.aconex.com (Postfix) with ESMTP id 6C45F4FD85 for ; Wed, 24 Jun 2009 16:49:56 +1000 (EST) X-Virus-Scanned: ClamAV version 0.94.2, clamav-milter version 0.94.2 on oss.sgi.com X-Virus-Scanned: amavisd-new at gatekeeper.yarra.acx Received: from gatekeeper.aconex.com ([127.0.0.1]) by localhost (gatekeeper.aconex.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id MseXUlAKsdmX for ; Wed, 24 Jun 2009 16:49:52 +1000 (EST) Received: from mail-au.aconex.com (mail-au.aconex.com [192.168.102.12]) by gatekeeper.aconex.com (Postfix) with ESMTP id E800B4FD84 for ; Wed, 24 Jun 2009 16:49:47 +1000 (EST) Date: Wed, 24 Jun 2009 16:49:43 +1000 (EST) From: Nathan Scott To: pcp@oss.sgi.com Message-ID: <1913083329.6889591245826183801.JavaMail.root@mail-au.aconex.com> X-ASG-Orig-Subj: pcpqa updates Subject: pcpqa updates MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Originating-IP: [203.89.192.141] X-Mailer: Zimbra 5.0.13_GA_2791.RHEL5_64 (ZimbraWebClient - [unknown] (Linux)/5.0.13_GA_2791.RHEL5_64) X-Barracuda-Connect: mail.aconex.com[203.89.202.182] X-Barracuda-Start-Time: 1245826198 X-Barracuda-Bayes: INNOCENT GLOBAL 0.0000 1.0000 -2.0210 X-Barracuda-Virus-Scanned: by cuda.sgi.com at sgi.com X-Barracuda-Spam-Score: -2.02 X-Barracuda-Spam-Status: No, SCORE=-2.02 using per-user scores of TAG_LEVEL=2.0 QUARANTINE_LEVEL=1000.0 KILL_LEVEL=2.1 tests= X-Barracuda-Spam-Report: Code version 3.2, rules version 3.2.2.1646 Rule breakdown below pts rule name description ---- ---------------------- -------------------------------------------------- X-Virus-Status: Clean Changes committed to git://oss.sgi.com/pcp/pcpqa.git 646 | 15 ----- src-oss/GNUmakefile | 7 -- src-oss/mmv_dumpstats.c | 133 ------------------------------------------------ src-oss/mmv_genstats.c | 91 +++++++++++++++++++++----------- 4 files changed, 63 insertions(+), 183 deletions(-) commit 77383e6491d891bb654f7df6f13e0827fdec01d7 Author: Nathan Scott Date: Wed Jun 24 15:57:31 2009 +1000 Update MMV QA testing. mmv_dumpstats now moved into PCP. From nscott@aconex.com Thu Jun 25 02:00:14 2009 X-Spam-Checker-Version: SpamAssassin 3.3.0-rupdated (updated) on oss.sgi.com X-Spam-Level: X-Spam-Status: No, score=-1.3 required=5.0 tests=AWL,BAYES_00,URIBL_BLACK autolearn=no version=3.3.0-rupdated Received: from cuda.sgi.com (cuda1.sgi.com [192.48.157.11]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id n5P70DDE128769 for ; Thu, 25 Jun 2009 02:00:14 -0500 X-ASG-Debug-ID: 1245913749-7b2700700000-S8gJnT X-Barracuda-URL: http://cuda.sgi.com:80/cgi-bin/mark.cgi Received: from postoffice2.aconex.com (localhost [127.0.0.1]) by cuda.sgi.com (Spam Firewall) with ESMTP id 8FA12996D54 for ; Thu, 25 Jun 2009 00:09:09 -0700 (PDT) Received: from postoffice2.aconex.com (mail.aconex.com [203.89.202.182]) by cuda.sgi.com with ESMTP id FDe53g3BCZOb7BAG for ; Thu, 25 Jun 2009 00:09:09 -0700 (PDT) Received: from postoffice.aconex.com (localhost [127.0.0.1]) by postoffice2.aconex.com (Spam Firewall) with ESMTP id 4222C98CD1 for ; Thu, 25 Jun 2009 17:00:37 +1000 (EST) Received: from postoffice.aconex.com (postoffice.yarra.acx [192.168.102.1]) by postoffice2.aconex.com with ESMTP id MbefvSVGlbz9cDhs for ; Thu, 25 Jun 2009 17:00:37 +1000 (EST) Received: from gatekeeper.aconex.com (gatekeeper.yarra.acx [192.168.102.10]) by postoffice.aconex.com (Postfix) with ESMTP id 94FAEA503CD for ; Thu, 25 Jun 2009 17:00:12 +1000 (EST) Received: from localhost (localhost.localdomain [127.0.0.1]) by gatekeeper.aconex.com (Postfix) with ESMTP id 081834FD86 for ; Thu, 25 Jun 2009 17:00:37 +1000 (EST) X-Virus-Scanned: ClamAV version 0.94.2, clamav-milter version 0.94.2 on oss.sgi.com X-Virus-Scanned: amavisd-new at gatekeeper.yarra.acx Received: from gatekeeper.aconex.com ([127.0.0.1]) by localhost (gatekeeper.aconex.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id yD8ritsZlwW4 for ; Thu, 25 Jun 2009 17:00:33 +1000 (EST) Received: from mail-au.aconex.com (mail-au.aconex.com [192.168.102.12]) by gatekeeper.aconex.com (Postfix) with ESMTP id 448974FD84 for ; Thu, 25 Jun 2009 17:00:33 +1000 (EST) Date: Thu, 25 Jun 2009 17:00:33 +1000 (EST) From: Nathan Scott To: pcp@oss.sgi.com Message-ID: <723480914.6936841245913233228.JavaMail.root@mail-au.aconex.com> X-ASG-Orig-Subj: pcp updates Subject: pcp updates MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Originating-IP: [203.89.192.141] X-Mailer: Zimbra 5.0.13_GA_2791.RHEL5_64 (ZimbraWebClient - [unknown] (Linux)/5.0.13_GA_2791.RHEL5_64) X-Barracuda-Connect: mail.aconex.com[203.89.202.182] X-Barracuda-Start-Time: 1245913751 X-Barracuda-Bayes: INNOCENT GLOBAL 0.0000 1.0000 -2.0210 X-Barracuda-Virus-Scanned: by cuda.sgi.com at sgi.com X-Barracuda-Spam-Score: -1.52 X-Barracuda-Spam-Status: No, SCORE=-1.52 using per-user scores of TAG_LEVEL=2.0 QUARANTINE_LEVEL=1000.0 KILL_LEVEL=2.1 tests=BSF_RULE7568M X-Barracuda-Spam-Report: Code version 3.2, rules version 3.2.2.1729 Rule breakdown below pts rule name description ---- ---------------------- -------------------------------------------------- 0.50 BSF_RULE7568M Custom Rule 7568M X-Virus-Status: Clean Changes committed to git://oss.sgi.com/nathans/pcp.git configure.in | 4 man/man3/mmv_inc_value.3 | 1 man/man3/mmv_lookup_value_desc.3 | 1 man/man3/mmv_stats_init.3 | 1 man/man4/mmv.4 | 63 ++++++------ src/cpan/MMV/GNUmakefile | 2 src/cpan/MMV/MANIFEST | 1 src/cpan/MMV/MMV.pm | 77 +++++++++++---- src/cpan/MMV/MMV.xs | 26 +---- src/cpan/MMV/server.pl | 88 +++++++++++++++++ src/include/mmv_dev.h | 2 src/include/mmv_stats.h | 150 +++++------------------------ src/include/platform_defs.h.in | 14 +- src/libpcp/src/util.c | 4 src/libpcp_gui/src/record.c | 2 src/libpcp_mmv/src/mmv_stats.c | 197 ++++++++++++++++++++++++++++++++++----- src/pmcd/src/config.c | 4 src/pmdas/mmv/GNUmakefile | 5 src/pmdas/mmv/mmv.c | 57 +++++------ src/pmdas/mmv/mmvdump.c | 88 +++++++++-------- src/pmdas/summary/pmda.c | 2 src/pmdas/weblog/pmda.c | 4 22 files changed, 487 insertions(+), 306 deletions(-) commit 59cf322f14dfdaaada8985837c937f5dace4b0b5 Author: Nathan Scott Date: Thu Jun 25 16:57:49 2009 +1000 Fix compiler warning on Windows due to pipe() redefinition. commit 92c08eec2fb953d796b7a0650232d4ed58833450 Author: Nathan Scott Date: Thu Jun 25 16:32:58 2009 +1000 Update mmvdump to also show TOC start offsets. commit 76cb209350261c63feaa4cabf0227fcf36407db8 Author: Nathan Scott Date: Thu Jun 25 16:03:45 2009 +1000 Build fixes for MMV on Windows and with no PCP installed. commit c8c7f3322dbe701538ea205120603fa144bff7f6 Author: Nathan Scott Date: Thu Jun 25 15:20:41 2009 +1000 Incorporate doc feedback for MMV man pages. Paul Cowan suggests making the order of MMV section definition in mmv.4 match the order in the initial table. Make it so. commit 1a1c985900478e8feb035d8fd7bd68593bae78d8 Author: Nathan Scott Date: Thu Jun 25 15:08:04 2009 +1000 Explicitly set elapsed timer metric semantics in the MMV PMDA. commit 39b875e58c88ab52a7c78d695ab5feda5e71bdb0 Author: Nathan Scott Date: Thu Jun 25 15:07:32 2009 +1000 Fixes for two MMV client library bugs, found in QA. The indom help text was being updated using an index into the metric table. Singular metric values weren't being accessed correctly if zero used instead of the usual PM_INDOM_NULL. commit 114caa9ded91ce22835a50a9af6510cadecf6225 Author: Nathan Scott Date: Thu Jun 25 12:10:12 2009 +1000 Fix up handling of elapsed-timers in the MMV PMDA. There was some redundant code (never ever used AFAICT) that allocated extra memory in the PMDA for the "extra" value space for each instance - not needed, removed. Also fix a logic issue resulting in timers not exporting correctly. commit 2b629689b94a50f2c590ed266d2b0b9b3010d9b6 Author: Nathan Scott Date: Thu Jun 25 11:02:56 2009 +1000 MMV client API improvements. This patch: - adds an API routine for setting the value directly, which is needed for instantaneous values (not just incrementing then); - moves the mmv_stats inline wrapper routines into the library, simplifying the main API header a whole lot; - directly use the pmapi.h macros where they match up with some mmv_stats.h macros, ensuring values match & meaning is clear; - update the Perl client module to remove the dependence on the PMDA module; - add a decent Perl example showing how to instrument with this module; - add an "elapsed time" metric type which correctly handles the in-progress timer situation. Ondisk format and client APIs are now feature complete for us. From cowan@aconex.com Fri Jun 26 00:23:01 2009 X-Spam-Checker-Version: SpamAssassin 3.3.0-rupdated (updated) on oss.sgi.com X-Spam-Level: X-Spam-Status: No, score=-2.6 required=5.0 tests=BAYES_00 autolearn=ham version=3.3.0-rupdated Received: from cuda.sgi.com (cuda2.sgi.com [192.48.176.25]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id n5Q5N02E190944 for ; Fri, 26 Jun 2009 00:23:01 -0500 X-ASG-Debug-ID: 1245993806-6a7d02ca0000-S8gJnT X-Barracuda-URL: http://cuda.sgi.com:80/cgi-bin/mark.cgi Received: from postoffice2.aconex.com (localhost [127.0.0.1]) by cuda.sgi.com (Spam Firewall) with ESMTP id 6C524324BD6 for ; Thu, 25 Jun 2009 22:23:26 -0700 (PDT) Received: from postoffice2.aconex.com (mail.aconex.com [203.89.202.182]) by cuda.sgi.com with ESMTP id AHxXqt8SNub5xUI2 for ; Thu, 25 Jun 2009 22:23:26 -0700 (PDT) Received: from postoffice.aconex.com (localhost [127.0.0.1]) by postoffice2.aconex.com (Spam Firewall) with ESMTP id 3C178A617D for ; Fri, 26 Jun 2009 15:23:24 +1000 (EST) Received: from postoffice.aconex.com (postoffice.yarra.acx [192.168.102.1]) by postoffice2.aconex.com with ESMTP id 8XbgiuKc4ypQp0Cd for ; Fri, 26 Jun 2009 15:23:24 +1000 (EST) Received: from gatekeeper.aconex.com (gatekeeper.yarra.acx [192.168.102.10]) by postoffice.aconex.com (Postfix) with ESMTP id ED5B5A502B5 for ; Fri, 26 Jun 2009 15:22:58 +1000 (EST) Received: from localhost (localhost.localdomain [127.0.0.1]) by gatekeeper.aconex.com (Postfix) with ESMTP id 02E924FD85 for ; Fri, 26 Jun 2009 15:23:24 +1000 (EST) X-Virus-Scanned: ClamAV version 0.94.2, clamav-milter version 0.94.2 on oss.sgi.com X-Virus-Scanned: amavisd-new at gatekeeper.yarra.acx Received: from gatekeeper.aconex.com ([127.0.0.1]) by localhost (gatekeeper.aconex.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Xar7J+250cN5 for ; Fri, 26 Jun 2009 15:23:19 +1000 (EST) Received: from [192.168.5.132] (melho0.aconex.com [203.89.192.141]) by gatekeeper.aconex.com (Postfix) with ESMTP id E8EAF4FD82 for ; Fri, 26 Jun 2009 15:23:19 +1000 (EST) Message-ID: <4A445B6C.7060200@aconex.com> Date: Fri, 26 Jun 2009 15:23:56 +1000 From: Paul Cowan Organization: Aconex User-Agent: Thunderbird 2.0.0.21 (X11/20090409) MIME-Version: 1.0 To: pcp@oss.sgi.com X-ASG-Orig-Subj: New open-source Java library to collect PCP metrics Subject: New open-source Java library to collect PCP metrics Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Barracuda-Connect: mail.aconex.com[203.89.202.182] X-Barracuda-Start-Time: 1245993808 X-Barracuda-Bayes: INNOCENT GLOBAL 0.0098 1.0000 -1.9568 X-Barracuda-Virus-Scanned: by cuda.sgi.com at sgi.com X-Barracuda-Spam-Score: -1.96 X-Barracuda-Spam-Status: No, SCORE=-1.96 using per-user scores of TAG_LEVEL=2.0 QUARANTINE_LEVEL=1000.0 KILL_LEVEL=2.1 tests= X-Barracuda-Spam-Report: Code version 3.2, rules version 3.2.2.1811 Rule breakdown below pts rule name description ---- ---------------------- -------------------------------------------------- X-Virus-Status: Clean Hi all, As you may have gathered, I've been working with Nathan Scott on coming up with a Java library to simply and easily pass values to PCP via the recently-open-sourced MMV agent. We had a custom implementation of an MMV-like agent here at Aconex, which was not really suitable for general use; now that the MMV agent proper is freely available, Nathan's done some grade-A hacking on it already to introduce some missing features for our needs, and the Java library to go along with it is likewise nearly ready; I thought I'd post a quick intro here to get some feedback on the API before we do a first formal release and it gets set in stone (well, MORE set). First off, how to get it! (so you can read along; whenever you hear *this* sound, you'll know it's time to turn the page, etc). The new library is a (standalone) part of Parfait, an in-the-process-of-being-open-sourced (i.e. it's still very rough and ready, with much more to do) set of Java performance tools developed here at Aconex. Parfait contains a bunch of stuff (more about that to follow later, as the library proper may be of more general interest), but the important part for now is DXM, the Java library for the MMV agent [1]. The key facts: License: Apache 2. Project home page: http://code.google.com/p/parfait/ To view the source: http://code.google.com/p/parfait/source/browse/#svn/trunk To check out the source using Subversion: svn co http://parfait.googlecode.com/svn/trunk/ parfait The build process uses Maven 2; for those not familiar with it, building is as simple as (requires Java 1.6 ATM, no effort's been put into backcompat): mvn package (this builds the whole library; the DXM jar, specifically, will end up in dxm/target/dxm-.jar) Maven repo (as yet unpopulated, because there's been no release, but file it away for future reference) http://repo.custardsource.com/releases/ So, how does it work? Well, the API is (I think) extremely simple and quite clean. You create a 'writer' object, add the values you'll be monitoring, start the writer (which creates the memory-mapped file), and update as you please. A given metric is associated with a converter responsible for mapping Java types to PCP bytes; mappings are provided for most common types (all the primitives, and a couple of extras, like AtomicInteger). Custom converters for your own domain types can be added through a simple API, either by registering the converter to handle all values of a given class or by choosing a converter one-by-one for individual metrics. The best way to explain is, as always, a demonstration; here's some dummy code (currently still sitting in the source as a test, until I hook it out) which demonstrates most of the features. I've annotated it to make it clear what's going on. Formatting's a bit naff, sorry. -- PcpMmvWriter bridge = new PcpMmvWriter( new File("/var/tmp/mmv/mmvtest")); // Automatically uses default int handler bridge.addMetric( MetricName.parse("sheep[baabaablack].bagsfull.count"), 3); // Automatically uses default boolean-to-int handler bridge.addMetric( MetricName.parse("sheep[baabaablack].bagsfull.haveany"), new AtomicBoolean(true)); bridge.addMetric( MetricName.parse("sheep[limpy].bagsfull.haveany"), new AtomicBoolean(false)); // Automatically uses default long handler bridge.addMetric( MetricName.parse("sheep[insomniac].jumps"), 12345678901234L); // Automatically uses default double handler bridge.addMetric( MetricName.parse("sheep[limpy].legs.available"), 0.75); // Uses this class' custom String handler bridge.addMetric(MetricName.parse("sheep[limpy].jumpitem"), "fence"); // addMetric(GregorianCalendar) would fail, as there's no // handler registered by default for GregorianCalendars; use // a custom one which puts the year as an int bridge.addMetric( MetricName.parse("sheep[insomniac].lastjumped"), new GregorianCalendar(), new AbstractTypeHandler(MmvMetricType.I32, 4) { public void putBytes(ByteBuffer buffer, GregorianCalendar value) { buffer.putInt(value.get(GregorianCalendar.YEAR)); } }); // addMetric(Date) would fail, as there's no handler registered; // register one for all date types from now on bridge.registerType(Date.class, new AbstractTypeHandler(MmvMetricType.I64, 8) { public void putBytes(ByteBuffer buffer, Date value) { buffer.putLong(value.getTime()); } }); // These will both use the handler we just registered bridge.addMetric(MetricName.parse("cow.how.now"), new Date()); bridge.addMetric(MetricName.parse("cow.how.then"), new GregorianCalendar(1990, 1, 1, 12, 34, 56).getTime()); // Set up some help text bridge.setInstanceDomainHelpText( "sheep", "sheep in the paddock", "List of all the sheep in the paddock. Includes 'baabaablack', 'insomniac' (who likes to jump fences), and 'limpy' the three-legged wonder sheep."); bridge.setMetricHelpText("sheep.jumps", "# of jumps done", "Number of times the sheep has jumped over its jumpitem"); // All the metrics are added; write the file bridge.start(); // Metrics are visible to the agent from this point on // Sold a bag! Better update the count bridge.updateMetric( MetricName.parse("sheep[baabaablack].bagsfull.count"), 2); // The fence broke! Need something new to jump over bridge.updateMetric(MetricName.parse("sheep[limpy].jumpitem"), "Honda Civic"); // Values will be reflected in the agent immediately -- I trust this is all clear; I think the API is very self-explanatory, hopefully you should see where we're going with this. If you have any questions, yell out. I'd very much like to know if anyone's interested in using or contributing to this library: I'm a huge fan of PCP and think that the easier it is to get data into it, the better. Making that easy to do from Java is, I think, a useful step. Let me know what you think. Kind regards, Paul [1] I know someone's going to ask 'why DXM?', so: "Dextromethorphan (DXM or DM) is ... one of the active ingredients used to prevent coughs in many over-the-counter cold and cough medicines ... dextromethorphan acts as a dissociative psychedelic drug ... [it is] an NMDA receptor antagonist, producing effects similar to ... phencyclidine (PCP)." "... preparations containing dextromethorphan are legal to purchase from most pharmacies worldwide ... [it] was specifically excluded from the Single Convention on Narcotic Drugs.". In other words, it's a lightweight, more accessible, easier-to-get-into 'bridge' to PCP. Ahem. :) From nscott@aconex.com Sun Jun 28 20:47:44 2009 X-Spam-Checker-Version: SpamAssassin 3.3.0-rupdated (updated) on oss.sgi.com X-Spam-Level: X-Spam-Status: No, score=-2.3 required=5.0 tests=AWL,BAYES_00 autolearn=ham version=3.3.0-rupdated Received: from cuda.sgi.com (cuda3.sgi.com [192.48.176.15]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id n5T1lhiF092402 for ; Sun, 28 Jun 2009 20:47:43 -0500 X-ASG-Debug-ID: 1246240091-5b4d010b0000-S8gJnT X-Barracuda-URL: http://cuda.sgi.com:80/cgi-bin/mark.cgi Received: from postoffice2.aconex.com (localhost [127.0.0.1]) by cuda.sgi.com (Spam Firewall) with ESMTP id 7F4DF130A92B for ; Sun, 28 Jun 2009 18:48:12 -0700 (PDT) Received: from postoffice2.aconex.com (mail.aconex.com [203.89.202.182]) by cuda.sgi.com with ESMTP id 2WCZGASRX0B1aXGV for ; Sun, 28 Jun 2009 18:48:12 -0700 (PDT) Received: from postoffice.aconex.com (localhost [127.0.0.1]) by postoffice2.aconex.com (Spam Firewall) with ESMTP id 2DD6C6D3B20 for ; Mon, 29 Jun 2009 11:48:09 +1000 (EST) Received: from postoffice.aconex.com (postoffice.yarra.acx [192.168.102.1]) by postoffice2.aconex.com with ESMTP id 7CZ002rGUzqpTZ29 for ; Mon, 29 Jun 2009 11:48:09 +1000 (EST) Received: from gatekeeper.aconex.com (gatekeeper.yarra.acx [192.168.102.10]) by postoffice.aconex.com (Postfix) with ESMTP id 7869FA502B5 for ; Mon, 29 Jun 2009 11:47:42 +1000 (EST) Received: from localhost (localhost.localdomain [127.0.0.1]) by gatekeeper.aconex.com (Postfix) with ESMTP id D503DC7A91; Mon, 29 Jun 2009 11:48:08 +1000 (EST) X-Virus-Scanned: ClamAV version 0.94.2, clamav-milter version 0.94.2 on oss.sgi.com X-Virus-Scanned: amavisd-new at gatekeeper.yarra.acx Received: from gatekeeper.aconex.com ([127.0.0.1]) by localhost (gatekeeper.aconex.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id sJeubdEGQdRC; Mon, 29 Jun 2009 11:48:04 +1000 (EST) Received: from mail-au.aconex.com (mail-au.aconex.com [192.168.102.12]) by gatekeeper.aconex.com (Postfix) with ESMTP id F4072C7ACB; Mon, 29 Jun 2009 11:48:03 +1000 (EST) Date: Mon, 29 Jun 2009 11:48:03 +1000 (EST) From: Nathan Scott To: Paul Cowan Cc: pcp@oss.sgi.com Message-ID: <220978451.7047031246240083960.JavaMail.root@mail-au.aconex.com> In-Reply-To: <1962203875.7045601246239564638.JavaMail.root@mail-au.aconex.com> X-ASG-Orig-Subj: Re: [pcp] New open-source Java library to collect PCP metrics Subject: Re: [pcp] New open-source Java library to collect PCP metrics MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Originating-IP: [203.89.192.141] X-Mailer: Zimbra 5.0.13_GA_2791.RHEL5_64 (ZimbraWebClient - [unknown] (Linux)/5.0.13_GA_2791.RHEL5_64) X-Barracuda-Connect: mail.aconex.com[203.89.202.182] X-Barracuda-Start-Time: 1246240093 X-Barracuda-Bayes: INNOCENT GLOBAL 0.1165 1.0000 -1.2944 X-Barracuda-Virus-Scanned: by cuda.sgi.com at sgi.com X-Barracuda-Spam-Score: -1.28 X-Barracuda-Spam-Status: No, SCORE=-1.28 using per-user scores of TAG_LEVEL=2.0 QUARANTINE_LEVEL=1000.0 KILL_LEVEL=2.1 tests=BSF_SC0_SA_TO_FROM_DOMAIN_MATCH X-Barracuda-Spam-Report: Code version 3.2, rules version 3.2.2.2048 Rule breakdown below pts rule name description ---- ---------------------- -------------------------------------------------- 0.01 BSF_SC0_SA_TO_FROM_DOMAIN_MATCH Sender Domain Matches Recipient Domain X-Virus-Status: Clean ----- "Paul Cowan" wrote: > PcpMmvWriter bridge = new PcpMmvWriter( > new File("/var/tmp/mmv/mmvtest")); You might want to hide the "/var/tmp/" part of that, as the pathname will need to be different on different platforms. PCP has a (C) API interface - pmGetConfig(3) - which uses /etc/pcp.conf to determine the PCP_TMP_DIR location (which can be changed at runtime and which differs for different platforms, esp. Win32). In fact, probably don't want to expose the path separator there at all either, as Windows blazes its own trail there too of course. The "mmv" part of the path needs to match with the first part of the metric name - if its "mmv", they'll all be mmv. prefixed (and if its "aconex" or "viewer", they'll all be similarly prefixed automatically by the PMDA)... so might want to abstract that part out too and allow it to be set in just one place? > // Automatically uses default int handler > bridge.addMetric( > MetricName.parse("sheep[baabaablack].bagsfull.count"), 3); A metric specification like sheep.bagfsull.count[baabaablack] would match up with the PCP tools like pmdumptext use, and may make things a bit more consistent between each side of the bridge? I'm assuming "baabaablack" is an instance name here, or did I miss something there? > ... > "... preparations containing dextromethorphan are legal to > purchase > from most pharmacies worldwide ... [it] was specifically excluded > from the Single Convention on Narcotic Drugs.". > > In other words, it's a lightweight, more accessible, > easier-to-get-into 'bridge' to PCP. Ahem. :) Heh ... thats funny on so many levels. cheers. -- Nathan From cowan@aconex.com Sun Jun 28 22:47:09 2009 X-Spam-Checker-Version: SpamAssassin 3.3.0-rupdated (updated) on oss.sgi.com X-Spam-Level: X-Spam-Status: No, score=-2.6 required=5.0 tests=BAYES_00 autolearn=ham version=3.3.0-rupdated Received: from cuda.sgi.com (cuda1.sgi.com [192.48.157.11]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id n5T3l8qk097517 for ; Sun, 28 Jun 2009 22:47:09 -0500 X-ASG-Debug-ID: 1246247625-65c901e20000-S8gJnT X-Barracuda-URL: http://cuda.sgi.com:80/cgi-bin/mark.cgi Received: from postoffice2.aconex.com (localhost [127.0.0.1]) by cuda.sgi.com (Spam Firewall) with ESMTP id 18B4D107FCE4 for ; Sun, 28 Jun 2009 20:53:45 -0700 (PDT) Received: from postoffice2.aconex.com (mail.aconex.com [203.89.202.182]) by cuda.sgi.com with ESMTP id 4BfWo0Y0wg1w6Rrz for ; Sun, 28 Jun 2009 20:53:45 -0700 (PDT) Received: from postoffice.aconex.com (localhost [127.0.0.1]) by postoffice2.aconex.com (Spam Firewall) with ESMTP id 86037B61B8 for ; Mon, 29 Jun 2009 13:47:36 +1000 (EST) Received: from postoffice.aconex.com (postoffice.yarra.acx [192.168.102.1]) by postoffice2.aconex.com with ESMTP id tjzwV4doYhGrMVtv for ; Mon, 29 Jun 2009 13:47:36 +1000 (EST) Received: from gatekeeper.aconex.com (gatekeeper.yarra.acx [192.168.102.10]) by postoffice.aconex.com (Postfix) with ESMTP id C9DECA502B5 for ; Mon, 29 Jun 2009 13:47:09 +1000 (EST) Received: from localhost (localhost.localdomain [127.0.0.1]) by gatekeeper.aconex.com (Postfix) with ESMTP id 5D5544FD84 for ; Mon, 29 Jun 2009 13:47:36 +1000 (EST) X-Virus-Scanned: ClamAV version 0.94.2, clamav-milter version 0.94.2 on oss.sgi.com X-Virus-Scanned: amavisd-new at gatekeeper.yarra.acx Received: from gatekeeper.aconex.com ([127.0.0.1]) by localhost (gatekeeper.aconex.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id RJEAEDH84tem for ; Mon, 29 Jun 2009 13:47:28 +1000 (EST) Received: from [192.168.5.132] (melho0.aconex.com [203.89.192.141]) by gatekeeper.aconex.com (Postfix) with ESMTP id 761124FD82 for ; Mon, 29 Jun 2009 13:47:28 +1000 (EST) Message-ID: <4A48397F.2090908@aconex.com> Date: Mon, 29 Jun 2009 13:48:15 +1000 From: Paul Cowan Organization: Aconex User-Agent: Thunderbird 2.0.0.21 (X11/20090409) MIME-Version: 1.0 To: pcp@oss.sgi.com X-ASG-Orig-Subj: Re: [pcp] New open-source Java library to collect PCP metrics Subject: Re: [pcp] New open-source Java library to collect PCP metrics References: <220978451.7047031246240083960.JavaMail.root@mail-au.aconex.com> In-Reply-To: <220978451.7047031246240083960.JavaMail.root@mail-au.aconex.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Barracuda-Connect: mail.aconex.com[203.89.202.182] X-Barracuda-Start-Time: 1246247627 X-Barracuda-Bayes: INNOCENT GLOBAL 0.0000 1.0000 -2.0209 X-Barracuda-Virus-Scanned: by cuda.sgi.com at sgi.com X-Barracuda-Spam-Score: -2.02 X-Barracuda-Spam-Status: No, SCORE=-2.02 using per-user scores of TAG_LEVEL=2.0 QUARANTINE_LEVEL=1000.0 KILL_LEVEL=2.1 tests= X-Barracuda-Spam-Report: Code version 3.2, rules version 3.2.2.2057 Rule breakdown below pts rule name description ---- ---------------------- -------------------------------------------------- X-Virus-Status: Clean Hi Nathan, Thanks for the feedback. > You might want to hide the "/var/tmp/" part of that, as the > pathname will need to be different on different platforms. > PCP has a (C) API interface - pmGetConfig(3) - which uses > /etc/pcp.conf to determine the PCP_TMP_DIR location (which > can be changed at runtime and which differs for different > platforms, esp. Win32). > > In fact, probably don't want to expose the path separator > there at all either, as Windows blazes its own trail there > too of course. Yeah, this was really just an example. You just inject any file path you like; I think I'll leave the 'find the right place to put it' logic outside of this code: e.g. in our case, this would be just be done via Spring configuration, reading something from the deployment-specific properties file which varies between win32 and linux boxes anyway. > The "mmv" part of the path needs to match with the first > part of the metric name - if its "mmv", they'll all be mmv. > prefixed (and if its "aconex" or "viewer", they'll all be > similarly prefixed automatically by the PMDA)... so might > want to abstract that part out too and allow it to be set > in just one place? OK, didn't realise this was the case. Might change this from being new PcpMmvWriter(File output) to new PcpMmvWriter(File pcpTempDir, String agentName, String fileName) and then build the full path internally from that to make the API more clear > >> // Automatically uses default int handler >> bridge.addMetric( >> MetricName.parse("sheep[baabaablack].bagsfull.count"), 3); > > A metric specification like sheep.bagfsull.count[baabaablack] > would match up with the PCP tools like pmdumptext use, and may > make things a bit more consistent between each side of the > bridge? I'm assuming "baabaablack" is an instance name here, > or did I miss something there? Yes, it's an instance name. The reason for the (slightly strange) handling is that I'm trying to map a very simple log4j-like descriptor string to instance domains, etc. For example, using the C API you can tell the agent easily that sheep.bagsfull.count[baabaablack] and sheep.bagsfull.haveany[baabaablack] are two metrics with the same instance (or that sheep.bagsfull.material[limpy] is another instance in the same domain), because you pass the domain/instance across to the API. This is all purely String-based, so I need a way to know that they're the same domain just from parsing the String. So the Java side kind of 'cheats'... it's assuming that sheep[baabaablack].bagsfull.count and sheep[limpy].bagsfull.haveany refer to the same indom because the instance part is at the same 'level' of the tree (i.e. 'sheep'). Likewise, it would grok that sheep.bagsfull[wool].count and sheep.bagsfull[poo].count are within the same indom but sheep.colours[black].noise is separate, because 'sheep.bagsfull' and 'sheep.colours' aren't the same prefix. It's a bit hacky but I think, in reality, this reflects the way instances are probably most commonly used (metrics sharing the same indom are probably logically 'grouped' under a certain branch of the namespace -- in our case, think aconex.controllers). I will probably expose an 'advanced' (non-string-based) API, where people can interact more like the C library ('request' a new indom, add instances to it, etc) but that will come later I think. I'm open to an alternative notation for the string-based one that keeps a more PCP-standard notation but indicates what part of the 'tree' it lives in: sheep*.bagsfull.count[limpy] or something equally horrid. Really not sure though, can't think of a good alternative off the top of my head. > Heh ... thats funny on so many levels. I aim to please. Cheers, Paul From nscott@aconex.com Mon Jun 29 21:27:54 2009 X-Spam-Checker-Version: SpamAssassin 3.3.0-rupdated (updated) on oss.sgi.com X-Spam-Level: X-Spam-Status: No, score=-2.3 required=5.0 tests=AWL,BAYES_00 autolearn=ham version=3.3.0-rupdated Received: from cuda.sgi.com (cuda3.sgi.com [192.48.176.15]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id n5U2RrwN172559 for ; Mon, 29 Jun 2009 21:27:54 -0500 X-ASG-Debug-ID: 1246328902-179200950000-S8gJnT X-Barracuda-URL: http://cuda.sgi.com:80/cgi-bin/mark.cgi Received: from postoffice2.aconex.com (localhost [127.0.0.1]) by cuda.sgi.com (Spam Firewall) with ESMTP id B930B131728C for ; Mon, 29 Jun 2009 19:28:23 -0700 (PDT) Received: from postoffice2.aconex.com (mail.aconex.com [203.89.202.182]) by cuda.sgi.com with ESMTP id jng7OXtsHFX1B699 for ; Mon, 29 Jun 2009 19:28:23 -0700 (PDT) Received: from postoffice.aconex.com (localhost [127.0.0.1]) by postoffice2.aconex.com (Spam Firewall) with ESMTP id 7BCB4C0C20 for ; Tue, 30 Jun 2009 12:28:21 +1000 (EST) Received: from postoffice.aconex.com (postoffice.yarra.acx [192.168.102.1]) by postoffice2.aconex.com with ESMTP id 0ZbyMA9O1RH985d2 for ; Tue, 30 Jun 2009 12:28:21 +1000 (EST) Received: from gatekeeper.aconex.com (gatekeeper.yarra.acx [192.168.102.10]) by postoffice.aconex.com (Postfix) with ESMTP id 347B9A5012D for ; Tue, 30 Jun 2009 12:27:54 +1000 (EST) Received: from localhost (localhost.localdomain [127.0.0.1]) by gatekeeper.aconex.com (Postfix) with ESMTP id 406DF4FD85 for ; Tue, 30 Jun 2009 12:28:21 +1000 (EST) X-Virus-Scanned: ClamAV version 0.94.2, clamav-milter version 0.94.2 on oss.sgi.com X-Virus-Scanned: amavisd-new at gatekeeper.yarra.acx Received: from gatekeeper.aconex.com ([127.0.0.1]) by localhost (gatekeeper.aconex.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id VDryxrCRCD5q for ; Tue, 30 Jun 2009 12:28:17 +1000 (EST) Received: from mail-au.aconex.com (mail-au.aconex.com [192.168.102.12]) by gatekeeper.aconex.com (Postfix) with ESMTP id 84B384FD82 for ; Tue, 30 Jun 2009 12:28:17 +1000 (EST) Date: Tue, 30 Jun 2009 12:28:17 +1000 (EST) From: Nathan Scott To: pcp@oss.sgi.com Message-ID: <1400307476.7132611246328897487.JavaMail.root@mail-au.aconex.com> X-ASG-Orig-Subj: pcp updates Subject: pcp updates MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Originating-IP: [203.89.192.141] X-Mailer: Zimbra 5.0.13_GA_2791.RHEL5_64 (ZimbraWebClient - [unknown] (Linux)/5.0.13_GA_2791.RHEL5_64) X-Barracuda-Connect: mail.aconex.com[203.89.202.182] X-Barracuda-Start-Time: 1246328904 X-Barracuda-Bayes: INNOCENT GLOBAL 0.0000 1.0000 -2.0210 X-Barracuda-Virus-Scanned: by cuda.sgi.com at sgi.com X-Barracuda-Spam-Score: -2.02 X-Barracuda-Spam-Status: No, SCORE=-2.02 using per-user scores of TAG_LEVEL=2.0 QUARANTINE_LEVEL=1000.0 KILL_LEVEL=2.1 tests= X-Barracuda-Spam-Report: Code version 3.2, rules version 3.2.2.2138 Rule breakdown below pts rule name description ---- ---------------------- -------------------------------------------------- X-Virus-Status: Clean Changes committed to git://oss.sgi.com/nathans/pcp.git src/include/platform_defs.h.in | 4 ++-- src/libpcp/src/win32.c | 5 +++-- src/pcp/pcp.sh | 2 +- src/pmcd/src/config.c | 8 ++++++-- src/win32ctl/GNUmakefile | 3 +++ src/win32ctl/mkaf.bat | 10 ++++++++++ src/win32ctl/pcp.bat | 10 ++++++++++ src/win32ctl/pmafm.bat | 10 ++++++++++ 8 files changed, 45 insertions(+), 7 deletions(-) commit 3d1ddb702119b730d2d021caf64ea803f75f1514 Author: Nathan Scott Date: Tue Jun 30 12:05:54 2009 +1000 Filter out Windows end of line markers in pcp(1) shell script. This fixes the botched output from this script in the pmie and pmlogger sections. The root of the problem is the join command which doesn't know about Windows line endings, and manages to insert a stray \r character in between its output columns. commit 5691ea63b94e568a4113b5e83faf83a9f003820c Author: Nathan Scott Date: Tue Jun 30 11:25:56 2009 +1000 Add .bat file wrappers for user-visible PCP shell scripts. This, in particular, means sysadmins used to typing "pcp" will get the information they are after with no change on Windows compared to other platforms. commit 46999c335001e6c327e86603e5b0939a12065d66 Author: Nathan Scott Date: Tue Jun 30 10:15:07 2009 +1000 Ensure path to binaries prepended to Win32 pipe/socket PMDAs. Gets closer to working daemon PMDAs on Windows - something is still NQR though (failure on PMDA end writing to pmcd). dbpmda works fine though, which is an interesting data point. commit 0a9cc02b93452fe5a2da35cc3421eebec8d655c4 Author: Nathan Scott Date: Mon Jun 29 08:56:30 2009 +1000 Ensure Win32 process creation routine doesn't segv. There was a logic path where it would attempt to dereference a NULL pointer. commit cd841e19138d54ba9e46ab0e5b950410b8e866fd Author: Nathan Scott Date: Mon Jun 29 08:53:54 2009 +1000 Fix a typo in a comment in the platformdefs file. From nscott@aconex.com Tue Jun 30 21:41:32 2009 X-Spam-Checker-Version: SpamAssassin 3.3.0-rupdated (updated) on oss.sgi.com X-Spam-Level: X-Spam-Status: No, score=-2.2 required=5.0 tests=AWL,BAYES_00,J_CHICKENPOX_73 autolearn=no version=3.3.0-rupdated Received: from cuda.sgi.com (cuda1.sgi.com [192.48.157.11]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id n612fV8b246108 for ; Tue, 30 Jun 2009 21:41:32 -0500 X-ASG-Debug-ID: 1246416499-042f02900000-S8gJnT X-Barracuda-URL: http://cuda.sgi.com:80/cgi-bin/mark.cgi Received: from postoffice2.aconex.com (localhost [127.0.0.1]) by cuda.sgi.com (Spam Firewall) with ESMTP id 601BC129422E for ; Tue, 30 Jun 2009 19:48:19 -0700 (PDT) Received: from postoffice2.aconex.com (mail.aconex.com [203.89.202.182]) by cuda.sgi.com with ESMTP id H3yQIOAh9ofOOfdX for ; Tue, 30 Jun 2009 19:48:19 -0700 (PDT) Received: from postoffice.aconex.com (localhost [127.0.0.1]) by postoffice2.aconex.com (Spam Firewall) with ESMTP id 94A0BD34A2 for ; Wed, 1 Jul 2009 12:41:59 +1000 (EST) Received: from postoffice.aconex.com (postoffice.yarra.acx [192.168.102.1]) by postoffice2.aconex.com with ESMTP id MdwKQzCDmCnx8Qxo for ; Wed, 01 Jul 2009 12:41:59 +1000 (EST) Received: from gatekeeper.aconex.com (gatekeeper.yarra.acx [192.168.102.10]) by postoffice.aconex.com (Postfix) with ESMTP id F2295A502AE for ; Wed, 1 Jul 2009 12:41:31 +1000 (EST) Received: from localhost (localhost.localdomain [127.0.0.1]) by gatekeeper.aconex.com (Postfix) with ESMTP id 867244FD84 for ; Wed, 1 Jul 2009 12:41:59 +1000 (EST) X-Virus-Scanned: ClamAV version 0.94.2, clamav-milter version 0.94.2 on oss.sgi.com X-Virus-Scanned: amavisd-new at gatekeeper.yarra.acx Received: from gatekeeper.aconex.com ([127.0.0.1]) by localhost (gatekeeper.aconex.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 1kIkCYbmPW2M for ; Wed, 1 Jul 2009 12:41:56 +1000 (EST) Received: from mail-au.aconex.com (mail-au.aconex.com [192.168.102.12]) by gatekeeper.aconex.com (Postfix) with ESMTP id 0714B4FD85 for ; Wed, 1 Jul 2009 12:41:56 +1000 (EST) Date: Wed, 1 Jul 2009 12:41:55 +1000 (EST) From: Nathan Scott To: pcp@oss.sgi.com Message-ID: <1694967199.7219581246416115977.JavaMail.root@mail-au.aconex.com> X-ASG-Orig-Subj: pcp updates (2.8.9) Subject: pcp updates (2.8.9) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Originating-IP: [203.89.192.141] X-Mailer: Zimbra 5.0.13_GA_2791.RHEL5_64 (ZimbraWebClient - [unknown] (Linux)/5.0.13_GA_2791.RHEL5_64) X-Barracuda-Connect: mail.aconex.com[203.89.202.182] X-Barracuda-Start-Time: 1246416501 X-Barracuda-Bayes: INNOCENT GLOBAL 0.0000 1.0000 -2.0210 X-Barracuda-Virus-Scanned: by cuda.sgi.com at sgi.com X-Barracuda-Spam-Score: -1.52 X-Barracuda-Spam-Status: No, SCORE=-1.52 using per-user scores of TAG_LEVEL=2.0 QUARANTINE_LEVEL=1000.0 KILL_LEVEL=2.1 tests=BSF_RULE7568M X-Barracuda-Spam-Report: Code version 3.2, rules version 3.2.2.2226 Rule breakdown below pts rule name description ---- ---------------------- -------------------------------------------------- 0.50 BSF_RULE7568M Custom Rule 7568M X-Virus-Status: Clean Changes committed to git://oss.sgi.com/pcp/pcp.git CHANGELOG | 12 ++++++++++++ VERSION.pcp | 2 +- configure.in | 31 ++++++------------------------- debian/changelog | 7 +++++++ install-sh | 4 ++-- man/man1/pcpintro.1 | 2 +- man/man1/pmie.1 | 9 ++++++++- src/include/builddefs.in | 5 ----- src/include/buildrules | 7 ++----- src/include/platform_defs.h.in | 14 +++++--------- src/libpcp/src/GNUmakefile | 11 +++-------- src/libpcp/src/util.c | 4 ++-- src/libpcp_gui/src/GNUmakefile | 2 +- src/libpcp_gui/src/record.c | 2 +- src/libpcp_mmv/src/GNUmakefile | 2 +- src/libpcp_pmcd/src/GNUmakefile | 4 ++-- src/libpcp_pmda/src/GNUmakefile | 2 +- src/libpcp_pmda/src/open.c | 6 +++--- src/libpcp_trace/src/GNUmakefile | 2 +- src/pmcd/pmdaproc.sh | 8 +++++--- src/pmcd/rc-proc.sh | 8 ++++---- src/pmcd/rc_pcp | 2 +- src/pmcd/src/config.c | 4 ++-- src/pmdas/linux/proc_pid.h | 2 -- src/pmdas/linux/proc_slabinfo.c | 6 ++---- src/pmdas/linux/proc_slabinfo.h | 2 ++ src/pmdas/mounts/GNUmakefile | 2 +- src/pmdas/pmcd/src/GNUmakefile | 13 ++----------- src/pmdas/pmcd/src/pmcd.c | 6 +++--- src/pmdas/process/GNUmakefile | 2 +- src/pmdas/sample/Install | 1 - src/pmdas/shping/shping.c | 2 +- src/pmdas/summary/pmda.c | 2 +- src/pmdas/weblog/pmda.c | 4 ++-- src/pmdas/zimbra/pmdazimbra.pl | 5 +++-- src/pmie/pmie2col | 2 +- src/pmie/pmie_check.sh | 4 ++-- src/pmie/src/dstruct.c | 27 ++++++++++++++------------- src/pmie/src/dstruct.h | 2 +- src/pmie/src/pmie.c | 9 +++++++-- src/pmproxy/rc_pmproxy | 2 +- src/win32ctl/GNUmakefile | 2 +- src/win32ctl/pmsignal.bat | 10 ++++++++++ 43 files changed, 126 insertions(+), 129 deletions(-) commit 0e7d706b23eb49a32b670dd414d2a1ad75bc4dd2 Author: Nathan Scott Date: Wed Jul 1 12:31:41 2009 +1000 Bump version number to 2.8.9. commit 4beade780d7a3f6078ddeab74844e557cd9a21c9 Author: Nathan Scott Date: Wed Jul 1 11:25:45 2009 +1000 Make error messages in libpcp_pmda open call unique. commit 9721592547d8f7eaf09e04e0e37da5f7cc41f73a Author: Nathan Scott Date: Wed Jul 1 11:17:14 2009 +1000 Rework the use of pipe2 for compatibility with older glibc versions. commit c5725ee98c2da1f7ddf4fd7da3fd0cf75e072b90 Author: Nathan Scott Date: Wed Jul 1 11:07:26 2009 +1000 Remove unnecessary getpagesize() call in Linux slabinfo metrics. commit 0ee66d954d263a1dbbab4e86e583b1ed0bc761e1 Author: Nathan Scott Date: Wed Jul 1 10:23:51 2009 +1000 Fix bug in pmdazimbra, where probe strings weren't handled correctly. commit 2a467863f7f145ec414dd361d2be049f116e8c4c Author: Nathan Scott Date: Wed Jul 1 09:51:53 2009 +1000 Revert change to install Windows configs elsewhere, dirname conflicts. commit bd6bd74e85b621ce0d6853aa1494908404c04dca Author: Nathan Scott Date: Wed Jul 1 08:42:17 2009 +1000 Remove PCP_DIR suffix from DSOs as well when writing pmcd.conf. This ensures we are path relative in pmcd.conf which will help when making the PCP_DIR movable at install time, etc. pmcd is expecting this already so Install script needs to honour this. commit f9f93c4c7986eb22a941c7674da2c3ac43486ca0 Author: Nathan Scott Date: Wed Jul 1 08:40:31 2009 +1000 Expunge remaining references to Interix and Cygwin. commit b90dcc32d481ee747b198a4ab3331aad6136c68e Author: Nathan Scott Date: Wed Jul 1 07:50:49 2009 +1000 Put critical config files below /etc on Win32 as well. commit c6aa464e55d6c6eb3dbd47dd092d83cc49af855d Author: Nathan Scott Date: Tue Jun 30 16:03:54 2009 +1000 Add windows batch wrapper for pmsignal also. commit bb0c76ae7c55ebadb088ca552c2e7e548b7ba950 Author: Nathan Scott Date: Tue Jun 30 15:15:50 2009 +1000 Add option for pmie without translated default hostname. The hostname that is stored in the stats file can now be forced the same as that on the command line - this allows the admin finer control on the pmie_check hostname match process, for determining if a pmie is running for a host. From nscott@aconex.com Tue Jun 30 23:47:05 2009 X-Spam-Checker-Version: SpamAssassin 3.3.0-rupdated (updated) on oss.sgi.com X-Spam-Level: X-Spam-Status: No, score=-2.2 required=5.0 tests=AWL,BAYES_00,J_CHICKENPOX_73 autolearn=no version=3.3.0-rupdated Received: from cuda.sgi.com (cuda2.sgi.com [192.48.176.25]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id n614l537249973 for ; Tue, 30 Jun 2009 23:47:05 -0500 X-ASG-Debug-ID: 1246423655-7dc001670000-S8gJnT X-Barracuda-URL: http://cuda.sgi.com:80/cgi-bin/mark.cgi Received: from postoffice2.aconex.com (localhost [127.0.0.1]) by cuda.sgi.com (Spam Firewall) with ESMTP id 6DDD3335A37 for ; Tue, 30 Jun 2009 21:47:36 -0700 (PDT) Received: from postoffice2.aconex.com (mail.aconex.com [203.89.202.182]) by cuda.sgi.com with ESMTP id JIgDtKHEgreGMcFw for ; Tue, 30 Jun 2009 21:47:36 -0700 (PDT) Received: from postoffice.aconex.com (localhost [127.0.0.1]) by postoffice2.aconex.com (Spam Firewall) with ESMTP id 374315F79B8 for ; Wed, 1 Jul 2009 14:47:25 +1000 (EST) Received: from postoffice.aconex.com (postoffice.yarra.acx [192.168.102.1]) by postoffice2.aconex.com with ESMTP id CpCKpYGj9kI4DzQy for ; Wed, 01 Jul 2009 14:47:25 +1000 (EST) Received: from gatekeeper.aconex.com (gatekeeper.yarra.acx [192.168.102.10]) by postoffice.aconex.com (Postfix) with ESMTP id 7AA3FA502AE for ; Wed, 1 Jul 2009 14:46:57 +1000 (EST) Received: from localhost (localhost.localdomain [127.0.0.1]) by gatekeeper.aconex.com (Postfix) with ESMTP id 16C1E4FD84 for ; Wed, 1 Jul 2009 14:47:25 +1000 (EST) X-Virus-Scanned: ClamAV version 0.94.2, clamav-milter version 0.94.2 on oss.sgi.com X-Virus-Scanned: amavisd-new at gatekeeper.yarra.acx Received: from gatekeeper.aconex.com ([127.0.0.1]) by localhost (gatekeeper.aconex.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Zx7yhjOwfXx8 for ; Wed, 1 Jul 2009 14:47:21 +1000 (EST) Received: from mail-au.aconex.com (mail-au.aconex.com [192.168.102.12]) by gatekeeper.aconex.com (Postfix) with ESMTP id 34A744FD8A for ; Wed, 1 Jul 2009 14:47:21 +1000 (EST) Date: Wed, 1 Jul 2009 14:47:21 +1000 (EST) From: Nathan Scott To: pcp Message-ID: <1390805870.7228841246423641181.JavaMail.root@mail-au.aconex.com> In-Reply-To: <1213945401.7228781246423611632.JavaMail.root@mail-au.aconex.com> X-ASG-Orig-Subj: pcp updates (2.8.10) Subject: pcp updates (2.8.10) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Originating-IP: [203.89.192.141] X-Mailer: Zimbra 5.0.13_GA_2791.RHEL5_64 (ZimbraWebClient - [unknown] (Linux)/5.0.13_GA_2791.RHEL5_64) X-Barracuda-Connect: mail.aconex.com[203.89.202.182] X-Barracuda-Start-Time: 1246423657 X-Barracuda-Bayes: INNOCENT GLOBAL 0.0000 1.0000 -2.0210 X-Barracuda-Virus-Scanned: by cuda.sgi.com at sgi.com X-Barracuda-Spam-Score: -2.02 X-Barracuda-Spam-Status: No, SCORE=-2.02 using per-user scores of TAG_LEVEL=2.0 QUARANTINE_LEVEL=1000.0 KILL_LEVEL=2.1 tests= X-Barracuda-Spam-Report: Code version 3.2, rules version 3.2.2.2232 Rule breakdown below pts rule name description ---- ---------------------- -------------------------------------------------- X-Virus-Status: Clean Changes committed to git://oss.sgi.com/pcp/pcp.git CHANGELOG | 3 +++ VERSION.pcp | 2 +- build/rpm/GNUmakefile | 7 +++++-- debian/changelog | 6 ++++++ src/cpan/MMV/GNUmakefile | 1 + src/cpan/MMV/Makefile.PL | 4 ++-- src/cpan/PMDA/GNUmakefile | 1 + src/cpan/PMDA/Makefile.PL | 4 ++-- 8 files changed, 21 insertions(+), 7 deletions(-) commit 18f3a800d99943e4ab9c321794162aebade85a6f Author: Nathan Scott Date: Wed Jul 1 14:36:09 2009 +1000 Bump version for Perl module packaging fixes specific to RPM. commit a8bf08795749e6d0aaea0008b57bd7033bbacdd5 Author: Nathan Scott Date: Wed Jul 1 14:27:31 2009 +1000 Resolve path issues when building Perl RPM packages. commit c8fdb6fb410b9e7a4584342e2a9076675ad80a54 Author: Nathan Scott Date: Wed Jul 1 13:47:50 2009 +1000 Fix an rpm build issue thanks to a makefile path typo. commit 7fe136cd8d50dd77c06f3b78ed2bb299434710f5 Author: Nathan Scott Date: Wed Jul 1 13:41:50 2009 +1000 Missing mmv perl spec entry in LSRCFILES.