How are patches like this and other changes to PCP tested and verified to be
correct? I think enterprise class system utilities like PCP require a much
higher level of qualify assurance than the typical open source project. What
verification procedures does SGI go through before making a source tarball
release? I think test suites should be made available to developers to use
when making enhancements and bug fixes so changes can be verified. Tests
could also be submitted with any enhancements before being accepted by the
PCP project. Test suites can also be useful in verifying an installation of
PCP.
Todd C. Davis
These are my opinions and absolutely not official opinions of Intel Corp.
-----Original Message-----
From: Mike Mason [mailto:mmlnx@xxxxxxxxxx]
Sent: Tuesday, September 24, 2002 5:33 PM
To: Mark Goodwin; pcp@xxxxxxxxxxx
Subject: PCP patch for top/libgtop conversion
Mark,
Here's my long awaited patch. As you know, most of the changes were
made to support conversion of top and libgtop to use PCP. I also made a
few small bug fixes, some in comments. I added some "this code provided
by ..." comments which you can modify or remove if you'd like. I'm not
sure how much of this type of comment you want to include.
The patch should be applied to the 2.2.2 source currently available from
the SGI PCP site.
The changes to top and libgtop to use PCP are essentially done, but I
don't yet have a way to release them. We go through a formal process at
IBM to get permission to contribute to outside projects. I don't have
permission to contribute to procps or libgtop. I'll work on that.
Please let me know of any changes you want me to make.
Regards,
Mike
Here's what was added and/or modified:
(new) Total idle time since boot
kernel.all.idletime
(new) current # of user sessions
kernel.all.nusers
(new) Last pid used
kernel.all.lastpid
(new) Filesystem blocksize from statfs()
filesys.blocksize
(new) Filesystem free space available to non-superusers from statfs()
filesys.avail
(modified) Per process command name
proc.psinfo.cmd
(new) Per process command line from /proc/<pid>/cmdline
proc.psinfo.psargs
(new) Per process CPU number from /proc/<pid>/stat
proc.psinfo.processor
(new) Per process wait channel symbol name
proc.psinfo.wchan_s
(new) Per process signal info from /proc/<pid>/status
proc.psinfo.signal_s
proc.psinfo.blocked_s
proc.psinfo.sigignore_s
proc.psinfo.sigcatch_s
(new) Per process map info from /proc/<pid>/maps
proc.memory.maps
(new) Per process memory info from /proc/<pid>/status
proc.memory.vmsize
proc.memory.vmlock
proc.memory.vmrss
proc.memory.vmdata
proc.memory.vmstack
proc.memory.vmexe
proc.memory.vmlib
(new) Per process user and group ids from /proc/<pid>/status
proc.id.uid
proc.id.euid
proc.id.suid
proc.id.fsuid
proc.id.gid
proc.id.egid
proc.id.sgid
proc.id.fsgid
(new) Per process user and group ids converted to names
proc.id.uid_nm
proc.id.euid_nm
proc.id.suid_nm
proc.id.fsuid_nm
proc.id.gid_nm
proc.id.egid_nm
proc.id.sgid_nm
proc.id.fsgid_nm
(new) Semaphore limits from semctl()(needed by libgtop)
ipc.sem.max_semmap
ipc.sem.max_semid
ipc.sem.max_sem
ipc.sem.num_undo
ipc.sem.max_perid
ipc.sem.max_ops
ipc.sem.max_undoent
ipc.sem.sz_semundo
ipc.sem.max_semval
ipc.sem.max_exit
(new) Message queue limits from msgctl()(needed by libgtop)
ipc.msg.sz_pool
ipc.msg.mapent
ipc.msg.max_msgsz
ipc.msg.max_defmsgq
ipc.msg.max_msgqid
ipc.msg.max_msgseg
ipc.msg.num_smsghdr
ipc.msg.max_seg
(new) Shared memory limits from shmctl() (needed by libgtop)
ipc.shm.max_segsz
ipc.shm.min_segsz
ipc.shm.max_seg
ipc.shm.max_segproc
ipc.shm.max_shmsys
--
Mike Mason
IBM Linux Technology Center, RAS Group
Beaverton, OR, USA
mmlnx@xxxxxxxxxx
(503) 578-4123
|