Bug 176691 - [PATCH] net-mgmt/collectd5: update to 5.2.1
Summary: [PATCH] net-mgmt/collectd5: update to 5.2.1
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: Normal Affects Only Me
Assignee: Beech Rintoul
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-03-06 15:00 UTC by William Grzybowski
Modified: 2013-03-12 18:40 UTC (History)
0 users

See Also:


Attachments
collectd5.patch (22.52 KB, patch)
2013-03-06 15:00 UTC, William Grzybowski
no flags Details | Diff
collectd5.patch (23.08 KB, patch)
2013-03-12 13:43 UTC, William Grzybowski
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description William Grzybowski 2013-03-06 15:00:02 UTC
	Update to 5.2.1
	Redo zfs arc patch, make it work with clang

	Redports: https://redports.org/buildarchive/20130306142100-1314/

Fix: See attached patch
Comment 1 Edwin Groothuis freebsd_committer 2013-03-06 15:00:18 UTC
Maintainer of net-mgmt/collectd5,

Please note that PR ports/176691 has just been submitted.

If it contains a patch for an upgrade, an enhancement or a bug fix
you agree on, reply to this email stating that you approve the patch
and a committer will take care of it.

The full text of the PR can be found at:
    http://www.freebsd.org/cgi/query-pr.cgi?pr=ports/176691

-- 
Edwin Groothuis via the GNATS Auto Assign Tool
edwin@FreeBSD.org
Comment 2 Edwin Groothuis freebsd_committer 2013-03-06 15:00:19 UTC
State Changed
From-To: open->feedback

Awaiting maintainers feedback (via the GNATS Auto Assign Tool)
Comment 3 Beech Rintoul freebsd_committer 2013-03-07 05:36:22 UTC
Responsible Changed
From-To: freebsd-ports-bugs->beech

I'll take it
Comment 4 Mark Linimon freebsd_committer freebsd_triage 2013-03-11 10:39:41 UTC
State Changed
From-To: feedback->open

Maintainer approved.
Comment 5 Mark Linimon 2013-03-11 10:40:21 UTC
----- Forwarded message from Krzysztof Stryjek <ports@bsdserwis.com> -----

Date: Mon, 11 Mar 2013 11:15:31 +0100
From: Krzysztof Stryjek <ports@bsdserwis.com>
To: beech@FreeBSD.org
Cc: freebsd-ports-bugs@FreeBSD.org
Subject: Re: ports/176691: [PATCH] net-mgmt/collectd5: update to 5.2.1
User-Agent: Mutt/1.5.21 (2010-09-15)

Hello,

I'm approving this patch.

Greetings,
-- 
Krzysztof Stryjek
UNIX administrator/Juniper Networks Specialist
email: wtp (at) bsdserwis (dot) com
http://www.linkedin.com/in/KrzysztofStryjek
GPG fingerprint: 8BD7 40CE 8994 0BBE CE6C  91CD 1292 8959 DC61 0E76

In theory, there is no difference between theory and practice.
In practice, there is.
_______________________________________________
freebsd-ports-bugs@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-ports-bugs
To unsubscribe, send any mail to "freebsd-ports-bugs-unsubscribe@freebsd.org"


----- End forwarded message -----
Comment 6 Beech Rintoul 2013-03-12 02:09:22 UTC
One patch does not apply cleanly.

http://www.freebsdnorth.com/tb/errors/9-FreeBSD/collectd-5.2.1.log

Please fix.

-- 
--------------------------------------------------------------------------------------- 
Beech Rintoul - Committer / Developer - beech@FreeBSD.org 
/"\ ASCII Ribbon Campaign | FreeBSD Since 4.x 
\ / - NO HTML/RTF in e-mail | http://www.freebsd.org 
 X  - NO Word docs in e-mail | Latest Release: 
/ \ - http://www.freebsd.org/releases/9.1R/announce.html
---------------------------------------------------------------------------------------
Comment 7 William Grzybowski 2013-03-12 13:43:06 UTC
The patch that doesnt apply cfan be removed. Attached new patch.

-- 
William Grzybowski
------------------------------------------
Curitiba/PR - Brasil
Comment 8 dfilter service freebsd_committer 2013-03-12 18:29:43 UTC
Author: beech
Date: Tue Mar 12 18:29:33 2013
New Revision: 313994
URL: http://svnweb.freebsd.org/changeset/ports/313994

Log:
  - Update to 5.2.1
  - Fix build with clang
  
  PR:		ports/176691
  Submitted by:	William Grzybowski <william88@gmail.com>
  Approved by:	Krzysztof Stryjek <ports@bsdserwis.com> (maintainer)

Deleted:
  head/net-mgmt/collectd5/files/patch-src__network.c
