head 1.6; access; symbols pkgsrc-2013Q2:1.6.0.50 pkgsrc-2013Q2-base:1.6 pkgsrc-2012Q4:1.6.0.48 pkgsrc-2012Q4-base:1.6 pkgsrc-2011Q4:1.6.0.46 pkgsrc-2011Q4-base:1.6 pkgsrc-2011Q2:1.6.0.44 pkgsrc-2011Q2-base:1.6 pkgsrc-2009Q4:1.6.0.42 pkgsrc-2009Q4-base:1.6 pkgsrc-2008Q4:1.6.0.40 pkgsrc-2008Q4-base:1.6 pkgsrc-2008Q3:1.6.0.38 pkgsrc-2008Q3-base:1.6 cube-native-xorg:1.6.0.36 cube-native-xorg-base:1.6 pkgsrc-2008Q2:1.6.0.34 pkgsrc-2008Q2-base:1.6 pkgsrc-2008Q1:1.6.0.32 pkgsrc-2008Q1-base:1.6 pkgsrc-2007Q4:1.6.0.30 pkgsrc-2007Q4-base:1.6 pkgsrc-2007Q3:1.6.0.28 pkgsrc-2007Q3-base:1.6 pkgsrc-2007Q2:1.6.0.26 pkgsrc-2007Q2-base:1.6 pkgsrc-2007Q1:1.6.0.24 pkgsrc-2007Q1-base:1.6 pkgsrc-2006Q4:1.6.0.22 pkgsrc-2006Q4-base:1.6 pkgsrc-2006Q3:1.6.0.20 pkgsrc-2006Q3-base:1.6 pkgsrc-2006Q2:1.6.0.18 pkgsrc-2006Q2-base:1.6 pkgsrc-2006Q1:1.6.0.16 pkgsrc-2006Q1-base:1.6 pkgsrc-2005Q4:1.6.0.14 pkgsrc-2005Q4-base:1.6 pkgsrc-2005Q3:1.6.0.12 pkgsrc-2005Q3-base:1.6 pkgsrc-2005Q2:1.6.0.10 pkgsrc-2005Q2-base:1.6 pkgsrc-2005Q1:1.6.0.8 pkgsrc-2005Q1-base:1.6 pkgsrc-2004Q4:1.6.0.6 pkgsrc-2004Q4-base:1.6 pkgsrc-2004Q3:1.6.0.4 pkgsrc-2004Q3-base:1.6 pkgsrc-2004Q2:1.6.0.2 pkgsrc-2004Q2-base:1.6 pkgsrc-2004Q1:1.4.0.2 pkgsrc-2004Q1-base:1.4 pkgsrc-2003Q4:1.2.0.4 pkgsrc-2003Q4-base:1.2 netbsd-1-6-1:1.2.0.2 netbsd-1-6-1-base:1.2 pkgsrc-base:1.1.1.1 TNF:1.1.1; locks; strict; comment @# @; 1.6 date 2004.04.02.12.20.24; author jmmv; state dead; branches; next 1.5; 1.5 date 2004.04.01.18.34.27; author jmmv; state Exp; branches; next 1.4; 1.4 date 2004.03.19.22.55.30; author kristerw; state Exp; branches; next 1.3; 1.3 date 2003.12.13.20.27.42; author xtraeme; state Exp; branches; next 1.2; 1.2 date 2003.01.21.20.08.09; author rh; state Exp; branches; next 1.1; 1.1 date 2002.11.04.02.56.17; author rh; state Exp; branches 1.1.1.1; next ; 1.1.1.1 date 2002.11.04.02.56.17; author rh; state Exp; branches; next ; desc @@ 1.6 log @Finish move of libgtop and libgtop2 to the sysutils category, which were living in devel. @ text @$NetBSD: patch-al,v 1.5 2004/04/01 18:34:27 jmmv Exp $ --- sysdeps/freebsd/prockernel.c.orig 2004-03-11 03:23:52.000000000 +0100 +++ sysdeps/freebsd/prockernel.c @@@@ -228,6 +228,9 @@@@ glibtop_get_proc_kernel_p (glibtop *serv #if defined(__m68k__) buf->kstk_esp = (u_int64_t) pcb.pcb_usp; buf->kstk_eip = (u_int64_t) 0; +#elif defined(__x86_64__) + buf->kstk_esp = (u_int64_t) pcb.pcb_usersp; + buf->kstk_eip = (u_int64_t) 0; #elif (defined(__arm32__) || defined(__powerpc__)) buf->kstk_esp = (u_int64_t) pcb.pcb_sp; buf->kstk_eip = (u_int64_t) 0; @ 1.5 log @Update to 2.5.2: - plenty of code cleanups - removed the dependency on libgnome, only glib required now - Linux 2.6 support, NetBSD support and better FreeBSD support - Make the block size available for filesystem statistics @ text @d1 1 a1 1 $NetBSD: patch-al,v 1.4 2004/03/19 22:55:30 kristerw Exp $ @ 1.4 log @Add support for amd64. @ text @d1 1 a1 1 $NetBSD$ d3 6 a8 140 --- sysdeps/freebsd/prockernel.c.orig 2003-10-19 18:55:32.000000000 +0200 +++ sysdeps/freebsd/prockernel.c 2004-03-19 23:39:38.000000000 +0100 @@@@ -34,12 +34,9 @@@@ #if (!defined __OpenBSD__) && (!defined __bsdi__) #include #endif -#if !defined(__bsdi__) && !(defined(__FreeBSD__) && defined(__alpha__)) +#if !defined(__bsdi__) && !(defined(__FreeBSD__) && defined(__alpha__)) && !defined(__NetBSD__) #include #endif -#if defined(__FreeBSD__) && !defined(__alpha__) -#include -#endif #include #include @@@@ -48,6 +45,23 @@@@ #include #endif +#ifdef __NetBSD__ +#include +#include +#ifdef __arm32__ +#define KERNBASE KERNEL_BASE +#endif +#endif + +#ifdef __NetBSD__ +#include +#include +#ifdef __arm32__ +#define KERNBASE KERNEL_BASE +#endif +#endif + + static const unsigned long _glibtop_sysdeps_proc_kernel_pstats = (1L << GLIBTOP_PROC_KERNEL_MIN_FLT) + (1L << GLIBTOP_PROC_KERNEL_MAJ_FLT) + @@@@ -78,9 +92,11 @@@@ pid_t pid) { struct kinfo_proc *pinfo; +#ifndef __FreeBSD__ struct user *u_addr = (struct user *)USRSTACK; struct pstats pstats; struct pcb pcb; +#endif int count; char filename [BUFSIZ]; @@@@ -101,17 +117,36 @@@@ if ((pinfo == NULL) || (count != 1)) glibtop_error_io_r (server, "kvm_getprocs (%d)", pid); - buf->nwchan = (unsigned long) pinfo [0].kp_proc.p_wchan &~ KERNBASE; +#if defined(__FreeBSD__) && (__FreeBSD_version >= 500013) + +#define XXX_P_WCHAN ki_wchan +#define XXX_P_WMESG ki_wmesg +#define XXX_E_WMESG ki_wmesg + +#else + +#define XXX_P_WCHAN kp_proc.p_wchan +#define XXX_P_WMESG kp_proc.p_wmesg +#define XXX_E_WMESG kp_eproc.e_wmesg + +#endif + +#if !defined(__NetBSD__) || !defined(SACTIVE) + buf->nwchan = (unsigned long) pinfo [0].XXX_P_WCHAN &~ KERNBASE; + buf->flags |= (1L << GLIBTOP_PROC_KERNEL_NWCHAN); - if (pinfo [0].kp_proc.p_wchan && pinfo [0].kp_proc.p_wmesg) { - strncpy (buf->wchan, pinfo [0].kp_eproc.e_wmesg, + if (pinfo [0].XXX_P_WCHAN && pinfo [0].XXX_P_WMESG) { + strncpy (buf->wchan, pinfo [0].XXX_E_WMESG, sizeof (buf->wchan) - 1); buf->wchan [sizeof (buf->wchan) - 1] = 0; buf->flags |= (1L << GLIBTOP_PROC_KERNEL_WCHAN); } else { buf->wchan [0] = 0; } +#endif + +#ifndef __FreeBSD__ /* Taken from `saveuser ()' in `/usr/src/bin/ps/ps.c'. */ @@@@ -129,8 +164,17 @@@@ glibtop_suid_enter (server); +#if !defined(__NetBSD__) || !defined(SACTIVE) +#ifdef __NetBSD__ + /* On NetBSD, there is no kvm_uread(), and kvm_read() always reads + * from kernel memory. */ + + if (kvm_read (server->machine.kd, +#else + if ((pinfo [0].kp_proc.p_flag & P_INMEM) && kvm_uread (server->machine.kd, &(pinfo [0]).kp_proc, +#endif (unsigned long) &u_addr->u_stats, (char *) &pstats, sizeof (pstats)) == sizeof (pstats)) { @@@@ -149,8 +193,12 @@@@ buf->flags |= _glibtop_sysdeps_proc_kernel_pstats; } +#ifdef __NetBSD__ + if (kvm_read (server->machine.kd, +#else if ((pinfo [0].kp_proc.p_flag & P_INMEM) && kvm_uread (server->machine.kd, &(pinfo [0]).kp_proc, +#endif (unsigned long) &u_addr->u_pcb, (char *) &pcb, sizeof (pcb)) == sizeof (pcb)) { @@@@ -167,18 +215,55 @@@@ /*xxx FreeBSD/Alpha? */ #endif #else +#ifdef __i386__ buf->kstk_esp = (u_int64_t) pcb.pcb_tss.tss_esp0; #ifdef __bsdi__ buf->kstk_eip = (u_int64_t) pcb.pcb_tss.tss_eip; #else buf->kstk_eip = (u_int64_t) pcb.pcb_tss.__tss_eip; #endif - +#else +#if defined(__NetBSD__) +#if defined(__m68k__) + buf->kstk_esp = (u_int64_t) pcb.pcb_usp; + buf->kstk_eip = (u_int64_t) 0; d12 3 a14 38 +#elif (defined(__arm32__) || defined(__powerpc__)) + buf->kstk_esp = (u_int64_t) pcb.pcb_sp; + buf->kstk_eip = (u_int64_t) 0; +#elif defined(__mipsel__) + buf->kstk_esp = (u_int64_t) pcb.pcb_context[8]; + buf->kstk_eip = (u_int64_t) 0; +#elif defined(__sparc__) + buf->kstk_esp = (u_int64_t) pcb.pcb_sp; + buf->kstk_eip = (u_int64_t) pcb.pcb_pc; +#elif defined(__alpha__) + buf->kstk_esp = (u_int64_t) pcb.pcb_context[9]; + buf->kstk_eip = (u_int64_t) pcb.pcb_context[8]; +#else + /* provide some defaults for other platforms */ + buf->kstk_esp = (u_int64_t) 0; + buf->kstk_eip = (u_int64_t) 0; +#endif /* ${MACHINE_ARCH} */ +#endif /* __NetBSD__ */ buf->flags |= _glibtop_sysdeps_proc_kernel_pcb; #endif +#endif } - +#endif /* Taken from `wchan ()' in `/usr/src/bin/ps/print.c'. */ glibtop_suid_leave (server); + +#else + /* XXX: the code here was, quite frankly, junk, and almost + * certainly wrong - remove it all, leave these fields + * unpopulated, and give up until such time as the right + * code is produced for both FreeBSD 4.x and 5.x + */ + return; +#endif /* __FreeBSD__ */ + } @ 1.3 log @Updated to 2.0.7. Changes: o Added more locale files. o Makefile.am: Change subdirectory build order so that 'distclean' target work (and other targets remain working). o libgtop-2.0.pc.in: Fix missing build flags. Patch from Julio Merino. o sysdeps/linux/mem.c: (glibtop_get_mem_s): Fix memory calculation under Linux. Patch from . And more... please review Changelog for a complete list of changes. pkgsrc-changes: o FreeBSD 4.x/5.x support (only tested on 5.x) @ text @d3 2 a4 2 --- sysdeps/freebsd/prockernel.c.orig Sat Sep 6 00:34:15 2003 +++ sysdeps/freebsd/prockernel.c Sat Sep 6 00:45:41 2003 d126 1 a126 1 @@@@ -167,18 +215,52 @@@@ d143 3 @ 1.2 log @Make this compile with native threads by applying similar patches to those committed by tron for libgtop. Bump PKGREVISION. @ text @d3 3 a5 3 --- sysdeps/freebsd/prockernel.c.orig Tue Jun 11 07:34:42 2002 +++ sysdeps/freebsd/prockernel.c @@@@ -34,7 +34,7 @@@@ d13 7 a19 2 #if defined(__FreeBSD__) && !defined(__alpha__) @@@@ -48,6 +48,22 @@@@ d39 1 d43 13 a55 1 @@@@ -101,6 +117,7 @@@@ glibtop_get_proc_kernel_p (glibtop *serv d59 15 d75 2 a76 1 buf->nwchan = (unsigned long) pinfo [0].kp_proc.p_wchan &~ KERNBASE; d79 7 a85 1 @@@@ -112,6 +129,7 @@@@ glibtop_get_proc_kernel_p (glibtop *serv d90 2 d95 1 a95 1 @@@@ -129,8 +147,16 @@@@ glibtop_get_proc_kernel_p (glibtop *serv d106 1 d113 1 a113 1 @@@@ -149,8 +175,12 @@@@ glibtop_get_proc_kernel_p (glibtop *serv d126 1 a126 1 @@@@ -167,16 +197,42 @@@@ glibtop_get_proc_kernel_p (glibtop *serv d137 1 a160 1 d165 1 a166 1 d169 12 @ 1.1 log @Initial revision @ text @d1 1 a1 1 $NetBSD: patch-al,v 1.13 2001/08/10 10:48:13 martin Exp $ d3 2 a4 2 --- sysdeps/freebsd/prockernel.c.orig Sat Oct 16 20:31:43 1999 +++ sysdeps/freebsd/prockernel.c Fri Aug 10 12:38:19 2001 d14 1 a14 1 @@@@ -48,6 +48,14 @@@@ d26 8 d37 17 a53 1 @@@@ -129,8 +137,15 @@@@ d57 1 d70 1 a70 1 @@@@ -149,8 +164,12 @@@@ d83 1 a83 1 @@@@ -167,14 +186,39 @@@@ d119 1 a120 1 #endif d122 3 @ 1.1.1.1 log @Initial import of libgtop2-2.0.0, a library to retrieve system information, used in GNOME2 @ text @@