Commit Graph

732 Commits

Author SHA1 Message Date
Benoît Dejean
afa9757a0e Store only strings in values' values. g_strdup these strings. Even if
2006-04-04  Benoît Dejean  <benoit@placenet.org>

	* sysinfo.c: (init_sysinfo):

	Store only strings in values' values. g_strdup these strings.
	Even if values is never destroyed, set key_destroy_func to NULL.

	Leave description to NULL.
2006-04-04 21:23:46 +00:00
Julio M. Merino Vidal
80855eabe2 Bring back to life (from the 1.x versions) the sysinfo.c file for the
2006-04-04  Julio M. Merino Vidal  <jmmv@NetBSD.org>

	* sysdeps/freebsd/Makefile.am:
	* sysdeps/freebsd/sysinfo.c:

	Bring back to life (from the 1.x versions) the sysinfo.c file for
	the freebsd sysdeps.  The new file comes from the FreeBSD ports
	repository and has some minor style changes by me.  This is required
	to get the glibtop_get_sysinfo_s function used by the sysdeps common
	code.

	Fixes bug #337251.
2006-04-04 20:36:43 +00:00
Julio M. Merino Vidal
3558c4d5c3 Synch the list of GLIBTOP_SUID_* constants with those expected by the
2006-04-04  Julio M. Merino Vidal  <jmmv@NetBSD.org>

	* sysdeps/aix/glibtop_server.h:
	* sysdeps/freebsd/glibtop_server.h:
	* sysdeps/osf1/glibtop_server.h:
	* sysdeps/stub/glibtop_server.h:
	* sysdeps/stub_suid/glibtop_server.h:

	Synch the list of GLIBTOP_SUID_* constants with those expected by
	the lib/sysdeps.c file.  Fixes the build under, at least, NetBSD
	and FreeBSD.

	Fixes bug #337246.
2006-04-04 20:06:14 +00:00
Julio M. Merino Vidal
1870a03538 Remove obsolete and non-functional code that breaks the build under
2006-04-04  Julio M. Merino Vidal  <jmmv@NetBSD.org>

	* sysdeps/freebsd/proctime.c:

	Remove obsolete and non-functional code that breaks the build under
	NetBSD.  It was guarded by a conditional but could not compile
	anyway because it referred to an undefined variable.

	Fixes bug #337234.
2006-04-04 20:01:43 +00:00
Benoît Dejean
2083db6c34 Fixed a bunch of warnings.
* msg_limits.c: (glibtop_get_msg_limits_s):
	* sem_limits.c: (glibtop_get_sem_limits_s):
	* shm_limits.c: (glibtop_get_shm_limits_s):

	Fixed a bunch of warnings.
2006-04-02 09:16:20 +00:00
Benoît Dejean
29adf02352 Also ignores linprocfs, mfs and devfs. Closes #331856. Patch by Andreas
* mountlist.c: (ignore_mount_entry): Also ignores linprocfs, mfs
	and devfs.
	Closes #331856.
	Patch by Andreas Kohn <andreas.kohn@gmail.com>
2006-02-21 09:06:40 +00:00
Benoît Dejean
23ca9669ae I can't believe i've been so stupid :) Uses smaps if linux > 2.6.14.
* procmap.c: (glibtop_get_proc_map_s):

	I can't believe i've been so stupid :)
	Uses smaps if linux > 2.6.14.
2006-01-23 16:41:10 +00:00
Benoît Dejean
3afe2bf629 Fixed when which == GLIBTOP_KERN_PROC_UID. Closes #324055.
* proclist.c: (glibtop_get_proclist_s):

	Fixed when which == GLIBTOP_KERN_PROC_UID.
	Closes #324055.
2005-12-15 13:04:04 +00:00
Benoît Dejean
e296c3a37a Implemented server->real_ncpu. Add a warning to display ncpu and real_ncpu
* open.c: (glibtop_open_s):

	Implemented server->real_ncpu.
	Add a warning to display ncpu and real_ncpu on open.
2005-12-14 10:53:53 +00:00
Benoît Dejean
806a816026 Fixed server->ncpu usage (SMP handling). Need more testing.
* cpu.c: (glibtop_get_cpu_s):
	* glibtop_private.c: (get_scaled), (check_cpu_line):
	* glibtop_private.h:
	* open.c: (glibtop_open_s):
	* proctime.c: (glibtop_get_proc_time_s):

	Fixed server->ncpu usage (SMP handling). Need more testing.
