X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=src%2Fcpufreq.c;h=b92b1d095226c6a9deea13fa6731d5a68b213478;hb=0ba2f3a1a1db4ed7ce6f990b22b9605e19fc7ab9;hp=7a5c8fdf43079d68b1dc0352a5133f8bd5a75143;hpb=bd66a09b35da21dcb405650ae4587bf2ca811438;p=collectd.git diff --git a/src/cpufreq.c b/src/cpufreq.c index 7a5c8fdf..b92b1d09 100644 --- a/src/cpufreq.c +++ b/src/cpufreq.c @@ -26,20 +26,10 @@ #define MODULE_NAME "cpufreq" -#if defined(KERNEL_LINUX) -# define CPUFREQ_HAVE_READ 1 -#else -# define CPUFREQ_HAVE_READ 0 -#endif - -#if CPUFREQ_HAVE_READ -#ifdef KERNEL_LINUX static int num_cpu = 0; -#endif static int cpufreq_init (void) { -#ifdef KERNEL_LINUX int status; char filename[256]; @@ -47,10 +37,10 @@ static int cpufreq_init (void) while (1) { - status = snprintf (filename, sizeof (filename), + status = ssnprintf (filename, sizeof (filename), "/sys/devices/system/cpu/cpu%d/cpufreq/" "scaling_cur_freq", num_cpu); - if (status < 1 || status >= sizeof (filename)) + if ((status < 1) || ((unsigned int)status >= sizeof (filename))) break; if (access (filename, R_OK)) @@ -64,7 +54,6 @@ static int cpufreq_init (void) if (num_cpu == 0) plugin_unregister_read ("cpufreq"); -#endif /* defined(KERNEL_LINUX) */ return (0); } /* int cpufreq_init */ @@ -78,18 +67,17 @@ static void cpufreq_submit (int cpu_num, double value) vl.values = values; vl.values_len = 1; - vl.time = time (NULL); - strcpy (vl.host, hostname_g); - strcpy (vl.plugin, "cpufreq"); - snprintf (vl.type_instance, sizeof (vl.type_instance), + sstrncpy (vl.host, hostname_g, sizeof (vl.host)); + sstrncpy (vl.plugin, "cpufreq", sizeof (vl.plugin)); + sstrncpy (vl.type, "cpufreq", sizeof (vl.type)); + ssnprintf (vl.type_instance, sizeof (vl.type_instance), "%i", cpu_num); - plugin_dispatch_values ("cpufreq", &vl); + plugin_dispatch_values (&vl); } static int cpufreq_read (void) { -#ifdef KERNEL_LINUX int status; unsigned long long val; int i = 0; @@ -99,10 +87,10 @@ static int cpufreq_read (void) for (i = 0; i < num_cpu; i++) { - status = snprintf (filename, sizeof (filename), + status = ssnprintf (filename, sizeof (filename), "/sys/devices/system/cpu/cpu%d/cpufreq/" "scaling_cur_freq", i); - if (status < 1 || status >= sizeof (filename)) + if ((status < 1) || ((unsigned int)status >= sizeof (filename))) return (-1); if ((fp = fopen (filename, "r")) == NULL) @@ -138,17 +126,12 @@ static int cpufreq_read (void) cpufreq_submit (i, val); } -#endif /* defined(KERNEL_LINUX) */ return (0); } /* int cpufreq_read */ -#endif /* CPUFREQ_HAVE_READ */ -#undef BUFSIZE void module_register (void) { -#if CPUFREQ_HAVE_READ plugin_register_init ("cpufreq", cpufreq_init); plugin_register_read ("cpufreq", cpufreq_read); -#endif /* CPUFREQ_HAVE_READ */ }