Modified:
  head/net-mgmt/collectd5/Makefile
  head/net-mgmt/collectd5/distinfo   (contents, props changed)
  head/net-mgmt/collectd5/files/patch-configure.in
  head/net-mgmt/collectd5/files/patch-src__dns.c   (contents, props changed)
  head/net-mgmt/collectd5/files/patch-src__zfs_arc.c
  head/net-mgmt/collectd5/files/patch-version-gen.sh   (contents, props changed)
  head/net-mgmt/collectd5/pkg-plist

Modified: head/net-mgmt/collectd5/Makefile
==============================================================================
--- head/net-mgmt/collectd5/Makefile	Tue Mar 12 17:43:25 2013	(r313993)
+++ head/net-mgmt/collectd5/Makefile	Tue Mar 12 18:29:33 2013	(r313994)
@@ -1,14 +1,14 @@
 # Created by: Matt Peterson <matt@peterson.org>
 # $FreeBSD$
 PORTNAME=	collectd
-PORTVERSION=	5.1.0
-PORTREVISION=	5
+PORTVERSION=	5.2.1
 CATEGORIES=	net-mgmt
 MASTER_SITES=	http://collectd.org/files/
 
 MAINTAINER=	ports@bsdserwis.com
 COMMENT=	Systems & network statistics collection daemon
 
+USE_BZIP2=	yes
 USE_GMAKE=	yes
 GNU_CONFIGURE=	yes
 USE_AUTOTOOLS=	autoconf autoheader automake libltdl
@@ -64,7 +64,7 @@ RRDCACHED_DESC=		RRDTool Cached (require
 WRITE_GRAPHITE_DESC=	write_graphite
 WRITE_HTTP_DESC=	write_http
 
-MAN1=		collectd.1 collectd-nagios.1 collectdmon.1 collectdctl.1
+MAN1=		collectd.1 collectd-nagios.1 collectd-tg.1 collectdmon.1 collectdctl.1
 MAN5=		collectd.conf.5 collectd-email.5 collectd-exec.5 \
 		collectd-snmp.5 collectd-unixsock.5 collectd-perl.5 \
 		collectd-java.5 collectd-python.5 types.db.5 collectd-threshold.5

Modified: head/net-mgmt/collectd5/distinfo
==============================================================================
--- head/net-mgmt/collectd5/distinfo	Tue Mar 12 17:43:25 2013	(r313993)
+++ head/net-mgmt/collectd5/distinfo	Tue Mar 12 18:29:33 2013	(r313994)
@@ -1,2 +1,2 @@
-SHA256 (collectd-5.1.0.tar.gz) = 8e06c03c5467f3021565570fc86c931a43579aa6dad25ca5999d66850cd19927
-SIZE (collectd-5.1.0.tar.gz) = 1630323
+SHA256 (collectd-5.2.1.tar.bz2) = d82a5c302d2cfa0c3f7a3c7b7e37fb3faf42b17d2addae036cb819b6b25b9d98
+SIZE (collectd-5.2.1.tar.bz2) = 1395740

Modified: head/net-mgmt/collectd5/files/patch-configure.in
==============================================================================
--- head/net-mgmt/collectd5/files/patch-configure.in	Tue Mar 12 17:43:25 2013	(r313993)
+++ head/net-mgmt/collectd5/files/patch-configure.in	Tue Mar 12 18:29:33 2013	(r313994)
@@ -1,6 +1,8 @@
---- configure.in.orig	2012-04-02 08:04:58.000000000 +0000
-+++ configure.in	2012-11-23 22:00:22.424129087 +0000
-@@ -67,6 +67,9 @@
+diff --git configure.in configure.in
+index d50e802..4660787 100644
+--- configure.in
++++ configure.in
+@@ -67,6 +67,9 @@ case $host_os in
  	*openbsd*)
  	ac_system="OpenBSD"
  	;;
@@ -10,7 +12,7 @@
  	*aix*)
  	AC_DEFINE([KERNEL_AIX], 1, [True if program is to be compiled for a AIX kernel])
  	ac_system="AIX"
-@@ -98,7 +101,7 @@
+@@ -99,7 +102,7 @@ then
  fi
  
  # Where to install .pc files.
@@ -19,7 +21,7 @@
  AC_SUBST(pkgconfigdir)
  
  # Check for standards compliance mode
-@@ -1378,6 +1381,7 @@
+@@ -1386,6 +1389,7 @@ if test "x$with_kstat" = "xyes"
  then
  	AC_CHECK_LIB(kstat, kstat_open, [with_kstat="yes"], [with_kstat="no (libkstat not found)"], [])
  fi
@@ -27,7 +29,7 @@
  if test "x$with_kstat" = "xyes"
  then
  	AC_CHECK_LIB(devinfo, di_init, [with_devinfo="yes"], [with_devinfo="no (not found)"], [])
-@@ -1387,6 +1391,8 @@
+@@ -1395,6 +1399,8 @@ if test "x$with_kstat" = "xyes"
  then
  	AC_DEFINE(HAVE_LIBKSTAT, 1,
  		  [Define to 1 if you have the 'kstat' library (-lkstat)])