2005-12-13 09:15:49 +00:00
Benoît Dejean
ba7355df9e Implemented smap support. Closes #320710.
* procmap.c: (add_smaps), (glibtop_get_proc_map_s):

	Implemented smap support.
	Closes #320710.
2005-12-12 13:37:15 +00:00
Benoît Dejean
451f9f9d6c Improved so that it doesn't stat(2) every /proc/<PID>/.
* proclist.c: (glibtop_get_proclist_s):

	Improved so that it doesn't stat(2) every /proc/<PID>/.
2005-12-12 13:32:06 +00:00
James Henstridge
aa5ac8fc10 remove unused file.
2005-12-12  James Henstridge  <james@jamesh.id.au>

	* doc/auto-macros.texi.in: remove unused file.

	* doc/libgtop2.texi: don't include auto-macros.texi.

	* doc/Makefile.am: don't build auto-macros.texi, since none of its
	macros are used in the documentation any more.

	* include/glibtop/global.h: don't include <config.h> from headers.

	* .../*.c: make sure <config.h> is the first thing included.

	* acinclude.m4: m4_include() libgtop-sysdeps.m4 rather than
	inlining it.

	* acinclude.m4, libgtop-sysdeps.m4: use third argument to
	AC_DEFINE() to set the comment.

	* configure.in: modernise a bit.

	* acconfig.h: remove file, since it is deprecated

	* autogen.sh: require automake 1.9 instead of 1.4.
2005-12-12 09:38:15 +00:00
Benoît Dejean
79fc0e70c0 Small improvements. Use g_array_sized_new instead of g_array_new with
* procmap.c: (glibtop_get_proc_map_s):

        Small improvements.
        Use g_array_sized_new instead of g_array_new with
        reserved_size = 100.
        Don't use g_array_append_val to avoid copying
        glibtop_map_entries. Use g_array_set_size(size + 1) instead.

        I've run a little python benchmark and this shows a little
        speedup. I hope this would be more sensible in
        gnome-system-monitor (glibtop_get_procmap is intensively used for
        the 'Writable Memory' column).
2005-12-07 09:35:50 +00:00
Benoît Dejean
95b2dfa326 Dropped many dead files. Bumped release number. I guess this closes
* configure.in:
	* include/glibtop/glibtop-backend-info.h:
	* include/glibtop/glibtop-backend.h:
	* include/glibtop/glibtop-client.h:
	* lib/glibtop-backend-info.c:
	* lib/glibtop-backend.c:
	* lib/glibtop-client-private.h:
	* lib/glibtop-client.c:
	* lib/test-backends.c:
	* sysdeps/common/backend.c:
	* sysdeps/common/libgtop-common.backend:

	Dropped many dead files.
	Bumped release number.
	I guess this closes #320250.
2005-10-30 18:46:27 +00:00
Benoît Dejean
ac3ad6d2aa Removed 1 g_return_*.
* glibtop_private.c: (read_boot_time):

	Removed 1 g_return_*.
2005-10-29 19:23:50 +00:00
Benoît Dejean
3e77f3cf13 Do not add irq, softirq and iowait to idle.
* cpu.c: (glibtop_get_cpu_s):

	Do not add irq, softirq and iowait to idle.
2005-08-15 00:09:47 +00:00
Benoît Dejean
22a1120348 Added missing includes. Added missing GLIBTOP_SUID_NETLIST.
* glibtop_server.h:
	* open.c:
	* open_suid.c:
	* procdata.c:

	Added missing includes.
	Added missing GLIBTOP_SUID_NETLIST.
2005-08-12 14:55:38 +00:00
Benoît Dejean
708285f0d2 Reworked a bit. Warn on 2.6 without /sys.
* open.c: (set_linux_version), (glibtop_open_s):

	Reworked a bit.
	Warn on 2.6 without /sys.
2005-08-03 22:39:17 +00:00
Benoît Dejean
a0493a0ff1 Fixed for people running 2.6 without /sys.
* netload.c: (glibtop_get_netload_s):

	Fixed for people running 2.6 without /sys.
2005-08-03 13:26:06 +00:00
Benoît Dejean
78cb7832c5 Moved _glibtop_init_hook_[sp] declaration to private glibtop/init_hooks.h.
* configure.in:
	* include/glibtop/Makefile.am:
	* include/glibtop/glibtop-server.h:
	* include/glibtop/init_hooks.h:
	* include/glibtop/sysdeps.h:
	* lib/init.c: (glibtop_init_s):
	* lib/sysdeps.c:
	* sysdeps/aix/open.c: (glibtop_init_p):
	* sysdeps/common/sysdeps_suid.c:
	* sysdeps/freebsd/open.c: (glibtop_init_p):
	* sysdeps/osf1/open_suid.c: (glibtop_init_p):
	* sysdeps/solaris/open_suid.c: (glibtop_init_p):
	* sysdeps/stub_suid/open.c: (glibtop_init_p):

	Moved _glibtop_init_hook_[sp] declaration to private
	glibtop/init_hooks.h. Marked them const.

	Fixed GLIBTOP_SUID_NETLIST issues.
2005-08-02 09:47:21 +00:00
Benoît Dejean
b3979e6942 Added GLIBTOP_SUID_NETLIST.
* glibtop_server.h:

	Added GLIBTOP_SUID_NETLIST.
2005-08-02 05:04:35 +00:00
Benoît Dejean
1645027004 Fixed .flags.
* uptime.c:

	Fixed .flags.
2005-07-23 00:01:11 +00:00
Benoît Dejean
4efcfb2cb3 Cached getpagesize().
* glibtop_private.c: (get_page_size):
	* glibtop_private.h:
	* procmem.c: (glibtop_get_proc_mem_s):
	* procsegment.c: (glibtop_get_proc_segment_s):

	Cached getpagesize().
2005-07-22 19:20:39 +00:00
Benoît Dejean
96fe554afd Split implementations. New (simpler) implementation for 2.6 (/sys is so
* netload.c: (read_value), (linux_2_6_stats), (linux_2_0_stats),
	(linux_2_4_stats), (glibtop_get_netload_s): Split implementations.
	New (simpler) implementation for 2.6 (/sys is so nice ;)
2005-07-09 21:09:15 +00:00
Benoît Dejean
16e0c943b2 Cached boot_time.
* glibtop_private.c: (read_boot_time), (get_boot_time): Cached boot_time.
2005-07-07 19:34:18 +00:00
Benoît Dejean
f409c553f5 Et m***e ... CVS got me. I wanted to commit a single change on the
toplevel configure.in but commited the whole tree. Sorry.

	* glibtop_private.c:
	* glibtop_private.h:
	* proctime.c:
	* uptime.c:

	Added new function get_boot_time.

	Retrieve boot_time from /proc/stat.
2005-07-05 23:08:58 +00:00
Benoît Dejean
b6a10fd8f7 Made some checks solaris only.
* configure.in: Made some checks solaris only.
2005-07-05 23:05:20 +00:00
Benoît Dejean
c81e055427 Removed LT_VERSION_INFO from LDFLAGS when unused.
* sysdeps/common/Makefile.am:
	* sysdeps/linux/Makefile.am: Removed LT_VERSION_INFO from LDFLAGS
	when unused.
2005-06-14 22:21:06 +00:00
Benoît Dejean
06fb19b5c6 Ensures buffer is 0-terminated.
* glibtop_private.c: (try_file_to_buffer): Ensures buffer is 0-terminated.
2005-06-14 22:17:49 +00:00
Benoît Dejean
ef2ed50bf7 Added pagein/pageout for linux 2.6.
* swap.c: (glibtop_get_swap_s): Added pagein/pageout for linux 2.6.
2005-06-13 09:03:41 +00:00
Benoît Dejean
be7dabf75d Added a lot of new functions to replace dirty macros. Every macro
* configure.in:
	* glibtop.h:
	* include/glibtop/close.h:
	* include/glibtop/cpu.h:
	* include/glibtop/fsusage.h:
	* include/glibtop/loadavg.h:
	* include/glibtop/mem.h:
	* include/glibtop/mountlist.h:
	* include/glibtop/msg_limits.h:
	* include/glibtop/netlist.h:
	* include/glibtop/netload.h:
	* include/glibtop/ppp.h:
	* include/glibtop/procargs.h:
	* include/glibtop/prockernel.h:
	* include/glibtop/proclist.h:
	* include/glibtop/procmap.h:
	* include/glibtop/procmem.h:
	* include/glibtop/procopenfiles.h:
	* include/glibtop/procsegment.h:
	* include/glibtop/procsignal.h:
	* include/glibtop/procstate.h:
	* include/glibtop/proctime.h:
	* include/glibtop/procuid.h:
	* include/glibtop/sem_limits.h:
	* include/glibtop/shm_limits.h:
	* include/glibtop/swap.h:
	* include/glibtop/sysdeps.h:
	* include/glibtop/sysinfo.h:
	* include/glibtop/uptime.h:
	* sysdeps/common/Makefile.am:
	* sysdeps/common/default.c: (glibtop_close), (glibtop_init),
	(glibtop_get_cpu), (glibtop_get_fsusage), (glibtop_get_uptime),
	(glibtop_get_sysinfo), (glibtop_get_swap), (glibtop_get_proc_uid),
	(glibtop_get_proc_time), (glibtop_get_proc_state),
	(glibtop_get_proc_signal), (glibtop_get_proc_segment),
	(glibtop_get_proc_open_files), (glibtop_get_proc_mem),
	(glibtop_get_proc_map), (glibtop_get_proc_args),
	(glibtop_get_proc_argv), (glibtop_get_proclist),
	(glibtop_get_proc_kernel), (glibtop_get_ppp),
	(glibtop_get_netlist), (glibtop_get_netload),
	(glibtop_get_mountlist), (glibtop_get_mem), (glibtop_get_loadavg),
	(glibtop_get_msg_limits), (glibtop_get_sem_limits),
	(glibtop_get_shm_limits), (glibtop_get_sysdeps):

	Added a lot of new functions to replace dirty macros.
	Every macro glibtop_get_*(buf[, args]) has been turned to a function.
2005-06-07 09:54:44 +00:00
Benoît Dejean
872a4180e4 Fixed compilation on mips. Closes #304570.
* siglist.c: Fixed compilation on mips. Closes #304570.
2005-05-25 22:28:42 +00:00
Jörgen Scheibengruber
e8351bae05 Added tmpfs to ignore list.
* mountlist.c: (ignore_mount_entry): Added tmpfs to ignore list.
2005-04-29 09:50:09 +00:00
Benoît Dejean
d1891b11ef Fixed gcc-4.0 warnings.
* glibtop_private.h: Fixed gcc-4.0 warnings.
2005-04-01 20:06:35 +00:00
Benoît Dejean
59fd67c7e0 Removed a g_return_if_fail.
* fsusage.c: (get_partition): Removed a g_return_if_fail.
2005-03-29 13:16:58 +00:00
Benoît Dejean
bbc10e3790 Fixed behaviour when locale is not C s/strtod/g_ascii_strod/. (strtod
* loadavg.c: (glibtop_get_loadavg_s):
	* uptime.c: (glibtop_get_uptime_s): Fixed behaviour when locale is not C
	s/strtod/g_ascii_strod/. (strtod behaviour is locale specific, which is bad
	because linux /proc is always C.
2005-03-27 14:30:30 +00:00
Benoît Dejean
3c0e03ee89 s/strerror/g_strerror/.
* open.c: (_glibtop_getkval): s/strerror/g_strerror/.
2005-03-25 13:25:01 +00:00
Benoît Dejean
fa9216f771 s/strerror/g_strerror/g.
* error.c: (glibtop_error_io_vr), (glibtop_warn_io_vr):
	* error_suid.c: (glibtop_error_io_vr), (glibtop_warn_io_vr):
	s/strerror/g_strerror/g.
2005-03-25 13:24:14 +00:00
Benoît Dejean
83a9bef192 s/strerror/g_strerror/.
* netload.c: (get_ipv6): s/strerror/g_strerror/.
2005-03-25 13:23:24 +00:00
Benoît Dejean
ca4dc56342 Updated.
* siglist.c: Updated.
2005-03-25 12:52:12 +00:00
Benoît Dejean
ad79ab9540 Added mqueue to ignore list.
* mountlist.c: (ignore_mount_entry): Added mqueue to ignore list.
2005-03-11 14:54:11 +00:00
Benoît Dejean
0561316344 Forgot to add this file.
* fsusage.c: (_glibtop_freebsd_get_fsusage_read_write): Forgot to add
	this file.
2005-02-28 08:54:41 +00:00
Benoît Dejean
2c0f291b3c Fix a bug in netlist where glibtop_netlist.number was never initialized to
* Makefile.am:
	* cpu.c: (glibtop_get_cpu_p):
	* netlist.c: (glibtop_get_netlist_s):
	* netload.c: (glibtop_get_netload_p):
	* procmem.c: (glibtop_get_proc_mem_p):

	Fix a bug in netlist where glibtop_netlist.number was never initialized to 0
	(this resulted in a NULL pointer dereference in the network load feature
	of the multiload applet)

	* Add support for getting interface flags and packet counts even on interfaces
	without IP addresses (needed for the network load feature of the multiload applet)

	* Restore per-process limits in the !FreeBSD or __FreeBSD_version < 500013
	case

	* Add CPU interrupt time as IOWAIT to get support for the cpu load feature of
	the multiload applet.

	Patch from marcus@freebsd.org (Joe Marcus Clarke).
	Closes #168704.
2005-02-28 08:15:59 +00:00
Benoît Dejean
fc7d872381 * Add support for file system read and write counting (needed for the disk
* fsusage.c: * Add support for file system read and write counting
	(needed for the disk load feature of the multiload applet).
2005-02-28 08:11:15 +00:00
Benoît Dejean
717ee1c88f Add support for FreeBSD 6-CURRENT. Use the more portable getrlimit to
* Makefile.am:
	* netlist.c: (glibtop_get_netlist_s):
	* procmap.c: (glibtop_get_proc_map_p):
	* procmem.c: (glibtop_get_proc_mem_p):
	* procopenfiles.c: (glibtop_init_proc_open_files_s),
	(glibtop_get_proc_open_files_s):
	* proctime.c:

	Add support for FreeBSD 6-CURRENT.
	Use the more portable getrlimit to obtain process memory limits.
	Correctly determine process time.
	Stub out the procopenfiles() function (this is not yet implemented, however).
	Fix a nasty infinite loop and memory leak due to a forgot pointer increment.

	Patch from marcus@freebsd.org (Joe Marcus Clarke).
	Closes #168232.
2005-02-23 08:20:45 +00:00
Benoît Dejean
f031b77b3b Correct file system size calculations. Patch from marcus@freebsd.org (Joe
* fsusage.c: (glibtop_get_fsusage_s): Correct file system size calculations.
	Patch from marcus@freebsd.org (Joe Marcus Clarke).
	Closes #168232.
2005-02-23 08:18:48 +00:00
Benoît Dejean
53c43e6e90 Removed some dead files. Don't install private headers.
* backends/server/server.h:
	* configure.in:
	* glibtop.h:
	* include/glibtop/Makefile.am:
	* include/glibtop/gnuserv.h:
	* include/glibtop/open.h:
	* include/glibtop/read.h:
	* include/glibtop/read_data.h:
	* include/glibtop/types.h:
	* include/glibtop/write.h:
	* lib/close.c:
	* lib/init.c:
	* lib/lib.pl:
	* lib/open.c:
	* lib/parameter.c:
	* lib/read.c:
	* lib/read_data.c:
	* lib/write.c:
	* src/daemon/daemon.h:
	* src/daemon/io.c:
	* src/daemon/main.c: (handle_parent_connection):
	* src/daemon/slave.c: (handle_slave_connection),
	(handle_slave_command):
	* sysdeps/common/gnuslib.c:
	* sysdeps/solaris/glibtop_private.h: Removed some dead files.
	Don't install private headers.
2005-02-15 12:48:34 +00:00
Benoît Dejean
bbbbb27edc Fixed G_GNUC attribute usage. Replaced macro by inline function.
* fsusage.c: (_glibtop_get_fsusage_read_write): Fixed G_GNUC attribute usage.
	Replaced macro by inline function.
2005-02-15 09:51:59 +00:00
Benoît Dejean
a5982555b9 Fixed G_GNUC attribute usage.
* fsusage.c: Fixed G_GNUC attribute usage.
2005-02-15 09:51:12 +00:00