diff --git a/src/disk.c b/src/disk.c
index dc0232d4e8af39ba132ce0ed26c9faba74a2caca..e3638f22017d1b768b09127e6e513dd7ce2ce882 100644 (file)
--- a/src/disk.c
+++ b/src/disk.c
* Florian octo Forster <octo at verplant.org>
**/
-#include "disk.h"
-
-#if COLLECT_DISK
-#define MODULE_NAME "disk"
-
-#include "plugin.h"
+#include "collectd.h"
#include "common.h"
+#include "plugin.h"
-#ifdef KERNEL_LINUX
-typedef struct diskstats
-{
- char *name;
-
- unsigned int read_sectors;
- unsigned int write_sectors;
-
- unsigned long long read_bytes;
- unsigned long long write_bytes;
-
- struct diskstats *next;
-} diskstats_t;
-
-static diskstats_t *disklist;
-/* KERNEL_LINUX */
+#define MODULE_NAME "disk"
-#elif defined(HAVE_LIBKSTAT)
-#define MAX_NUMDISK 256
-extern kstat_ctl_t *kc;
-static kstat_t *ksp[MAX_NUMDISK];
-static int numdisk = 0;
-#endif /* HAVE_LIBKSTAT */
+#if defined(KERNEL_LINUX) || defined(HAVE_LIBKSTAT)
+# define DISK_HAVE_READ 1
+#else
+# define DISK_HAVE_READ 0
+#endif
static char *disk_filename_template = "disk-%s.rrd";
static char *part_filename_template = "partition-%s.rrd";
};
static int part_ds_num = 4;
-void disk_init (void)
+#ifdef KERNEL_LINUX
+typedef struct diskstats
+{
+ char *name;
+
+ unsigned int read_sectors;
+ unsigned int write_sectors;
+
+ unsigned long long read_bytes;
+ unsigned long long write_bytes;
+
+ struct diskstats *next;
+} diskstats_t;
+
+static diskstats_t *disklist;
+/* #endif defined(KERNEL_LINUX) */
+
+#elif defined(HAVE_LIBKSTAT)
+#define MAX_NUMDISK 256
+extern kstat_ctl_t *kc;
+static kstat_t *ksp[MAX_NUMDISK];
+static int numdisk = 0;
+#endif /* HAVE_LIBKSTAT */
+
+static void disk_init (void)
{
#ifdef HAVE_LIBKSTAT
kstat_t *ksp_chain;
return;
}
-void disk_write (char *host, char *inst, char *val)
+static void disk_write (char *host, char *inst, char *val)
{
char file[512];
int status;
rrd_update_file (host, file, val, disk_ds_def, disk_ds_num);
}
-void partition_write (char *host, char *inst, char *val)
+static void partition_write (char *host, char *inst, char *val)
{
char file[512];
int status;
}
#define BUFSIZE 512
-void disk_submit (char *disk_name,
+static void disk_submit (char *disk_name,
unsigned long long read_count,
unsigned long long read_merged,
unsigned long long read_bytes,
plugin_submit (MODULE_NAME, disk_name, buf);
}
-void partition_submit (char *part_name,
+#if DISK_HAVE_READ
+static void partition_submit (char *part_name,
unsigned long long read_count,
unsigned long long read_bytes,
unsigned long long write_count,
}
#undef BUFSIZE
-void disk_read (void)
+static void disk_read (void)
{
#ifdef KERNEL_LINUX
FILE *fh;
kio.writes,kio.nwritten);
}
#endif /* defined(HAVE_LIBKSTAT) */
-}
+} /* static void disk_read (void) */
+#else
+# define disk_read NULL
+#endif /* DISK_HAVE_READ */
void module_register (void)
{
}
#undef MODULE_NAME
-#endif /* COLLECT_DISK */