X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=src%2Fswap.c;h=8c09e35f2f0246b43877b5fefd3d3062e6cd512f;hb=254ce1279f90858ab3d90b885defb95af3d6d7c1;hp=3018cb9e754460fca13aeaa524349d4f9e517e3a;hpb=44e4d530c8db2e078cd73ab254d1be41a5f2812c;p=collectd.git diff --git a/src/swap.c b/src/swap.c index 3018cb9e..8c09e35f 100644 --- a/src/swap.c +++ b/src/swap.c @@ -36,16 +36,13 @@ # include #endif -#if KERNEL_LINUX || HAVE_LIBKSTAT || defined(VM_SWAPUSAGE) || HAVE_LIBKVM || HAVE_LIBSTATGRAB -# define SWAP_HAVE_READ 1 -#else -# define SWAP_HAVE_READ 0 +#if HAVE_STATGRAB_H +# include #endif #undef MAX #define MAX(x,y) ((x) > (y) ? (x) : (y)) -#if SWAP_HAVE_READ #if KERNEL_LINUX /* No global variables */ /* #endif KERNEL_LINUX */ @@ -59,13 +56,17 @@ static kstat_t *ksp; /* No global variables */ /* #endif defined(VM_SWAPUSAGE) */ -#elif HAVE_LIBKVM +#elif HAVE_LIBKVM_GETSWAPINFO static kvm_t *kvm_obj = NULL; int kvm_pagesize; -/* #endif HAVE_LIBKVM */ +/* #endif HAVE_LIBKVM_GETSWAPINFO */ #elif HAVE_LIBSTATGRAB /* No global variables */ +/* #endif HAVE_LIBSTATGRAB */ + +#else +# error "No applicable input method." #endif /* HAVE_LIBSTATGRAB */ static int swap_init (void) @@ -85,7 +86,7 @@ static int swap_init (void) /* No init stuff */ /* #endif defined(VM_SWAPUSAGE) */ -#elif HAVE_LIBKVM +#elif HAVE_LIBKVM_GETSWAPINFO if (kvm_obj != NULL) { kvm_close (kvm_obj); @@ -104,7 +105,7 @@ static int swap_init (void) ERROR ("swap plugin: kvm_open failed."); return (-1); } -/* #endif HAVE_LIBKVM */ +/* #endif HAVE_LIBKVM_GETSWAPINFO */ #elif HAVE_LIBSTATGRAB /* No init stuff */ @@ -123,11 +124,12 @@ static void swap_submit (const char *type_instance, double value) vl.values = values; vl.values_len = 1; vl.time = time (NULL); - strcpy (vl.host, hostname_g); - strcpy (vl.plugin, "swap"); - strncpy (vl.type_instance, type_instance, sizeof (vl.type_instance)); + sstrncpy (vl.host, hostname_g, sizeof (vl.host)); + sstrncpy (vl.plugin, "swap", sizeof (vl.plugin)); + sstrncpy (vl.type, "swap", sizeof (vl.type)); + sstrncpy (vl.type_instance, type_instance, sizeof (vl.type_instance)); - plugin_dispatch_values ("swap", &vl); + plugin_dispatch_values (&vl); } /* void swap_submit */ static int swap_read (void) @@ -235,7 +237,7 @@ static int swap_read (void) swap_submit ("used", swap_alloc); swap_submit ("free", swap_avail); - swap_submit ("reserved", swap_resv - swap_alloc); + swap_submit ("reserved", swap_resv); /* #endif HAVE_LIBKSTAT */ #elif defined(VM_SWAPUSAGE) @@ -258,7 +260,7 @@ static int swap_read (void) swap_submit ("free", sw_usage.xsu_avail); /* #endif VM_SWAPUSAGE */ -#elif HAVE_LIBKVM +#elif HAVE_LIBKVM_GETSWAPINFO struct kvm_swap data_s; int status; @@ -284,7 +286,7 @@ static int swap_read (void) swap_submit ("used", used); swap_submit ("free", free); -/* #endif HAVE_LIBKVM */ +/* #endif HAVE_LIBKVM_GETSWAPINFO */ #elif HAVE_LIBSTATGRAB sg_swap_stats *swap; @@ -300,12 +302,9 @@ static int swap_read (void) return (0); } /* int swap_read */ -#endif /* SWAP_HAVE_READ */ void module_register (void) { -#if SWAP_HAVE_READ plugin_register_init ("swap", swap_init); plugin_register_read ("swap", swap_read); -#endif /* SWAP_HAVE_READ */ } /* void module_register */