--- a/patches/libgtop-01-solaris.diff Wed Feb 25 16:57:15 2009 +0000
+++ b/patches/libgtop-01-solaris.diff Wed Feb 25 18:21:25 2009 +0000
@@ -1,7 +1,7 @@
-diff -Nrup libgtop-2.23.90.orig/include/glibtop/procstate.h libgtop-2.23.90.mod/include/glibtop/procstate.h
---- libgtop-2.23.90.orig/include/glibtop/procstate.h 2008-05-24 06:13:20.000000000 +0800
-+++ libgtop-2.23.90.mod/include/glibtop/procstate.h 2008-08-20 10:26:31.847117000 +0800
-@@ -69,6 +69,13 @@ struct _glibtop_proc_state
+diff -urN libgtop-2.25.91/include/glibtop/procstate.h ../SUNWlibgtop-2.25.91.hacked/libgtop-2.25.91/include/glibtop/procstate.h
+--- libgtop-2.25.91/include/glibtop/procstate.h 2008-05-23 22:13:20.000000000 +0000
++++ ../SUNWlibgtop-2.25.91.hacked/libgtop-2.25.91/include/glibtop/procstate.h 2009-02-25 17:16:38.052247000 +0000
+@@ -69,6 +69,13 @@
int has_cpu;
int processor;
int last_processor;
@@ -15,9 +15,9 @@
};
void glibtop_get_proc_state(glibtop_proc_state *buf, pid_t pid);
-diff -Nrup libgtop-2.23.90.orig/procmap.c libgtop-2.23.90.mod/procmap.c
---- libgtop-2.23.90.orig/procmap.c 1970-01-01 08:00:00.000000000 +0800
-+++ libgtop-2.23.90.mod/procmap.c 2008-08-20 19:05:25.738052000 +0800
+diff -urN libgtop-2.25.91/procmap.c ../SUNWlibgtop-2.25.91.hacked/libgtop-2.25.91/procmap.c
+--- libgtop-2.25.91/procmap.c 1970-01-01 00:00:00.000000000 +0000
++++ ../SUNWlibgtop-2.25.91.hacked/libgtop-2.25.91/procmap.c 2009-02-25 17:16:38.053079000 +0000
@@ -0,0 +1,252 @@
+/* Copyright (C) 1998-99 Martin Baulig
+ This file is part of LibGTop 1.0.
@@ -271,10 +271,29 @@
+ s_close(fd);
+ return entry;
+}
-diff -Nrup libgtop-2.23.90.orig/sysdeps/common/mountlist.c libgtop-2.23.90.mod/sysdeps/common/mountlist.c
---- libgtop-2.23.90.orig/sysdeps/common/mountlist.c 2008-05-24 06:13:22.000000000 +0800
-+++ libgtop-2.23.90.mod/sysdeps/common/mountlist.c 2008-08-20 11:03:42.561589000 +0800
-@@ -591,6 +591,17 @@ glibtop_get_mountlist_s (glibtop *server
+diff -urN libgtop-2.25.91/sysdeps/common/fsusage.c ../SUNWlibgtop-2.25.91.hacked/libgtop-2.25.91/sysdeps/common/fsusage.c
+--- libgtop-2.25.91/sysdeps/common/fsusage.c 2008-05-23 22:13:22.000000000 +0000
++++ ../SUNWlibgtop-2.25.91.hacked/libgtop-2.25.91/sysdeps/common/fsusage.c 2009-02-25 17:25:57.183257000 +0000
+@@ -149,6 +149,15 @@
+ #define _glibtop_get_fsusage_read_write(S, B, P) \
+ _glibtop_freebsd_get_fsusage_read_write(S, B, P)
+
++#elif (defined(sun) || defined(__sun))
++G_GNUC_INTERNAL void
++_glibtop_sun_get_fsusage_read_write(glibtop *server,
++ glibtop_fsusage *buf,
++ const char *path);
++
++#define _glibtop_get_fsusage_read_write(S, B, P) \
++ _glibtop_sun_get_fsusage_read_write(S, B, P)
++
+ #else /* default fallback */
+ #warning glibtop_get_fsusage .read .write are not implemented.
+ static inline void
+diff -urN libgtop-2.25.91/sysdeps/common/mountlist.c ../SUNWlibgtop-2.25.91.hacked/libgtop-2.25.91/sysdeps/common/mountlist.c
+--- libgtop-2.25.91/sysdeps/common/mountlist.c 2008-05-23 22:13:22.000000000 +0000
++++ ../SUNWlibgtop-2.25.91.hacked/libgtop-2.25.91/sysdeps/common/mountlist.c 2009-02-25 17:16:38.053543000 +0000
+@@ -591,6 +591,17 @@
for (cur = &entries[0]; cur != NULL; cur = next) {
@@ -292,21 +311,23 @@
if(all_fs || !ignore_mount_entry(cur)) {
/* add a new glibtop_mountentry */
glibtop_mountentry e;
-diff -Nrup libgtop-2.23.90.orig/sysdeps/solaris/Makefile.am libgtop-2.23.90.mod/sysdeps/solaris/Makefile.am
---- libgtop-2.23.90.orig/sysdeps/solaris/Makefile.am 2008-05-24 06:13:24.000000000 +0800
-+++ libgtop-2.23.90.mod/sysdeps/solaris/Makefile.am 2008-08-20 21:07:30.398511000 +0800
-@@ -9,6 +9,7 @@ libgtop_sysdeps_2_0_la_SOURCES = open.c
+diff -urN libgtop-2.25.91/sysdeps/solaris/Makefile.am ../SUNWlibgtop-2.25.91.hacked/libgtop-2.25.91/sysdeps/solaris/Makefile.am
+--- libgtop-2.25.91/sysdeps/solaris/Makefile.am 2008-05-23 22:13:24.000000000 +0000
++++ ../SUNWlibgtop-2.25.91.hacked/libgtop-2.25.91/sysdeps/solaris/Makefile.am 2009-02-25 17:27:23.462319000 +0000
+@@ -8,7 +8,8 @@
+ proclist.c procstate.c procuid.c \
proctime.c procmem.c procsignal.c \
prockernel.c procsegment.c procargs.c \
- procopenfiles.c \
-+ sysinfo.c procwd.c glibtop_private.c procaffinity.c \
+- procopenfiles.c \
++ procopenfiles.c sysinfo.c fsusage.c procwd.c \
++ glibtop_private.c procaffinity.c \
procmap.c netload.c ppp.c procdata.c netlist.c
libgtop_sysdeps_2_0_la_LDFLAGS = $(LT_VERSION_INFO)
-diff -Nrup libgtop-2.23.90.orig/sysdeps/solaris/cpu.c libgtop-2.23.90.mod/sysdeps/solaris/cpu.c
---- libgtop-2.23.90.orig/sysdeps/solaris/cpu.c 2008-05-24 06:13:24.000000000 +0800
-+++ libgtop-2.23.90.mod/sysdeps/solaris/cpu.c 2008-08-20 11:06:54.437929000 +0800
-@@ -34,6 +34,7 @@ static const unsigned long _glibtop_sysd
+diff -urN libgtop-2.25.91/sysdeps/solaris/cpu.c ../SUNWlibgtop-2.25.91.hacked/libgtop-2.25.91/sysdeps/solaris/cpu.c
+--- libgtop-2.25.91/sysdeps/solaris/cpu.c 2008-05-23 22:13:24.000000000 +0000
++++ ../SUNWlibgtop-2.25.91.hacked/libgtop-2.25.91/sysdeps/solaris/cpu.c 2009-02-25 17:16:38.055204000 +0000
+@@ -34,6 +34,7 @@
static const unsigned long _glibtop_sysdeps_cpu_all =
(1L << GLIBTOP_CPU_TOTAL) + (1L << GLIBTOP_CPU_USER) +
@@ -314,10 +335,113 @@
(1L << GLIBTOP_CPU_SYS) + (1L << GLIBTOP_CPU_IDLE) +
(1L << GLIBTOP_XCPU_TOTAL) + (1L << GLIBTOP_XCPU_USER) +
(1L << GLIBTOP_XCPU_SYS) + (1L << GLIBTOP_XCPU_IDLE) +
-diff -Nrup libgtop-2.23.90.orig/sysdeps/solaris/glibtop_machine.h libgtop-2.23.90.mod/sysdeps/solaris/glibtop_machine.h
---- libgtop-2.23.90.orig/sysdeps/solaris/glibtop_machine.h 2008-05-24 06:13:24.000000000 +0800
-+++ libgtop-2.23.90.mod/sysdeps/solaris/glibtop_machine.h 2008-08-20 11:48:46.031067000 +0800
-@@ -61,14 +61,14 @@ struct _glibtop_machine
+diff -urN libgtop-2.25.91/sysdeps/solaris/fsusage.c ../SUNWlibgtop-2.25.91.hacked/libgtop-2.25.91/sysdeps/solaris/fsusage.c
+--- libgtop-2.25.91/sysdeps/solaris/fsusage.c 1970-01-01 00:00:00.000000000 +0000
++++ ../SUNWlibgtop-2.25.91.hacked/libgtop-2.25.91/sysdeps/solaris/fsusage.c 2009-02-25 17:20:33.608888000 +0000
+@@ -0,0 +1,99 @@
++#include <config.h>
++#include <glibtop.h>
++#include <glibtop/error.h>
++#include <glibtop/fsusage.h>
++#include <glibtop/union.h>
++
++#include "glibtop_private.h"
++
++#include <glib.h>
++
++#include <unistd.h>
++#include <kstat.h>
++#include <sys/types.h>
++#include <sys/stat.h>
++#include <sys/statvfs.h>
++
++#include <stdio.h>
++#include <string.h>
++#include <stdlib.h>
++
++G_GNUC_INTERNAL void
++_glibtop_sun_get_fsusage_read_write(glibtop *server,
++ glibtop_fsusage *buf,
++ const char *path)
++{
++ struct statvfs64 statvfsbuf;
++ char ksname[KSTAT_STRLEN + 1];
++ kstat_ctl_t * const kctl = server->machine.kc;
++ kstat_t *ksp;
++ kstat_io_t kio;
++ kstat_named_t *kread, *kwrite;
++ int i;
++
++ /*
++ * get a kstat handle and update the user's kstat chain
++ */
++ if( kctl == NULL ){
++ glibtop_warn_io_r (server, "kstat_open ()");
++ return;
++ }
++
++ /* make sure we have current data */
++ while( kstat_chain_update( kctl ) != 0 )
++ ;
++
++ for (ksp = kctl->kc_chain, i =0; ksp != NULL; ksp = ksp->ks_next, i++) {
++ if (ksp->ks_type == KSTAT_TYPE_IO && strcmp(ksp->ks_class,"disk") == 0) {
++ kstat_read(kctl, ksp, &kio);
++ buf->read += kio.nread;
++ buf->write += kio.nwritten;
++ }
++ }
++#if 0
++ /* these codes keep here, because they are a good way to get the
++ fsusage information, but at the moment, the interfaces used
++ are not public or stable. so let's use them when public...
++ */
++ /*
++ * get a kstat handle and update the user's kstat chain
++ */
++ if( kctl == NULL ){
++ glibtop_warn_io_r (server, "kstat_open ()");
++ return;
++ }
++
++ while( kstat_chain_update( kctl ) != 0 )
++ ;
++
++ if (statvfs64(path, &statvfsbuf) != 0) {
++ glibtop_warn_io_r (server, "kstat_open ()");
++ return;
++ }
++ snprintf(ksname, KSTAT_STRLEN, "%s%lx", VOPSTATS_STR,
++ statvfsbuf.f_fsid);
++
++ /*
++ * traverse the kstat chain
++ * to find the appropriate statistics
++ */
++ if( (ksp = kstat_lookup( kctl,
++ "unix", 0, ksname )) == NULL ) {
++ return;
++ }
++ if( kstat_read( kctl, ksp, NULL ) == -1 ) {
++ return;
++ }
++
++ kread = (kstat_named_t *)kstat_data_lookup(ksp,"read_bytes");
++ if( kread != NULL ) {
++ buf->read = kread->value.ull;
++ }
++
++ kwrite = (kstat_named_t *)kstat_data_lookup(ksp,"write_bytes");
++ if( kwrite != NULL ) {
++ buf->write = kwrite->value.ull;
++ }
++#endif
++ buf->flags |= (1 << GLIBTOP_FSUSAGE_READ) | (1 << GLIBTOP_FSUSAGE_WRITE);
++}
+diff -urN libgtop-2.25.91/sysdeps/solaris/glibtop_machine.h ../SUNWlibgtop-2.25.91.hacked/libgtop-2.25.91/sysdeps/solaris/glibtop_machine.h
+--- libgtop-2.25.91/sysdeps/solaris/glibtop_machine.h 2008-05-23 22:13:24.000000000 +0000
++++ ../SUNWlibgtop-2.25.91.hacked/libgtop-2.25.91/sysdeps/solaris/glibtop_machine.h 2009-02-25 17:16:38.055426000 +0000
+@@ -61,14 +61,14 @@
int pagesize; /* in bits to shift, ie. 2^pagesize gives Kb */
int ticks; /* clock ticks, as returned by sysconf() */
unsigned long long boot; /* boot time, although it's ui32 in kstat */
@@ -339,9 +463,9 @@
};
G_END_DECLS
-diff -Nrup libgtop-2.23.90.orig/sysdeps/solaris/glibtop_private.c libgtop-2.23.90.mod/sysdeps/solaris/glibtop_private.c
---- libgtop-2.23.90.orig/sysdeps/solaris/glibtop_private.c 1970-01-01 08:00:00.000000000 +0800
-+++ libgtop-2.23.90.mod/sysdeps/solaris/glibtop_private.c 2008-08-20 11:50:10.409057000 +0800
+diff -urN libgtop-2.25.91/sysdeps/solaris/glibtop_private.c ../SUNWlibgtop-2.25.91.hacked/libgtop-2.25.91/sysdeps/solaris/glibtop_private.c
+--- libgtop-2.25.91/sysdeps/solaris/glibtop_private.c 1970-01-01 00:00:00.000000000 +0000
++++ ../SUNWlibgtop-2.25.91.hacked/libgtop-2.25.91/sysdeps/solaris/glibtop_private.c 2009-02-25 17:16:38.055744000 +0000
@@ -0,0 +1,203 @@
+#include <config.h>
+#include <glibtop.h>
@@ -546,10 +670,10 @@
+ buf[ret] = '\0';
+ return TRUE;
+}
-diff -Nrup libgtop-2.23.90.orig/sysdeps/solaris/glibtop_private.h libgtop-2.23.90.mod/sysdeps/solaris/glibtop_private.h
---- libgtop-2.23.90.orig/sysdeps/solaris/glibtop_private.h 2008-05-24 06:13:24.000000000 +0800
-+++ libgtop-2.23.90.mod/sysdeps/solaris/glibtop_private.h 2008-08-20 11:50:43.153956000 +0800
-@@ -60,6 +60,8 @@ int glibtop_get_proc_credentials_s(glibt
+diff -urN libgtop-2.25.91/sysdeps/solaris/glibtop_private.h ../SUNWlibgtop-2.25.91.hacked/libgtop-2.25.91/sysdeps/solaris/glibtop_private.h
+--- libgtop-2.25.91/sysdeps/solaris/glibtop_private.h 2008-05-23 22:13:24.000000000 +0000
++++ ../SUNWlibgtop-2.25.91.hacked/libgtop-2.25.91/sysdeps/solaris/glibtop_private.h 2009-02-25 17:16:38.057019000 +0000
+@@ -60,6 +60,8 @@
/* Reread kstat chains */
void glibtop_get_kstats(glibtop *);
@@ -558,10 +682,10 @@
G_END_DECLS
#endif /* __GLIBTOP_PRIVATE_H__ */
-diff -Nrup libgtop-2.23.90.orig/sysdeps/solaris/glibtop_server.h libgtop-2.23.90.mod/sysdeps/solaris/glibtop_server.h
---- libgtop-2.23.90.orig/sysdeps/solaris/glibtop_server.h 2008-05-24 06:13:24.000000000 +0800
-+++ libgtop-2.23.90.mod/sysdeps/solaris/glibtop_server.h 2008-08-20 20:27:29.536004000 +0800
-@@ -29,9 +29,15 @@ G_BEGIN_DECLS
+diff -urN libgtop-2.25.91/sysdeps/solaris/glibtop_server.h ../SUNWlibgtop-2.25.91.hacked/libgtop-2.25.91/sysdeps/solaris/glibtop_server.h
+--- libgtop-2.25.91/sysdeps/solaris/glibtop_server.h 2008-05-23 22:13:24.000000000 +0000
++++ ../SUNWlibgtop-2.25.91.hacked/libgtop-2.25.91/sysdeps/solaris/glibtop_server.h 2009-02-25 17:16:38.057265000 +0000
+@@ -29,9 +29,15 @@
#define GLIBTOP_SUID_SWAP 0
#define GLIBTOP_SUID_UPTIME 0
#define GLIBTOP_SUID_LOADAVG 0
@@ -577,7 +701,7 @@
#define GLIBTOP_SUID_PROCLIST 0
#define GLIBTOP_SUID_PROC_STATE 0
#define GLIBTOP_SUID_PROC_UID 0
-@@ -44,7 +50,10 @@ G_BEGIN_DECLS
+@@ -44,7 +50,10 @@
#define GLIBTOP_SUID_PROC_MAP 0
#define GLIBTOP_SUID_NETLOAD 0
#define GLIBTOP_SUID_NETLIST 0
@@ -588,10 +712,10 @@
G_END_DECLS
-diff -Nrup libgtop-2.23.90.orig/sysdeps/solaris/msg_limits.c libgtop-2.23.90.mod/sysdeps/solaris/msg_limits.c
---- libgtop-2.23.90.orig/sysdeps/solaris/msg_limits.c 2008-05-24 06:13:24.000000000 +0800
-+++ libgtop-2.23.90.mod/sysdeps/solaris/msg_limits.c 2008-08-20 11:54:47.408687000 +0800
-@@ -37,14 +37,24 @@ static const unsigned long _glibtop_sysd
+diff -urN libgtop-2.25.91/sysdeps/solaris/msg_limits.c ../SUNWlibgtop-2.25.91.hacked/libgtop-2.25.91/sysdeps/solaris/msg_limits.c
+--- libgtop-2.25.91/sysdeps/solaris/msg_limits.c 2008-05-23 22:13:24.000000000 +0000
++++ ../SUNWlibgtop-2.25.91.hacked/libgtop-2.25.91/sysdeps/solaris/msg_limits.c 2009-02-25 17:16:38.058081000 +0000
+@@ -37,14 +37,24 @@
(1L << GLIBTOP_IPC_MSGMNB) + (1L << GLIBTOP_IPC_MSGMNI) +
(1L << GLIBTOP_IPC_MSGTQL);
#else
@@ -617,7 +741,7 @@
{
#if GLIBTOP_SOLARIS_RELEASE < 51000
-@@ -59,8 +69,13 @@ _glibtop_init_msg_limits_p (glibtop *ser
+@@ -59,8 +69,13 @@
/* Provides information about sysv ipc limits. */
@@ -631,9 +755,9 @@
{
#if GLIBTOP_SOLARIS_RELEASE < 51000
-diff -Nrup libgtop-2.23.90.orig/sysdeps/solaris/netload.c libgtop-2.23.90.mod/sysdeps/solaris/netload.c
---- libgtop-2.23.90.orig/sysdeps/solaris/netload.c 2008-05-24 06:13:24.000000000 +0800
-+++ libgtop-2.23.90.mod/sysdeps/solaris/netload.c 2008-08-20 20:11:42.601468000 +0800
+diff -urN libgtop-2.25.91/sysdeps/solaris/netload.c ../SUNWlibgtop-2.25.91.hacked/libgtop-2.25.91/sysdeps/solaris/netload.c
+--- libgtop-2.25.91/sysdeps/solaris/netload.c 2008-05-23 22:13:24.000000000 +0000
++++ ../SUNWlibgtop-2.25.91.hacked/libgtop-2.25.91/sysdeps/solaris/netload.c 2009-02-25 17:16:38.059013000 +0000
@@ -37,6 +37,17 @@
#include <net/if.h>
@@ -652,7 +776,7 @@
static const unsigned long _glibtop_sysdeps_netload =
(1L << GLIBTOP_NETLOAD_ERRORS_IN) +
-@@ -89,6 +100,72 @@ _glibtop_init_netload_s (glibtop *server
+@@ -89,6 +100,72 @@
_glibtop_sysdeps_netload_packets;
}
@@ -725,7 +849,7 @@
static int
solaris_stats(glibtop *server,
glibtop_netload *buf,
-@@ -245,6 +322,13 @@ glibtop_get_netload_s (glibtop *server,
+@@ -245,6 +322,13 @@
buf->subnet = ((struct sockaddr_in *) &ifr.ifr_addr)->sin_addr.s_addr;
buf->flags |= (1L << GLIBTOP_NETLOAD_SUBNET);
}
@@ -739,7 +863,7 @@
close (skfd);
}
-@@ -254,4 +338,7 @@ glibtop_get_netload_s (glibtop *server,
+@@ -254,4 +338,7 @@
solaris_stats(server, buf, interface);
@@ -747,10 +871,10 @@
+ get_ipv6(server, buf, interface);
+#endif /* HAVE_IFADDRS_H */
}
-diff -Nrup libgtop-2.23.90.orig/sysdeps/solaris/open.c libgtop-2.23.90.mod/sysdeps/solaris/open.c
---- libgtop-2.23.90.orig/sysdeps/solaris/open.c 2008-05-24 06:13:24.000000000 +0800
-+++ libgtop-2.23.90.mod/sysdeps/solaris/open.c 2008-08-20 18:55:17.944520000 +0800
-@@ -209,34 +209,34 @@ glibtop_open_s (glibtop *server, const c
+diff -urN libgtop-2.25.91/sysdeps/solaris/open.c ../SUNWlibgtop-2.25.91.hacked/libgtop-2.25.91/sysdeps/solaris/open.c
+--- libgtop-2.25.91/sysdeps/solaris/open.c 2008-05-23 22:13:24.000000000 +0000
++++ ../SUNWlibgtop-2.25.91.hacked/libgtop-2.25.91/sysdeps/solaris/open.c 2009-02-25 17:16:38.060014000 +0000
+@@ -209,34 +209,34 @@
}
}
@@ -811,9 +935,9 @@
+//#endif
server->machine.me = getpid();
}
-diff -Nrup libgtop-2.23.90.orig/sysdeps/solaris/procaffinity.c libgtop-2.23.90.mod/sysdeps/solaris/procaffinity.c
---- libgtop-2.23.90.orig/sysdeps/solaris/procaffinity.c 1970-01-01 08:00:00.000000000 +0800
-+++ libgtop-2.23.90.mod/sysdeps/solaris/procaffinity.c 2008-08-20 20:39:47.771308000 +0800
+diff -urN libgtop-2.25.91/sysdeps/solaris/procaffinity.c ../SUNWlibgtop-2.25.91.hacked/libgtop-2.25.91/sysdeps/solaris/procaffinity.c
+--- libgtop-2.25.91/sysdeps/solaris/procaffinity.c 1970-01-01 00:00:00.000000000 +0000
++++ ../SUNWlibgtop-2.25.91.hacked/libgtop-2.25.91/sysdeps/solaris/procaffinity.c 2009-02-25 17:16:38.060320000 +0000
@@ -0,0 +1,84 @@
+/* Copyright (C) 2007 Joe Marcus Clarke <[email protected]>
+ This file is part of LibGTop 2.
@@ -899,10 +1023,10 @@
+*/
+}
+
-diff -Nrup libgtop-2.23.90.orig/sysdeps/solaris/procmap.c libgtop-2.23.90.mod/sysdeps/solaris/procmap.c
---- libgtop-2.23.90.orig/sysdeps/solaris/procmap.c 2008-05-24 06:13:24.000000000 +0800
-+++ libgtop-2.23.90.mod/sysdeps/solaris/procmap.c 2008-08-20 19:06:32.593851000 +0800
-@@ -54,9 +54,16 @@ glibtop_map_entry *
+diff -urN libgtop-2.25.91/sysdeps/solaris/procmap.c ../SUNWlibgtop-2.25.91.hacked/libgtop-2.25.91/sysdeps/solaris/procmap.c
+--- libgtop-2.25.91/sysdeps/solaris/procmap.c 2008-05-23 22:13:24.000000000 +0000
++++ ../SUNWlibgtop-2.25.91.hacked/libgtop-2.25.91/sysdeps/solaris/procmap.c 2009-02-25 17:16:38.061314000 +0000
+@@ -54,9 +54,16 @@
glibtop_get_proc_map_s (glibtop *server, glibtop_proc_map *buf, pid_t pid)
{
int fd, i, nmaps, pr_err, heap;
@@ -920,7 +1044,7 @@
#else
prmap_t *maps;
#endif
-@@ -123,16 +130,44 @@ glibtop_get_proc_map_s (glibtop *server,
+@@ -123,16 +130,44 @@
buf->total = nmaps * sizeof(glibtop_map_entry);
entry = g_malloc0(buf->total);
@@ -970,7 +1094,7 @@
entry[i].start = maps[i].pr_vaddr;
entry[i].end = maps[i].pr_vaddr + maps[i].pr_size;
-@@ -177,25 +212,40 @@ glibtop_get_proc_map_s (glibtop *server,
+@@ -177,25 +212,40 @@
entry[i].flags |= (1L << GLIBTOP_MAP_ENTRY_FILENAME);
}
else
@@ -1030,9 +1154,9 @@
buf->flags = _glibtop_sysdeps_proc_map;
s_close(fd);
return entry;
-diff -Nrup libgtop-2.23.90.orig/sysdeps/solaris/procmem.c libgtop-2.23.90.mod/sysdeps/solaris/procmem.c
---- libgtop-2.23.90.orig/sysdeps/solaris/procmem.c 2008-05-24 06:13:24.000000000 +0800
-+++ libgtop-2.23.90.mod/sysdeps/solaris/procmem.c 2008-08-20 19:09:08.485871000 +0800
+diff -urN libgtop-2.25.91/sysdeps/solaris/procmem.c ../SUNWlibgtop-2.25.91.hacked/libgtop-2.25.91/sysdeps/solaris/procmem.c
+--- libgtop-2.25.91/sysdeps/solaris/procmem.c 2008-05-23 22:13:24.000000000 +0000
++++ ../SUNWlibgtop-2.25.91.hacked/libgtop-2.25.91/sysdeps/solaris/procmem.c 2009-02-25 17:16:38.061600000 +0000
@@ -22,12 +22,14 @@
#include <config.h>
#include <glibtop.h>
@@ -1049,7 +1173,7 @@
/* Init function. */
-@@ -61,5 +63,31 @@ glibtop_get_proc_mem_s (glibtop *server,
+@@ -61,5 +63,31 @@
buf->size = buf->vsize = psinfo.pr_size << pagesize << 10;
buf->resident = buf->rss = psinfo.pr_rssize << pagesize << 10;
#endif
@@ -1081,10 +1205,10 @@
+
buf->flags = _glibtop_sysdeps_proc_mem;
}
-diff -Nrup libgtop-2.23.90.orig/sysdeps/solaris/procstate.c libgtop-2.23.90.mod/sysdeps/solaris/procstate.c
---- libgtop-2.23.90.orig/sysdeps/solaris/procstate.c 2008-05-24 06:13:24.000000000 +0800
-+++ libgtop-2.23.90.mod/sysdeps/solaris/procstate.c 2008-08-20 22:19:57.697233000 +0800
-@@ -62,6 +62,26 @@ glibtop_get_proc_state_s (glibtop *serve
+diff -urN libgtop-2.25.91/sysdeps/solaris/procstate.c ../SUNWlibgtop-2.25.91.hacked/libgtop-2.25.91/sysdeps/solaris/procstate.c
+--- libgtop-2.25.91/sysdeps/solaris/procstate.c 2008-05-23 22:13:24.000000000 +0000
++++ ../SUNWlibgtop-2.25.91.hacked/libgtop-2.25.91/sysdeps/solaris/procstate.c 2009-02-25 17:16:38.062411000 +0000
+@@ -62,6 +62,26 @@
buf->gid = psinfo.pr_egid;
buf->ruid = psinfo.pr_uid;
buf->rgid = psinfo.pr_gid;
@@ -1111,10 +1235,10 @@
#ifdef HAVE_PROCFS_H
switch(psinfo.pr_lwp.pr_state)
-diff -Nrup libgtop-2.23.90.orig/sysdeps/solaris/proctime.c libgtop-2.23.90.mod/sysdeps/solaris/proctime.c
---- libgtop-2.23.90.orig/sysdeps/solaris/proctime.c 2008-05-24 06:13:24.000000000 +0800
-+++ libgtop-2.23.90.mod/sysdeps/solaris/proctime.c 2008-08-20 19:38:04.212493000 +0800
-@@ -43,6 +43,11 @@ void
+diff -urN libgtop-2.25.91/sysdeps/solaris/proctime.c ../SUNWlibgtop-2.25.91.hacked/libgtop-2.25.91/sysdeps/solaris/proctime.c
+--- libgtop-2.25.91/sysdeps/solaris/proctime.c 2008-05-23 22:13:24.000000000 +0000
++++ ../SUNWlibgtop-2.25.91.hacked/libgtop-2.25.91/sysdeps/solaris/proctime.c 2009-02-25 17:16:38.062715000 +0000
+@@ -43,6 +43,11 @@
glibtop_get_proc_time_s (glibtop *server, glibtop_proc_time *buf,
pid_t pid)
{
@@ -1126,7 +1250,7 @@
struct prusage prusage;
GTimeVal time;
-@@ -52,19 +57,27 @@ glibtop_get_proc_time_s (glibtop *server
+@@ -52,19 +57,27 @@
if(pid)
{
@@ -1159,9 +1283,9 @@
}
buf->flags = _glibtop_sysdeps_proc_time;
-diff -Nrup libgtop-2.23.90.orig/sysdeps/solaris/procwd.c libgtop-2.23.90.mod/sysdeps/solaris/procwd.c
---- libgtop-2.23.90.orig/sysdeps/solaris/procwd.c 1970-01-01 08:00:00.000000000 +0800
-+++ libgtop-2.23.90.mod/sysdeps/solaris/procwd.c 2008-08-20 19:17:28.084980000 +0800
+diff -urN libgtop-2.25.91/sysdeps/solaris/procwd.c ../SUNWlibgtop-2.25.91.hacked/libgtop-2.25.91/sysdeps/solaris/procwd.c
+--- libgtop-2.25.91/sysdeps/solaris/procwd.c 1970-01-01 00:00:00.000000000 +0000
++++ ../SUNWlibgtop-2.25.91.hacked/libgtop-2.25.91/sysdeps/solaris/procwd.c 2009-02-25 17:16:38.062977000 +0000
@@ -0,0 +1,98 @@
+/* Copyright (C) 2007 BenoƮt Dejean
+ This file is part of LibGTop 2.
@@ -1261,10 +1385,10 @@
+ return (char**) g_ptr_array_free(dirs, FALSE);
+}
+
-diff -Nrup libgtop-2.23.90.orig/sysdeps/solaris/sem_limits.c libgtop-2.23.90.mod/sysdeps/solaris/sem_limits.c
---- libgtop-2.23.90.orig/sysdeps/solaris/sem_limits.c 2008-05-24 06:13:24.000000000 +0800
-+++ libgtop-2.23.90.mod/sysdeps/solaris/sem_limits.c 2008-08-20 20:21:27.584506000 +0800
-@@ -39,14 +39,22 @@ static const unsigned long _glibtop_sysd
+diff -urN libgtop-2.25.91/sysdeps/solaris/sem_limits.c ../SUNWlibgtop-2.25.91.hacked/libgtop-2.25.91/sysdeps/solaris/sem_limits.c
+--- libgtop-2.25.91/sysdeps/solaris/sem_limits.c 2008-05-23 22:13:24.000000000 +0000
++++ ../SUNWlibgtop-2.25.91.hacked/libgtop-2.25.91/sysdeps/solaris/sem_limits.c 2009-02-25 17:16:38.063802000 +0000
+@@ -39,14 +39,22 @@
(1L << GLIBTOP_IPC_SEMUSZ) + (1L << GLIBTOP_IPC_SEMVMX) +
(1L << GLIBTOP_IPC_SEMAEM);
#else
@@ -1288,7 +1412,7 @@
{
#if GLIBTOP_SOLARIS_RELEASE < 51000
-@@ -61,8 +69,13 @@ _glibtop_init_sem_limits_p (glibtop *ser
+@@ -61,8 +69,13 @@
/* Provides information about sysv sem limits. */
@@ -1302,9 +1426,9 @@
{
#if GLIBTOP_SOLARIS_RELEASE < 51000
kvm_t *kd = server->machine.kd;
-diff -Nrup libgtop-2.23.90.orig/sysdeps/solaris/shm_limits.c libgtop-2.23.90.mod/sysdeps/solaris/shm_limits.c
---- libgtop-2.23.90.orig/sysdeps/solaris/shm_limits.c 2008-05-24 06:13:24.000000000 +0800
-+++ libgtop-2.23.90.mod/sysdeps/solaris/shm_limits.c 2008-08-20 21:46:13.220805000 +0800
+diff -urN libgtop-2.25.91/sysdeps/solaris/shm_limits.c ../SUNWlibgtop-2.25.91.hacked/libgtop-2.25.91/sysdeps/solaris/shm_limits.c
+--- libgtop-2.25.91/sysdeps/solaris/shm_limits.c 2008-05-23 22:13:24.000000000 +0000
++++ ../SUNWlibgtop-2.25.91.hacked/libgtop-2.25.91/sysdeps/solaris/shm_limits.c 2009-02-25 17:16:38.064069000 +0000
@@ -30,7 +30,9 @@
static const struct nlist nlst[] = { {"glibtop_shm_limits"}, {NULL} };
@@ -1316,7 +1440,7 @@
#else
# if GLIBTOP_SOLARIS_RELEASE < 50900
static const unsigned long _glibtop_sysdeps_shm_limits =
-@@ -45,8 +47,13 @@ static const unsigned long _glibtop_sysd
+@@ -45,8 +47,13 @@
/* Init function. */
@@ -1330,7 +1454,7 @@
{
#if GLIBTOP_SOLARIS_RELEASE < 51000
-@@ -61,8 +68,13 @@ _glibtop_init_shm_limits_p (glibtop *ser
+@@ -61,8 +68,13 @@
/* Provides information about sysv ipc limits. */
@@ -1344,10 +1468,10 @@
{
#if GLIBTOP_SOLARIS_RELEASE < 51000
-diff -Nrup libgtop-2.23.90.orig/sysdeps/solaris/siglist.c libgtop-2.23.90.mod/sysdeps/solaris/siglist.c
---- libgtop-2.23.90.orig/sysdeps/solaris/siglist.c 2008-05-24 06:13:24.000000000 +0800
-+++ libgtop-2.23.90.mod/sysdeps/solaris/siglist.c 2008-08-20 19:22:53.411487000 +0800
-@@ -61,6 +61,7 @@ const glibtop_signame glibtop_sys_siglis
+diff -urN libgtop-2.25.91/sysdeps/solaris/siglist.c ../SUNWlibgtop-2.25.91.hacked/libgtop-2.25.91/sysdeps/solaris/siglist.c
+--- libgtop-2.25.91/sysdeps/solaris/siglist.c 2008-05-23 22:13:24.000000000 +0000
++++ ../SUNWlibgtop-2.25.91.hacked/libgtop-2.25.91/sysdeps/solaris/siglist.c 2009-02-25 17:16:38.064867000 +0000
+@@ -61,6 +61,7 @@
{ 35, "SIGTHAW", "Checkpoint Thaw" },
{ 36, "SIGCANCEL","Thread Cancelation" },
{ 37, "SIGLOST", "Resource Lost" },
@@ -1355,7 +1479,7 @@
{ 38, "SIGRTMIN","First Realtime Signal" },
{ 39, "SIGRTMIN+1", "Second Realtime Signal" },
{ 40, "SIGRTMIN+2", "Third Realtime Signal" },
-@@ -69,5 +70,30 @@ const glibtop_signame glibtop_sys_siglis
+@@ -69,5 +70,30 @@
{ 43, "SIGRTMAX-2", "Third Last Realtime Signal" },
{ 44, "SIGRTMAX-1", "Second Last Realtime Signal" },
{ 45, "SIGRTMAX", "Last Realtime Signal" },
@@ -1386,9 +1510,9 @@
+#endif
{ 0, NULL, NULL }
};
-diff -Nrup libgtop-2.23.90.orig/sysdeps/solaris/sysinfo.c libgtop-2.23.90.mod/sysdeps/solaris/sysinfo.c
---- libgtop-2.23.90.orig/sysdeps/solaris/sysinfo.c 1970-01-01 08:00:00.000000000 +0800
-+++ libgtop-2.23.90.mod/sysdeps/solaris/sysinfo.c 2008-08-20 19:23:21.791056000 +0800
+diff -urN libgtop-2.25.91/sysdeps/solaris/sysinfo.c ../SUNWlibgtop-2.25.91.hacked/libgtop-2.25.91/sysdeps/solaris/sysinfo.c
+--- libgtop-2.25.91/sysdeps/solaris/sysinfo.c 1970-01-01 00:00:00.000000000 +0000
++++ ../SUNWlibgtop-2.25.91.hacked/libgtop-2.25.91/sysdeps/solaris/sysinfo.c 2009-02-25 17:16:38.065095000 +0000
@@ -0,0 +1,48 @@
+/* $Id: sysinfo.c,v 1.22 2004/11/28 01:32:55 bdejean Exp $ */
+