@@ -36,7 +38,7 @@
  fi
  AM_CONDITIONAL(BUILD_WITH_LIBKSTAT, test "x$with_kstat" = "xyes")
  AM_CONDITIONAL(BUILD_WITH_LIBDEVINFO, test "x$with_devinfo" = "xyes")
-@@ -1807,9 +1813,6 @@
+@@ -1815,9 +1821,6 @@ then
  		[with_libgcrypt="yes"],
  		[with_libgcrypt="no (symbol gcry_md_hash_buffer not found)"])
  
@@ -46,7 +48,7 @@
  fi
  
  CPPFLAGS="$SAVE_CPPFLAGS"
-@@ -3297,7 +3300,7 @@
+@@ -3376,7 +3379,7 @@ fi
  if test "x$with_python" = "xyes"
  then
  	AC_MSG_CHECKING([for Python LIBS])
@@ -55,7 +57,7 @@
  	python_config_status=$?
  
  	if test "$python_config_status" -ne 0 || test "x$python_library_flags" = "x"
-@@ -3312,7 +3315,7 @@
+@@ -3391,7 +3394,7 @@ fi
  if test "x$with_python" = "xyes"
  then
  	LDFLAGS="-L$python_library_path $LDFLAGS"
@@ -64,18 +66,16 @@
  
  	AC_CHECK_FUNC(PyObject_CallFunction,
  		      [with_python="yes"],
---- configure.in.orig	2013-01-03 17:07:22.000000000 +0000
-+++ configure.in	2013-01-03 17:07:58.000000000 +0000
-@@ -4057,7 +4057,7 @@
+@@ -4136,7 +4139,7 @@ AC_ARG_WITH(libvarnish, [AS_HELP_STRING([--with-libvarnish@<:@=PREFIX@:>@], [Pat
  	then
  		AC_MSG_NOTICE([Not checking for libvarnish: Manually configured])
  		with_libvarnish_cflags="-I$withval/include"
--		with_libvarnish_libs="-L$withval/lib -lvarnish -lvarnishcompat -lvarnishapi"
-+		with_libvarnish_libs="-L$withval/lib/varnish -lvarnish -lvarnishcompat -lvarnishapi"
+-		with_libvarnish_libs="-L$withval/lib -lvarnishapi"
++		with_libvarnish_libs="-L$withval/lib/varnish -lvarnishapi"
  		with_libvarnish="yes"
  	fi; fi; fi
  ],
-@@ -4580,6 +4583,12 @@
+@@ -4661,6 +4664,12 @@ then
  	plugin_zfs_arc="yes"
  fi
  

Modified: head/net-mgmt/collectd5/files/patch-src__dns.c
==============================================================================
--- head/net-mgmt/collectd5/files/patch-src__dns.c	Tue Mar 12 17:43:25 2013	(r313993)
+++ head/net-mgmt/collectd5/files/patch-src__dns.c	Tue Mar 12 18:29:33 2013	(r313994)
@@ -1,6 +1,8 @@
---- src/dns.c.orig	2008-09-05 15:26:02.000000000 +0000
-+++ src/dns.c	2008-09-05 15:25:55.000000000 +0000
-@@ -210,6 +210,15 @@
+diff --git src/dns.c src/dns.c
+index fe3b672..0c43985 100644
+--- src/dns.c
++++ src/dns.c
+@@ -223,6 +223,15 @@ static void *dns_child_loop (__attribute__((unused)) void *dummy)
  		pthread_sigmask (SIG_SETMASK, &sigmask, NULL);
  	}
  
@@ -8,11 +10,11 @@
 +#ifdef __sparc64__
 +	if (pcap_device == NULL)
 +	{
-+	    ERROR ("dns plugin: Interface required");
-+	    return (NULL);
++		ERROR ("dns plugin: Interface required");
++		return (NULL);
 +	}
 +#endif
 +
  	/* Passing `pcap_device == NULL' is okay and the same as passign "any" */
- 	DEBUG ("Creating PCAP object..");
- 	pcap_obj = pcap_open_live (pcap_device,
+ 	DEBUG ("dns plugin: Creating PCAP object..");
+ 	pcap_obj = pcap_open_live ((pcap_device != NULL) ? pcap_device : "any",

Modified: head/net-mgmt/collectd5/files/patch-src__zfs_arc.c
==============================================================================
--- head/net-mgmt/collectd5/files/patch-src__zfs_arc.c	Tue Mar 12 17:43:25 2013	(r313993)
+++ head/net-mgmt/collectd5/files/patch-src__zfs_arc.c	Tue Mar 12 18:29:33 2013	(r313994)
@@ -1,232 +1,237 @@
---- src/zfs_arc.c.orig	2012-04-02 08:04:58.000000000 +0000
-+++ src/zfs_arc.c	2012-11-24 17:54:21.715129054 +0000
-@@ -25,11 +25,57 @@
- #include "common.h"
- #include "plugin.h"
- 
-+#if !defined(HAVE_LIBKSTAT) && defined(HAVE_SYSCTLBYNAME)
-+#include <sys/sysctl.h>
-+#endif
+diff --git configure.in configure.in
+index 4660787..54fd9d8 100644
+--- configure.in
++++ configure.in
+@@ -4843,6 +4843,12 @@ then
+ 	plugin_users="yes"
+ fi
+ 
++# FreeBSD
++if test "x$have_struct_kinfo_proc_freebsd" = "xyes"
++then
++	plugin_zfs_arc="yes"
++fi
 +
- /*
+ m4_divert_once([HELP_ENABLE], [
+ collectd plugins:])
+ 
+diff --git src/zfs_arc.c src/zfs_arc.c
+index aa90019..17e8513 100644
+--- src/zfs_arc.c
++++ src/zfs_arc.c
+@@ -19,6 +19,8 @@
+  * Authors:
+  *   Anthony Dewhurst <dewhurst at gmail>
+  *   Aurelien Rougemont <beorn at gandi.net>
++ *   Brad Davis <brd at FreeBSD.org>
++ *   William Grzybowski <william88 at gmail>
+  **/
+ 
+ #include "collectd.h"
+@@ -29,7 +31,14 @@
   * Global variables
   */
--static kstat_t *ksp;
+ 
 +#if defined(HAVE_LIBKSTAT)
++static kstat_t *ksp;
  extern kstat_ctl_t *kc;
-+#endif
-+
-+/*
-+ * Context
-+ */
-+struct za_context {
-+#if defined(HAVE_LIBKSTAT)
-+    kstat_t *ksp;
-+#endif
-+};
++#elif defined(HAVE_SYSCTLBYNAME)
++  typedef void kstat_t;
++# include <sys/types.h>
++# include <sys/sysctl.h>
++#endif /* HAVE_SYSCTLBYNAME */
+ 
+ static void za_submit (const char* type, const char* type_instance, value_t* values, int values_len)
+ {
+@@ -57,37 +66,56 @@ static void za_submit_gauge (const char* type, const char* type_instance, gauge_
+ static int za_read_derive (kstat_t *ksp, const char *kstat_value,
+     const char *type, const char *type_instance)
+ {
+-  long long tmp;
+-  value_t v;
+-
+-  tmp = get_kstat_value (ksp, (char *)kstat_value);
+-  if (tmp == -1LL)
+-  {
+-    ERROR ("zfs_arc plugin: Reading kstat value \"%s\" failed.", kstat_value);
+-    return (-1);
+-  }
+-
+-  v.derive = (derive_t) tmp;
+-  za_submit (type, type_instance, /* values = */ &v, /* values_num = */ 1);
+-  return (0);
++	long long tmp;
++	value_t v;
 +
-+static int za_init_context(struct za_context *ctx)
-+{
 +#if defined(HAVE_LIBKSTAT)
-+	get_kstat (&ctx->ksp, "zfs", 0, "arcstats");
-+	if (ctx->ksp == NULL)
++	tmp = get_kstat_value (ksp, (char *)kstat_value);
++	if (tmp == -1LL)
 +	{
-+		ERROR ("zfs_arc plugin: Cannot find zfs:0:arcstats kstat.");
++		ERROR ("zfs_arc plugin: Reading kstat value \"%s\" failed.", kstat_value);
 +		return (-1);
 +	}
-+#endif
-+	return 0;
-+}
-+
-+static long long za_get_value(struct za_context *ctx, const char* name)
-+{
-+#if defined(HAVE_LIBKSTAT)
-+	return get_kstat_value(ctx->ksp, name);
 +#elif defined(HAVE_SYSCTLBYNAME)
-+	// kstat values are available on FreeBSD through sysctl
-+	char fullname[512];
-+	long long result = 0;
-+	size_t size = sizeof(result);
-+	ssnprintf(fullname, sizeof(fullname), "kstat.zfs.misc.arcstats.%s", name);
-+	if (sysctlbyname(fullname, &result, &size, NULL, 0) != 0 || size != sizeof(result))
-+	{
-+		ERROR ("zfs_arc plugin: Cannot find stats using sysctl");
-+		result = 0;
++	size_t size;
++	size = sizeof(tmp);
++	if (sysctlbyname(kstat_value, &tmp, &size, NULL, 0) < 0) {
++		ERROR ("zfs_arc plugin: Reading sysctl \"%s\" failed.", kstat_value);
++		return (-1);
 +	}
-+	return result;
-+#endif
-+}
- 
- static void za_submit (const char* type, const char* type_instance, value_t* values, int values_len)
- {
-@@ -54,13 +100,13 @@
- 	za_submit (type, type_instance, &vv, 1);
- }
- 
--static int za_read_derive (kstat_t *ksp, const char *kstat_value,
-+static int za_read_derive (struct za_context *ctx, const char *kstat_value,
-     const char *type, const char *type_instance)
- {
-   long long tmp;
-   value_t v;
- 
--  tmp = get_kstat_value (ksp, kstat_value);
-+  tmp = za_get_value (ctx, (char *)kstat_value);
-   if (tmp == -1LL)
-   {
-     ERROR ("zfs_arc plugin: Reading kstat value \"%s\" failed.", kstat_value);
-@@ -69,15 +115,16 @@
- 
-   v.derive = (derive_t) tmp;
-   za_submit (type, type_instance, /* values = */ &v, /* values_num = */ 1);
-+  return (0);
++#endif /* HAVE_LIBKSTAT */
++
++	v.derive = (derive_t) tmp;
++	za_submit (type, type_instance, /* values = */ &v, /* values_num = */ 1);
++	return (0);
  }
  
--static int za_read_gauge (kstat_t *ksp, const char *kstat_value,
-+static int za_read_gauge (struct za_context *ctx, const char *kstat_value,
+ static int za_read_gauge (kstat_t *ksp, const char *kstat_value,
      const char *type, const char *type_instance)
  {
-   long long tmp;
-   value_t v;
- 
--  tmp = get_kstat_value (ksp, kstat_value);
-+  tmp = za_get_value (ctx, (char *)kstat_value);
-   if (tmp == -1LL)
-   {
-     ERROR ("zfs_arc plugin: Reading kstat value \"%s\" failed.", kstat_value);
-@@ -86,18 +133,14 @@
- 
-   v.gauge = (gauge_t) tmp;
-   za_submit (type, type_instance, /* values = */ &v, /* values_num = */ 1);
-+  return (0);
- }
- 
--static void za_submit_ratio (const char* type_instance, gauge_t hits, gauge_t misses)
-+static void za_submit_ratio (const char* type_instance, long long hits, long long misses)
- {
- 	gauge_t ratio = NAN;
- 
--	if (!isfinite (hits) || (hits < 0.0))
--		hits = 0.0;
--	if (!isfinite (misses) || (misses < 0.0))
--		misses = 0.0;
+-  long long tmp;
+-  value_t v;
+-
+-  tmp = get_kstat_value (ksp, (char *)kstat_value);
+-  if (tmp == -1LL)
+-  {
+-    ERROR ("zfs_arc plugin: Reading kstat value \"%s\" failed.", kstat_value);
+-    return (-1);
+-  }
 -
--	if ((hits != 0.0) || (misses != 0.0))
-+	if ((hits > 0) || (misses > 0))
- 		ratio = hits / (hits + misses);
+-  v.gauge = (gauge_t) tmp;
+-  za_submit (type, type_instance, /* values = */ &v, /* values_num = */ 1);
+-  return (0);
++	long long tmp;
++	value_t v;
++
++#if defined(HAVE_LIBKSTAT)
++	tmp = get_kstat_value (ksp, (char *)kstat_value);
++	if (tmp == -1LL)
++	{
++		ERROR ("zfs_arc plugin: Reading kstat value \"%s\" failed.", kstat_value);
++		return (-1);
++	}
++
++#elif defined(HAVE_SYSCTLBYNAME)
++	size_t size;
++	size = sizeof(tmp);
++	if (sysctlbyname(kstat_value, &tmp, &size, NULL, 0) < 0) {
++		ERROR ("zfs_arc plugin: Reading sysctl \"%s\" failed.", kstat_value);
++		return (-1);
++	}
++#endif /* HAVE_LIBKSTAT */
++
++	v.gauge = (gauge_t) tmp;
++	za_submit (type, type_instance, /* values = */ &v, /* values_num = */ 1);
++	return (0);
+ }
  
+ static void za_submit_ratio (const char* type_instance, gauge_t hits, gauge_t misses)
+@@ -105,11 +133,67 @@ static void za_submit_ratio (const char* type_instance, gauge_t hits, gauge_t mi
  	za_submit_gauge ("cache_ratio", type_instance, ratio);
-@@ -105,56 +148,55 @@
- 
- static int za_read (void)
- {
--	gauge_t  arc_hits, arc_misses, l2_hits, l2_misses;
-+	long long  arc_hits, arc_misses, l2_hits, l2_misses;
- 	value_t  l2_io[2];
-+	struct za_context ctx;
- 
--	get_kstat (&ksp, "zfs", 0, "arcstats");
--	if (ksp == NULL)
-+	if (za_init_context (&ctx) < 0)
- 	{
--		ERROR ("zfs_arc plugin: Cannot find zfs:0:arcstats kstat.");
- 		return (-1);
- 	}
+ }
  
- 	/* Sizes */
--	za_read_gauge (ksp, "size",    "cache_size", "arc");
--	za_read_gauge (ksp, "l2_size", "cache_size", "L2");
-+	za_read_gauge (&ctx, "size",    "cache_size", "arc");
-+	za_read_gauge (&ctx, "l2_size", "cache_size", "L2");
- 
--        /* Operations */
--	za_read_derive (ksp, "allocated","cache_operation", "allocated");
--	za_read_derive (ksp, "deleted",  "cache_operation", "deleted");
--	za_read_derive (ksp, "stolen",   "cache_operation", "stolen");
--
--        /* Issue indicators */
--        za_read_derive (ksp, "mutex_miss", "mutex_operation", "miss");
--	za_read_derive (ksp, "hash_collisions", "hash_collisions", "");
+-static int za_read (void)
++#if defined(HAVE_SYSCTLBYNAME)
++static int za_read_freebsd (void)
++{
++	// Sizes
++	za_read_gauge (NULL, "kstat.zfs.misc.arcstats.size", "cache_size", "arc");
++	za_read_gauge (NULL, "kstat.zfs.misc.arcstats.l2_size", "cache_size", "L2");
++
 +	/* Operations */
-+	za_read_derive (&ctx, "allocated","cache_operation", "allocated");
-+	za_read_derive (&ctx, "deleted",  "cache_operation", "deleted");
-+	za_read_derive (&ctx, "stolen",   "cache_operation", "stolen");
++	za_read_derive (NULL, "kstat.zfs.misc.arcstats.allocated", "cache_operation", "allocated");
++	za_read_derive (NULL, "kstat.zfs.misc.arcstats.deleted",   "cache_operation", "deleted");
++	za_read_derive (NULL, "kstat.zfs.misc.arcstats.stolen",    "cache_operation", "stolen");
 +
 +	/* Issue indicators */
-+	za_read_derive (&ctx, "mutex_miss", "mutex_operation", "miss");
-+	za_read_derive (&ctx, "hash_collisions", "hash_collisions", "");
- 	
--        /* Evictions */
--	za_read_derive (ksp, "evict_l2_cached",     "cache_eviction", "cached");
--	za_read_derive (ksp, "evict_l2_eligible",   "cache_eviction", "eligible");
--	za_read_derive (ksp, "evict_l2_ineligible", "cache_eviction", "ineligible");
++	za_read_derive (NULL, "kstat.zfs.misc.arcstats.mutex_miss",      "mutex_operation", "miss");
++	za_read_derive (NULL, "kstat.zfs.misc.arcstats.hash_collisions", "hash_collisions", "");
++
 +	/* Evictions */
-+	za_read_derive (&ctx, "evict_l2_cached",     "cache_eviction", "cached");
-+	za_read_derive (&ctx, "evict_l2_eligible",   "cache_eviction", "eligible");
-+	za_read_derive (&ctx, "evict_l2_ineligible", "cache_eviction", "ineligible");
- 
- 	/* Hits / misses */
--	za_read_derive (ksp, "demand_data_hits",         "cache_result", "demand_data-hit");
--	za_read_derive (ksp, "demand_metadata_hits",     "cache_result", "demand_metadata-hit");
--	za_read_derive (ksp, "prefetch_data_hits",       "cache_result", "prefetch_data-hit");
--	za_read_derive (ksp, "prefetch_metadata_hits",   "cache_result", "prefetch_metadata-hit");
--	za_read_derive (ksp, "demand_data_misses",       "cache_result", "demand_data-miss");
--	za_read_derive (ksp, "demand_metadata_misses",   "cache_result", "demand_metadata-miss");
--	za_read_derive (ksp, "prefetch_data_misses",     "cache_result", "prefetch_data-miss");
--	za_read_derive (ksp, "prefetch_metadata_misses", "cache_result", "prefetch_metadata-miss");
-+	za_read_derive (&ctx, "demand_data_hits",         "cache_result", "demand_data-hit");
-+	za_read_derive (&ctx, "demand_metadata_hits",     "cache_result", "demand_metadata-hit");
-+	za_read_derive (&ctx, "prefetch_data_hits",       "cache_result", "prefetch_data-hit");
-+	za_read_derive (&ctx, "prefetch_metadata_hits",   "cache_result", "prefetch_metadata-hit");
-+	za_read_derive (&ctx, "demand_data_misses",       "cache_result", "demand_data-miss");
-+	za_read_derive (&ctx, "demand_metadata_misses",   "cache_result", "demand_metadata-miss");
-+	za_read_derive (&ctx, "prefetch_data_misses",     "cache_result", "prefetch_data-miss");
-+	za_read_derive (&ctx, "prefetch_metadata_misses", "cache_result", "prefetch_metadata-miss");
- 
- 	/* Ratios */
--	arc_hits   = (gauge_t) get_kstat_value(ksp, "hits");
--	arc_misses = (gauge_t) get_kstat_value(ksp, "misses");
--	l2_hits    = (gauge_t) get_kstat_value(ksp, "l2_hits");
--	l2_misses  = (gauge_t) get_kstat_value(ksp, "l2_misses");
-+	arc_hits   = za_get_value (&ctx, "hits");
-+	arc_misses = za_get_value (&ctx, "misses");
-+	l2_hits    = za_get_value (&ctx, "l2_hits");
-+	l2_misses  = za_get_value (&ctx, "l2_misses");
- 
- 	za_submit_ratio ("arc", arc_hits, arc_misses);
- 	za_submit_ratio ("L2", l2_hits, l2_misses);
- 
- 	/* I/O */
--	l2_io[0].derive = get_kstat_value(ksp, "l2_read_bytes");
--	l2_io[1].derive = get_kstat_value(ksp, "l2_write_bytes");
-+	l2_io[0].derive = za_get_value (&ctx, "l2_read_bytes");
-+	l2_io[1].derive = za_get_value (&ctx, "l2_write_bytes");
++	za_read_derive (NULL, "kstat.zfs.misc.arcstats.evict_l2_cached",     "cache_eviction", "cached");
++	za_read_derive (NULL, "kstat.zfs.misc.arcstats.evict_l2_eligible",   "cache_eviction", "eligible");
++	za_read_derive (NULL, "kstat.zfs.misc.arcstats.evict_l2_ineligible", "cache_eviction", "ineligible");
++
++	/* Hits / misses */
++	za_read_derive (NULL, "kstat.zfs.misc.arcstats.demand_data_hits",         "cache_result", "demand_data-hit");
++	za_read_derive (NULL, "kstat.zfs.misc.arcstats.demand_metadata_hits",     "cache_result", "demand_metadata-hit");
++	za_read_derive (NULL, "kstat.zfs.misc.arcstats.prefetch_data_hits",       "cache_result", "prefetch_data-hit");
++	za_read_derive (NULL, "kstat.zfs.misc.arcstats.prefetch_metadata_hits",   "cache_result", "prefetch_metadata-hit");
++	za_read_derive (NULL, "kstat.zfs.misc.arcstats.demand_data_misses",       "cache_result", "demand_data-miss");
++	za_read_derive (NULL, "kstat.zfs.misc.arcstats.demand_metadata_misses",   "cache_result", "demand_metadata-miss");
++	za_read_derive (NULL, "kstat.zfs.misc.arcstats.prefetch_data_misses",     "cache_result", "prefetch_data-miss");
++	za_read_derive (NULL, "kstat.zfs.misc.arcstats.prefetch_metadata_misses", "cache_result", "prefetch_metadata-miss");
++
++	/* Ratios */
++	gauge_t arc_hits;
++	gauge_t arc_misses;
++	gauge_t l2_hits;
++	gauge_t l2_misses;
++	value_t  l2_io[2];
++
++	size_t size;
++	size = sizeof(arc_hits);
++	sysctlbyname("kstat.zfs.misc.arcstats.hits", &arc_hits, &size, NULL, 0);
++	sysctlbyname("kstat.zfs.misc.arcstats.misses", &arc_misses, &size, NULL, 0);
++	sysctlbyname("kstat.zfs.misc.arcstats.l2_hits", &l2_hits, &size, NULL, 0);
++	sysctlbyname("kstat.zfs.misc.arcstats.l2_misses", &l2_misses, &size, NULL, 0);
++
++	za_submit_ratio ("arc", arc_hits, arc_misses);
++	za_submit_ratio ("L2", l2_hits, l2_misses);
++
++	/* I/O */
++	sysctlbyname("kstat.zfs.misc.arcstats.l2_read_bytes", &l2_io[0].derive, &size, NULL, 0);
++	sysctlbyname("kstat.zfs.misc.arcstats.l2_write_bytes", &l2_io[1].derive, &size, NULL, 0);
++
++	za_submit ("io_octets", "L2", l2_io, /* num values = */ 2);
++
++	return (0);
++}
++#elif defined(HAVE_LIBKSTAT)
++static int za_read_solaris (void)
+ {
+ 	gauge_t  arc_hits, arc_misses, l2_hits, l2_misses;
+ 	value_t  l2_io[2];
+-	kstat_t	 *ksp	= NULL;
  
- 	za_submit ("io_octets", "L2", l2_io, /* num values = */ 2);
+ 	get_kstat (&ksp, "zfs", 0, "arcstats");
+ 	if (ksp == NULL)
+@@ -163,15 +247,20 @@ static int za_read (void)
  
-@@ -163,14 +205,23 @@
+ 	return (0);
+ } /* int za_read */
++#endif
  
  static int za_init (void) /* {{{ */
  {
--	ksp = NULL;
--
 +#if defined(HAVE_LIBKSTAT)
++	ksp = NULL;
++
  	/* kstats chain already opened by update_kstat (using *kc), verify everything went fine. */
  	if (kc == NULL)
  	{
  		ERROR ("zfs_arc plugin: kstat chain control structure not available.");
  		return (-1);
  	}
-+#elif defined(HAVE_SYSCTLBYNAME)
-+	/* make sure ARC is available (arc_size is not null) */
-+	unsigned long long arc_size;
-+	size_t size = sizeof(arc_size);
-+	if (sysctlbyname("kstat.zfs.misc.arcstats.size", &arc_size, &size, NULL, 0) != 0 || arc_size == 0)
-+	{
-+		ERROR ("zfs_arc plugin: could not get ARC size using sysctl, is ARC enabled?");
-+		return (-1);
-+	}
-+#endif
++#endif /* HAVE_LIBKSTAT */
  
  	return (0);
  } /* }}} int za_init */
+@@ -179,7 +268,16 @@ static int za_init (void) /* {{{ */
+ void module_register (void)
+ {
+ 	plugin_register_init ("zfs_arc", za_init);
+-	plugin_register_read ("zfs_arc", za_read);
++
++#if defined(HAVE_LIBKSTAT)
++	plugin_register_read ("zfs_arc", za_read_solaris);
++#elif defined(HAVE_SYSCTLBYNAME)
++	plugin_register_read ("zfs_arc", za_read_freebsd);
++#else
++	ERROR ("Unable to determine which OS we are on");
++	return (-1);
++#endif /* HAVE_SYSCTLBYNAME */
++
+ } /* void module_register */
+ 
+ /* vmi: set sw=8 noexpandtab fdm=marker : */

Modified: head/net-mgmt/collectd5/files/patch-version-gen.sh
==============================================================================
--- head/net-mgmt/collectd5/files/patch-version-gen.sh	Tue Mar 12 17:43:25 2013	(r313993)
+++ head/net-mgmt/collectd5/files/patch-version-gen.sh	Tue Mar 12 18:29:33 2013	(r313994)
@@ -1,10 +1,12 @@
---- version-gen.sh.orig	2012-04-09 20:04:16.130293641 -0500
-+++ version-gen.sh	2012-04-09 20:05:04.927297496 -0500
-@@ -1,17 +1,3 @@
+diff --git version-gen.sh version-gen.sh
+index e344541..1ed7480 100755
+--- version-gen.sh
++++ version-gen.sh
+@@ -1,13 +1,3 @@
 -#!/usr/bin/env bash
 +#!/bin/sh
  
--DEFAULT_VERSION="5.1.0.git"
+-DEFAULT_VERSION="5.2.1.git"
 -
 -VERSION="`git describe 2> /dev/null | sed -e 's/^collectd-//'`"
 -
@@ -14,9 +16,5 @@
 -
 -VERSION="`echo \"$VERSION\" | sed -e 's/-/./g'`"
 -
--if test "x`uname -s`" = "xAIX" ; then
--	echo "$VERSION\c"
--else 
--	echo -n "$VERSION"
--fi
-+echo -n "5.1.0.git"
+-echo -n "$VERSION"
++echo -n "5.2.1.git"

Modified: head/net-mgmt/collectd5/pkg-plist
==============================================================================
--- head/net-mgmt/collectd5/pkg-plist	Tue Mar 12 17:43:25 2013	(r313993)
+++ head/net-mgmt/collectd5/pkg-plist	Tue Mar 12 18:29:33 2013	(r313994)
@@ -10,9 +10,14 @@ etc/collectd.conf.sample
 %%CGI%%@exec if [ ! -f %B/collection.conf ] ; then cp -p %B/%f %B/collection.conf; fi
 %%CGI%%@dirrmtry %%WWWDIR%%
 bin/collectd-nagios
+bin/collectd-tg
 bin/collectdctl
 include/collectd/client.h
 include/collectd/lcc_features.h
+include/collectd/network.h
+include/collectd/network_buffer.h
+lib/collectd/aggregation.la
+lib/collectd/aggregation.so
 %%APACHE%%lib/collectd/apache.la
 %%APACHE%%lib/collectd/apache.so
 %%APCUPS%%lib/collectd/apcups.la
@@ -123,7 +128,7 @@ lib/collectd/zfs_arc.la
 lib/collectd/zfs_arc.so
 lib/libcollectdclient.la
 lib/libcollectdclient.so
-lib/libcollectdclient.so.0
+lib/libcollectdclient.so.1
 libdata/pkgconfig/libcollectdclient.pc
 %%WRITE_HTTP%%lib/collectd/write_http.la
 %%WRITE_HTTP%%lib/collectd/write_http.so
_______________________________________________
svn-ports-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-ports-all
To unsubscribe, send any mail to "svn-ports-all-unsubscribe@freebsd.org"
Comment 9 Beech Rintoul freebsd_committer 2013-03-12 18:29:56 UTC
State Changed
From-To: open->closed

Committed, Thanks!