@cryptotaxi247 / netdata-1 / commits / 3b8cfeecd

use usec_t for microseconds time variables

Also use USEC_PER_SEC for seconds to microseconds conversions. Signed-off-by: Rémi Lefèvre <remi.lefevre@parrot.com>

Rémi Lefèvre committed Dec 9, 2016 at 17:12 UTC 3b8cfeecd6ee3d94452315a5bb6525ddea06caff
38 files changed +176 -175
src/apps_plugin.c
+41 -40
@@ -611,35 +611,35 @@ int read_proc_pid_stat(struct pid_stat *p) {
611
612 last = p->minflt_raw;
613 p->minflt_raw = strtoull(procfile_lineword(ff, 0, 9), NULL, 10);
614 - p->minflt = (p->minflt_raw - last) * (1000000ULL * RATES_DETAIL) / (p->stat_collected_usec - p->last_stat_collected_usec);
614 + p->minflt = (p->minflt_raw - last) * (USEC_PER_SEC * RATES_DETAIL) / (p->stat_collected_usec - p->last_stat_collected_usec);
615
616 last = p->cminflt_raw;
617 p->cminflt_raw = strtoull(procfile_lineword(ff, 0, 10), NULL, 10);
618 - p->cminflt = (p->cminflt_raw - last) * (1000000ULL * RATES_DETAIL) / (p->stat_collected_usec - p->last_stat_collected_usec);
618 + p->cminflt = (p->cminflt_raw - last) * (USEC_PER_SEC * RATES_DETAIL) / (p->stat_collected_usec - p->last_stat_collected_usec);
619
620 last = p->majflt_raw;
621 p->majflt_raw = strtoull(procfile_lineword(ff, 0, 11), NULL, 10);
622 - p->majflt = (p->majflt_raw - last) * (1000000ULL * RATES_DETAIL) / (p->stat_collected_usec - p->last_stat_collected_usec);
622 + p->majflt = (p->majflt_raw - last) * (USEC_PER_SEC * RATES_DETAIL) / (p->stat_collected_usec - p->last_stat_collected_usec);
623
624 last = p->cmajflt_raw;
625 p->cmajflt_raw = strtoull(procfile_lineword(ff, 0, 12), NULL, 10);
626 - p->cmajflt = (p->cmajflt_raw - last) * (1000000ULL * RATES_DETAIL) / (p->stat_collected_usec - p->last_stat_collected_usec);
626 + p->cmajflt = (p->cmajflt_raw - last) * (USEC_PER_SEC * RATES_DETAIL) / (p->stat_collected_usec - p->last_stat_collected_usec);
627
628 last = p->utime_raw;
629 p->utime_raw = strtoull(procfile_lineword(ff, 0, 13), NULL, 10);
630 - p->utime = (p->utime_raw - last) * (1000000ULL * RATES_DETAIL) / (p->stat_collected_usec - p->last_stat_collected_usec);
630 + p->utime = (p->utime_raw - last) * (USEC_PER_SEC * RATES_DETAIL) / (p->stat_collected_usec - p->last_stat_collected_usec);
631
632 last = p->stime_raw;
633 p->stime_raw = strtoull(procfile_lineword(ff, 0, 14), NULL, 10);
634 - p->stime = (p->stime_raw - last) * (1000000ULL * RATES_DETAIL) / (p->stat_collected_usec - p->last_stat_collected_usec);
634 + p->stime = (p->stime_raw - last) * (USEC_PER_SEC * RATES_DETAIL) / (p->stat_collected_usec - p->last_stat_collected_usec);
635
636 last = p->cutime_raw;
637 p->cutime_raw = strtoull(procfile_lineword(ff, 0, 15), NULL, 10);
638 - p->cutime = (p->cutime_raw - last) * (1000000ULL * RATES_DETAIL) / (p->stat_collected_usec - p->last_stat_collected_usec);
638 + p->cutime = (p->cutime_raw - last) * (USEC_PER_SEC * RATES_DETAIL) / (p->stat_collected_usec - p->last_stat_collected_usec);
639
640 last = p->cstime_raw;
641 p->cstime_raw = strtoull(procfile_lineword(ff, 0, 16), NULL, 10);
642 - p->cstime = (p->cstime_raw - last) * (1000000ULL * RATES_DETAIL) / (p->stat_collected_usec - p->last_stat_collected_usec);
642 + p->cstime = (p->cstime_raw - last) * (USEC_PER_SEC * RATES_DETAIL) / (p->stat_collected_usec - p->last_stat_collected_usec);
643
644 // p->priority = strtoull(procfile_lineword(ff, 0, 17), NULL, 10);
645 // p->nice = strtoull(procfile_lineword(ff, 0, 18), NULL, 10);
@@ -670,11 +670,11 @@ int read_proc_pid_stat(struct pid_stat *p) {
670 if(enable_guest_charts) {
671 last = p->gtime_raw;
672 p->gtime_raw = strtoull(procfile_lineword(ff, 0, 42), NULL, 10);
673 - p->gtime = (p->gtime_raw - last) * (1000000ULL * RATES_DETAIL) / (p->stat_collected_usec - p->last_stat_collected_usec);
673 + p->gtime = (p->gtime_raw - last) * (USEC_PER_SEC * RATES_DETAIL) / (p->stat_collected_usec - p->last_stat_collected_usec);
674
675 last = p->cgtime_raw;
676 p->cgtime_raw = strtoull(procfile_lineword(ff, 0, 43), NULL, 10);
677 - p->cgtime = (p->cgtime_raw - last) * (1000000ULL * RATES_DETAIL) / (p->stat_collected_usec - p->last_stat_collected_usec);
677 + p->cgtime = (p->cgtime_raw - last) * (USEC_PER_SEC * RATES_DETAIL) / (p->stat_collected_usec - p->last_stat_collected_usec);
678
679 if (show_guest_time || p->gtime || p->cgtime) {
680 p->utime -= (p->utime >= p->gtime) ? p->gtime : p->utime;
@@ -780,31 +780,31 @@ int read_proc_pid_io(struct pid_stat *p) {
780
781 last = p->io_logical_bytes_read_raw;
782 p->io_logical_bytes_read_raw = strtoull(procfile_lineword(ff, 0, 1), NULL, 10);
783 - p->io_logical_bytes_read = (p->io_logical_bytes_read_raw - last) * (1000000ULL * RATES_DETAIL) / (p->io_collected_usec - p->last_io_collected_usec);
783 + p->io_logical_bytes_read = (p->io_logical_bytes_read_raw - last) * (USEC_PER_SEC * RATES_DETAIL) / (p->io_collected_usec - p->last_io_collected_usec);
784
785 last = p->io_logical_bytes_written_raw;
786 p->io_logical_bytes_written_raw = strtoull(procfile_lineword(ff, 1, 1), NULL, 10);
787 - p->io_logical_bytes_written = (p->io_logical_bytes_written_raw - last) * (1000000ULL * RATES_DETAIL) / (p->io_collected_usec - p->last_io_collected_usec);
787 + p->io_logical_bytes_written = (p->io_logical_bytes_written_raw - last) * (USEC_PER_SEC * RATES_DETAIL) / (p->io_collected_usec - p->last_io_collected_usec);
788
789 // last = p->io_read_calls_raw;
790 // p->io_read_calls_raw = strtoull(procfile_lineword(ff, 2, 1), NULL, 10);
791 - // p->io_read_calls = (p->io_read_calls_raw - last) * (1000000ULL * RATES_DETAIL) / (p->io_collected_usec - p->last_io_collected_usec);
791 + // p->io_read_calls = (p->io_read_calls_raw - last) * (USEC_PER_SEC * RATES_DETAIL) / (p->io_collected_usec - p->last_io_collected_usec);
792
793 // last = p->io_write_calls_raw;
794 // p->io_write_calls_raw = strtoull(procfile_lineword(ff, 3, 1), NULL, 10);
795 - // p->io_write_calls = (p->io_write_calls_raw - last) * (1000000ULL * RATES_DETAIL) / (p->io_collected_usec - p->last_io_collected_usec);
795 + // p->io_write_calls = (p->io_write_calls_raw - last) * (USEC_PER_SEC * RATES_DETAIL) / (p->io_collected_usec - p->last_io_collected_usec);
796
797 last = p->io_storage_bytes_read_raw;
798 p->io_storage_bytes_read_raw = strtoull(procfile_lineword(ff, 4, 1), NULL, 10);
799 - p->io_storage_bytes_read = (p->io_storage_bytes_read_raw - last) * (1000000ULL * RATES_DETAIL) / (p->io_collected_usec - p->last_io_collected_usec);
799 + p->io_storage_bytes_read = (p->io_storage_bytes_read_raw - last) * (USEC_PER_SEC * RATES_DETAIL) / (p->io_collected_usec - p->last_io_collected_usec);
800
801 last = p->io_storage_bytes_written_raw;
802 p->io_storage_bytes_written_raw = strtoull(procfile_lineword(ff, 5, 1), NULL, 10);
803 - p->io_storage_bytes_written = (p->io_storage_bytes_written_raw - last) * (1000000ULL * RATES_DETAIL) / (p->io_collected_usec - p->last_io_collected_usec);
803 + p->io_storage_bytes_written = (p->io_storage_bytes_written_raw - last) * (USEC_PER_SEC * RATES_DETAIL) / (p->io_collected_usec - p->last_io_collected_usec);
804
805 // last = p->io_cancelled_write_bytes_raw;
806 // p->io_cancelled_write_bytes_raw = strtoull(procfile_lineword(ff, 6, 1), NULL, 10);
807 - // p->io_cancelled_write_bytes = (p->io_cancelled_write_bytes_raw - last) * (1000000ULL * RATES_DETAIL) / (p->io_collected_usec - p->last_io_collected_usec);
807 + // p->io_cancelled_write_bytes = (p->io_cancelled_write_bytes_raw - last) * (USEC_PER_SEC * RATES_DETAIL) / (p->io_collected_usec - p->last_io_collected_usec);
808
809 if(unlikely(global_iterations_counter == 1)) {
810 p->io_logical_bytes_read = 0;
@@ -836,7 +836,8 @@ unsigned long long global_gtime = 0;
836 int read_proc_stat() {
837 static char filename[FILENAME_MAX + 1] = "";
838 static procfile *ff = NULL;
839 - static unsigned long long utime_raw = 0, stime_raw = 0, gtime_raw = 0, gntime_raw = 0, ntime_raw = 0, collected_usec = 0, last_collected_usec = 0;
839 + static unsigned long long utime_raw = 0, stime_raw = 0, gtime_raw = 0, gntime_raw = 0, ntime_raw = 0;
840 + static usec_t collected_usec = 0, last_collected_usec = 0;
841
842 if(unlikely(!ff)) {
843 snprintfz(filename, FILENAME_MAX, "%s/proc/stat", global_host_prefix);
@@ -856,26 +857,26 @@ int read_proc_stat() {
857
858 last = utime_raw;
859 utime_raw = strtoull(procfile_lineword(ff, 0, 1), NULL, 10);
859 - global_utime = (utime_raw - last) * (1000000ULL * RATES_DETAIL) / (collected_usec - last_collected_usec);
860 + global_utime = (utime_raw - last) * (USEC_PER_SEC * RATES_DETAIL) / (collected_usec - last_collected_usec);
861
862 // nice time, on user time
863 last = ntime_raw;
864 ntime_raw = strtoull(procfile_lineword(ff, 0, 2), NULL, 10);
864 - global_utime += (ntime_raw - last) * (1000000ULL * RATES_DETAIL) / (collected_usec - last_collected_usec);
865 + global_utime += (ntime_raw - last) * (USEC_PER_SEC * RATES_DETAIL) / (collected_usec - last_collected_usec);
866
867 last = stime_raw;
868 stime_raw = strtoull(procfile_lineword(ff, 0, 3), NULL, 10);
868 - global_stime = (stime_raw - last) * (1000000ULL * RATES_DETAIL) / (collected_usec - last_collected_usec);
869 + global_stime = (stime_raw - last) * (USEC_PER_SEC * RATES_DETAIL) / (collected_usec - last_collected_usec);
870
871 last = gtime_raw;
872 gtime_raw = strtoull(procfile_lineword(ff, 0, 10), NULL, 10);
872 - global_gtime = (gtime_raw - last) * (1000000ULL * RATES_DETAIL) / (collected_usec - last_collected_usec);
873 + global_gtime = (gtime_raw - last) * (USEC_PER_SEC * RATES_DETAIL) / (collected_usec - last_collected_usec);
874
875 if(enable_guest_charts) {
876 // guest nice time, on guest time
877 last = gntime_raw;
878 gntime_raw = strtoull(procfile_lineword(ff, 0, 11), NULL, 10);
878 - global_gtime += (gntime_raw - last) * (1000000ULL * RATES_DETAIL) / (collected_usec - last_collected_usec);
879 + global_gtime += (gntime_raw - last) * (USEC_PER_SEC * RATES_DETAIL) / (collected_usec - last_collected_usec);
880
881 // remove guest time from user time
882 global_utime -= (global_utime > global_gtime) ? global_gtime : global_utime;
@@ -1441,11 +1442,11 @@ void process_exited_processes() {
1442 );
1443 }
1444
1444 - p->utime_raw = utime * (p->stat_collected_usec - p->last_stat_collected_usec) / (1000000ULL * RATES_DETAIL);
1445 - p->stime_raw = stime * (p->stat_collected_usec - p->last_stat_collected_usec) / (1000000ULL * RATES_DETAIL);
1446 - p->gtime_raw = gtime * (p->stat_collected_usec - p->last_stat_collected_usec) / (1000000ULL * RATES_DETAIL);
1447 - p->minflt_raw = minflt * (p->stat_collected_usec - p->last_stat_collected_usec) / (1000000ULL * RATES_DETAIL);
1448 - p->majflt_raw = majflt * (p->stat_collected_usec - p->last_stat_collected_usec) / (1000000ULL * RATES_DETAIL);
1445 + p->utime_raw = utime * (p->stat_collected_usec - p->last_stat_collected_usec) / (USEC_PER_SEC * RATES_DETAIL);
1446 + p->stime_raw = stime * (p->stat_collected_usec - p->last_stat_collected_usec) / (USEC_PER_SEC * RATES_DETAIL);
1447 + p->gtime_raw = gtime * (p->stat_collected_usec - p->last_stat_collected_usec) / (USEC_PER_SEC * RATES_DETAIL);
1448 + p->minflt_raw = minflt * (p->stat_collected_usec - p->last_stat_collected_usec) / (USEC_PER_SEC * RATES_DETAIL);
1449 + p->majflt_raw = majflt * (p->stat_collected_usec - p->last_stat_collected_usec) / (USEC_PER_SEC * RATES_DETAIL);
1450 p->cutime_raw = p->cstime_raw = p->cgtime_raw = p->cminflt_raw = p->cmajflt_raw = 0;
1451
1452 if(unlikely(debug))
@@ -2147,16 +2148,16 @@ static inline void send_END(void) {
2148 double utime_fix_ratio = 1.0, stime_fix_ratio = 1.0, gtime_fix_ratio = 1.0, cutime_fix_ratio = 1.0, cstime_fix_ratio = 1.0, cgtime_fix_ratio = 1.0;
2149 double minflt_fix_ratio = 1.0, majflt_fix_ratio = 1.0, cminflt_fix_ratio = 1.0, cmajflt_fix_ratio = 1.0;
2150
2150 -unsigned long long send_resource_usage_to_netdata() {
2151 +usec_t send_resource_usage_to_netdata() {
2152 static struct timeval last = { 0, 0 };
2153 static struct rusage me_last;
2154
2155 struct timeval now;
2156 struct rusage me;
2157
2157 - unsigned long long usec;
2158 - unsigned long long cpuuser;
2159 - unsigned long long cpusyst;
2158 + usec_t usec;
2159 + usec_t cpuuser;
2160 + usec_t cpusyst;
2161
2162 if(!last.tv_sec) {
2163 now_realtime_timeval(&last);
@@ -2164,7 +2165,7 @@ unsigned long long send_resource_usage_to_netdata() {
2165
2166 // the first time, give a zero to allow
2167 // netdata calibrate to the current time
2167 - // usec = update_every * 1000000ULL;
2168 + // usec = update_every * USEC_PER_SEC;
2169 usec = 0ULL;
2170 cpuuser = 0;
2171 cpusyst = 0;
@@ -2174,8 +2175,8 @@ unsigned long long send_resource_usage_to_netdata() {
2175 getrusage(RUSAGE_SELF, &me);
2176
2177 usec = dt_usec(&now, &last);
2177 - cpuuser = me.ru_utime.tv_sec * 1000000ULL + me.ru_utime.tv_usec;
2178 - cpusyst = me.ru_stime.tv_sec * 1000000ULL + me.ru_stime.tv_usec;
2178 + cpuuser = me.ru_utime.tv_sec * USEC_PER_SEC + me.ru_utime.tv_usec;
2179 + cpusyst = me.ru_stime.tv_sec * USEC_PER_SEC + me.ru_stime.tv_usec;
2180
2181 memmove(&last, &now, sizeof(struct timeval));
2182 memmove(&me_last, &me, sizeof(struct rusage));
@@ -2381,7 +2382,7 @@ void normalize_data(struct target *root) {
2382 }
2383 }
2384
2384 -void send_collected_data_to_netdata(struct target *root, const char *type, unsigned long long usec) {
2385 +void send_collected_data_to_netdata(struct target *root, const char *type, usec_t usec) {
2386 struct target *w;
2387
2388 send_BEGIN(type, "cpu", usec);
@@ -2840,11 +2841,11 @@ int main(int argc, char **argv)
2841 , RATES_DETAIL
2842 );
2843
2843 - unsigned long long step = update_every * 1000000ULL;
2844 + usec_t step = update_every * USEC_PER_SEC;
2845 global_iterations_counter = 1;
2846 for(;1; global_iterations_counter++) {
2846 - unsigned long long now = now_realtime_usec();
2847 - unsigned long long next = now - (now % step) + step;
2847 + usec_t now = now_realtime_usec();
2848 + usec_t next = now - (now % step) + step;
2849
2850 while(now < next) {
2851 sleep_usec(next - now);
@@ -2860,7 +2861,7 @@ int main(int argc, char **argv)
2861 calculate_netdata_statistics();
2862 normalize_data(apps_groups_root_target);
2863
2863 - unsigned long long dt = send_resource_usage_to_netdata();
2864 + usec_t dt = send_resource_usage_to_netdata();
2865
2866 // this is smart enough to show only newly added apps, when needed
2867 send_charts_updates_to_netdata(apps_groups_root_target, "apps", "Apps");
src/backends.c
+8 -8
@@ -395,9 +395,9 @@ void *backends_main(void *ptr) {
395
396 info("BACKEND configured ('%s' on '%s' sending '%s' data, every %d seconds, as host '%s', with prefix '%s')", type, destination, source, frequency, hostname, prefix);
397
398 - unsigned long long step_ut = frequency * 1000000ULL;
399 - unsigned long long random_ut = now_realtime_usec() % (step_ut / 2);
400 - time_t before = (time_t)((now_realtime_usec() - step_ut) / 10000000ULL);
398 + usec_t step_ut = frequency * USEC_PER_SEC;
399 + usec_t random_ut = now_realtime_usec() % (step_ut / 2);
400 + time_t before = (time_t)((now_realtime_usec() - step_ut) / USEC_PER_SEC);
401 time_t after = before;
402 int failures = 0;
403
@@ -405,9 +405,9 @@ void *backends_main(void *ptr) {
405 // ------------------------------------------------------------------------
406 // wait for the next iteration point
407
408 - unsigned long long now_ut = now_realtime_usec();
409 - unsigned long long next_ut = now_ut - (now_ut % step_ut) + step_ut;
410 - before = (time_t)(next_ut / 1000000ULL);
408 + usec_t now_ut = now_realtime_usec();
409 + usec_t next_ut = now_ut - (now_ut % step_ut) + step_ut;
410 + before = (time_t)(next_ut / USEC_PER_SEC);
411
412 // add a little delay (1/4 of the step) plus some randomness
413 next_ut += (step_ut / 4) + random_ut;
@@ -465,7 +465,7 @@ void *backends_main(void *ptr) {
465 // connect to a backend server
466
467 if(unlikely(sock == -1)) {
468 - unsigned long long start_ut = now_realtime_usec();
468 + usec_t start_ut = now_realtime_usec();
469 const char *s = destination;
470 while(*s) {
471 const char *e = s;
@@ -496,7 +496,7 @@ void *backends_main(void *ptr) {
496
497 if(likely(sock != -1)) {
498 size_t len = buffer_strlen(b);
499 - unsigned long long start_ut = now_realtime_usec();
499 + usec_t start_ut = now_realtime_usec();
500 int flags = 0;
501 #ifdef MSG_NOSIGNAL
502 flags += MSG_NOSIGNAL;
src/common.c
+1 -1
@@ -197,7 +197,7 @@ void freez(void *ptr) {
197 free(ptr);
198 }
199
200 -int sleep_usec(unsigned long long usec) {
200 +int sleep_usec(usec_t usec) {
201
202 #ifndef NETDATA_WITH_USLEEP
203 // we expect microseconds (1.000.000 per second)
src/common.h
+2 -2
@@ -100,6 +100,7 @@
100 #endif // __GNUC__
101
102 #include "avl.h"
103 +#include "clocks.h"
104 #include "log.h"
105 #include "global_statistics.h"
106 #include "storage_number.h"
@@ -123,7 +124,6 @@
124 #include "plugin_tc.h"
125 #include "plugins_d.h"
126
126 -#include "clocks.h"
127 #include "eval.h"
128 #include "health.h"
129
@@ -191,7 +191,7 @@ extern int enable_ksm;
191
192 extern pid_t gettid(void);
193
194 -extern int sleep_usec(unsigned long long usec);
194 +extern int sleep_usec(usec_t usec);
195
196 extern char *fgets_trim_len(char *buf, size_t buf_size, FILE *fp, size_t *len);
197
src/freebsd_sysctl.c
+3 -3
@@ -12,7 +12,7 @@
12 // FreeBSD calculates load averages once every 5 seconds
13 #define MIN_LOADAVG_UPDATE_EVERY 5
14
15 -int do_freebsd_sysctl(int update_every, unsigned long long dt) {
15 +int do_freebsd_sysctl(int update_every, usec_t dt) {
16 (void)dt;
17
18 static int do_cpu = -1, do_cpu_cores = -1, do_interrupts = -1, do_context = -1, do_forks = -1, do_processes = -1,
@@ -42,7 +42,7 @@ int do_freebsd_sysctl(int update_every, unsigned long long dt) {
42 int i;
43
44 // NEEDED BY: do_loadavg
45 - static unsigned long long last_loadavg_usec = 0;
45 + static usec_t last_loadavg_usec = 0;
46 struct loadavg sysload;
47
48 // NEEDED BY: do_cpu, do_cpu_cores
@@ -125,7 +125,7 @@ int do_freebsd_sysctl(int update_every, unsigned long long dt) {
125 }
126 }
127
128 - last_loadavg_usec = st->update_every * 1000000ULL;
128 + last_loadavg_usec = st->update_every * USEC_PER_SEC;
129 }
130 else last_loadavg_usec -= dt;
131
src/health.c
+1 -1
@@ -3101,7 +3101,7 @@ void *health_main(void *ptr) {
3101 if(now < next_run) {
3102 debug(D_HEALTH, "Health monitoring iteration no %u done. Next iteration in %d secs",
3103 loop, (int) (next_run - now));
3104 - sleep_usec(1000000 * (unsigned long long) (next_run - now));
3104 + sleep_usec(USEC_PER_SEC * (usec_t) (next_run - now));
3105 }
3106 else {
3107 debug(D_HEALTH, "Health monitoring iteration no %u done. Next iteration now", loop);
src/ipc.c
+1 -1
@@ -160,7 +160,7 @@ static inline int ipc_sem_get_status(struct ipc_status *st) {
160 return 0;
161 }
162
163 -int do_ipc(int update_every, unsigned long long dt) {
163 +int do_ipc(int update_every, usec_t dt) {
164 (void)dt;
165
166 static int initialized = 0, read_limits_next = 0;
src/ipc.h
+1 -1
@@ -1,7 +1,7 @@
1 #ifndef NETDATA_PLUGIN_IPC_H
2 #define NETDATA_PLUGIN_IPC_H 1
3
4 -extern int do_ipc(int update_every, unsigned long long dt);
4 +extern int do_ipc(int update_every, usec_t dt);
5
6 #endif /* NETDATA_PLUGIN_IPC_H */
7
src/plugin_checks.c
+3 -3
@@ -12,7 +12,7 @@ void *checks_main(void *ptr)
12 if(pthread_setcancelstate(PTHREAD_CANCEL_ENABLE, NULL) != 0)
13 error("Cannot set pthread cancel state to ENABLE.");
14
15 - unsigned long long usec = 0, susec = rrd_update_every * 1000000ULL, loop_usec = 0, total_susec = 0;
15 + usec_t usec = 0, susec = rrd_update_every * USEC_PER_SEC, loop_usec = 0, total_susec = 0;
16 struct timeval now, last, loop;
17
18 RRDSET *check1, *check2, *check3, *apps_cpu = NULL;
@@ -40,8 +40,8 @@ void *checks_main(void *ptr)
40 usec = loop_usec - susec;
41 debug(D_PROCNETDEV_LOOP, "CHECK: last loop took %llu usec (worked for %llu, sleeped for %llu).", loop_usec, usec, susec);
42
43 - if(usec < (rrd_update_every * 1000000ULL / 2ULL)) susec = (rrd_update_every * 1000000ULL) - usec;
44 - else susec = rrd_update_every * 1000000ULL / 2ULL;
43 + if(usec < (rrd_update_every * USEC_PER_SEC / 2ULL)) susec = (rrd_update_every * USEC_PER_SEC) - usec;
44 + else susec = rrd_update_every * USEC_PER_SEC / 2ULL;
45
46 // --------------------------------------------------------------------
47 // Calculate loop time
src/plugin_freebsd.c
+3 -3
@@ -25,10 +25,10 @@ void *freebsd_main(void *ptr)
25 // keep track of the time each module was called
26 unsigned long long sutime_freebsd_sysctl = 0ULL;
27
28 - unsigned long long step = rrd_update_every * 1000000ULL;
28 + usec_t step = rrd_update_every * USEC_PER_SEC;
29 for(;;) {
30 - unsigned long long now = now_realtime_usec();
31 - unsigned long long next = now - (now % step) + step;
30 + usec_t now = now_realtime_usec();
31 + usec_t next = now - (now % step) + step;
32
33 while(now < next) {
34 sleep_usec(next - now);
src/plugin_freebsd.h
+1 -1
@@ -7,6 +7,6 @@ void *freebsd_main(void *ptr);
7
8 int getsysctl(const char *name, void *ptr, size_t len);
9
10 -extern int do_freebsd_sysctl(int update_every, unsigned long long dt);
10 +extern int do_freebsd_sysctl(int update_every, usec_t dt);
11
12 #endif /* NETDATA_PLUGIN_FREEBSD_H */
src/plugin_idlejitter.c
+2 -2
@@ -29,9 +29,9 @@ void *cpuidlejitter_main(void *ptr)
29 struct timeval before, after;
30 unsigned long long counter;
31 for(counter = 0; 1 ;counter++) {
32 - unsigned long long usec = 0, susec = 0;
32 + usec_t usec = 0, susec = 0;
33
34 - while(susec < (rrd_update_every * 1000000ULL)) {
34 + while(susec < (rrd_update_every * USEC_PER_SEC)) {
35
36 now_realtime_timeval(&before);
37 sleep_usec(sleep_ms * 1000);
src/plugin_nfacct.c
+1 -1
@@ -90,7 +90,7 @@ void *nfacct_main(void *ptr) {
90 // ------------------------------------------------------------------------
91
92 struct timeval last, now;
93 - unsigned long long usec = 0, susec = 0;
93 + usec_t usec = 0, susec = 0;
94 RRDSET *st = NULL;
95
96 now_realtime_timeval(&last);
src/plugin_proc.c
+24 -24
@@ -40,31 +40,31 @@ void *proc_main(void *ptr)
40 int vdo_cpu_netdata = !config_get_boolean("plugin:proc", "netdata server resources", 1);
41
42 // keep track of the time each module was called
43 - unsigned long long sutime_proc_net_dev = 0ULL;
44 - unsigned long long sutime_proc_diskstats = 0ULL;
45 - unsigned long long sutime_proc_net_snmp = 0ULL;
46 - unsigned long long sutime_proc_net_snmp6 = 0ULL;
47 - unsigned long long sutime_proc_net_netstat = 0ULL;
48 - unsigned long long sutime_proc_net_stat_conntrack = 0ULL;
49 - unsigned long long sutime_proc_net_ip_vs_stats = 0ULL;
50 - unsigned long long sutime_proc_net_stat_synproxy = 0ULL;
51 - unsigned long long sutime_proc_stat = 0ULL;
52 - unsigned long long sutime_proc_meminfo = 0ULL;
53 - unsigned long long sutime_proc_vmstat = 0ULL;
54 - unsigned long long sutime_proc_net_rpc_nfs = 0ULL;
55 - unsigned long long sutime_proc_net_rpc_nfsd = 0ULL;
56 - unsigned long long sutime_proc_sys_kernel_random_entropy_avail = 0ULL;
57 - unsigned long long sutime_proc_interrupts = 0ULL;
58 - unsigned long long sutime_proc_softirqs = 0ULL;
59 - unsigned long long sutime_proc_net_softnet_stat = 0ULL;
60 - unsigned long long sutime_proc_loadavg = 0ULL;
61 - unsigned long long sutime_ipc = 0ULL;
62 - unsigned long long sutime_sys_kernel_mm_ksm = 0ULL;
63 -
64 - unsigned long long step = rrd_update_every * 1000000ULL;
43 + usec_t sutime_proc_net_dev = 0ULL;
44 + usec_t sutime_proc_diskstats = 0ULL;
45 + usec_t sutime_proc_net_snmp = 0ULL;
46 + usec_t sutime_proc_net_snmp6 = 0ULL;
47 + usec_t sutime_proc_net_netstat = 0ULL;
48 + usec_t sutime_proc_net_stat_conntrack = 0ULL;
49 + usec_t sutime_proc_net_ip_vs_stats = 0ULL;
50 + usec_t sutime_proc_net_stat_synproxy = 0ULL;
51 + usec_t sutime_proc_stat = 0ULL;
52 + usec_t sutime_proc_meminfo = 0ULL;
53 + usec_t sutime_proc_vmstat = 0ULL;
54 + usec_t sutime_proc_net_rpc_nfs = 0ULL;
55 + usec_t sutime_proc_net_rpc_nfsd = 0ULL;
56 + usec_t sutime_proc_sys_kernel_random_entropy_avail = 0ULL;
57 + usec_t sutime_proc_interrupts = 0ULL;
58 + usec_t sutime_proc_softirqs = 0ULL;
59 + usec_t sutime_proc_net_softnet_stat = 0ULL;
60 + usec_t sutime_proc_loadavg = 0ULL;
61 + usec_t sutime_ipc = 0ULL;
62 + usec_t sutime_sys_kernel_mm_ksm = 0ULL;
63 +
64 + usec_t step = rrd_update_every * USEC_PER_SEC;
65 for(;;) {
66 - unsigned long long now = now_realtime_usec();
67 - unsigned long long next = now - (now % step) + step;
66 + usec_t now = now_realtime_usec();
67 + usec_t next = now - (now % step) + step;
68
69 while(now < next) {
70 sleep_usec(next - now);
src/plugin_proc.h
+19 -19
@@ -3,24 +3,24 @@
3
4 void *proc_main(void *ptr);
5
6 -extern int do_proc_net_dev(int update_every, unsigned long long dt);
7 -extern int do_proc_diskstats(int update_every, unsigned long long dt);
8 -extern int do_proc_net_snmp(int update_every, unsigned long long dt);
9 -extern int do_proc_net_snmp6(int update_every, unsigned long long dt);
10 -extern int do_proc_net_netstat(int update_every, unsigned long long dt);
11 -extern int do_proc_net_stat_conntrack(int update_every, unsigned long long dt);
12 -extern int do_proc_net_ip_vs_stats(int update_every, unsigned long long dt);
13 -extern int do_proc_stat(int update_every, unsigned long long dt);
14 -extern int do_proc_meminfo(int update_every, unsigned long long dt);
15 -extern int do_proc_vmstat(int update_every, unsigned long long dt);
16 -extern int do_proc_net_rpc_nfs(int update_every, unsigned long long dt);
17 -extern int do_proc_net_rpc_nfsd(int update_every, unsigned long long dt);
18 -extern int do_proc_sys_kernel_random_entropy_avail(int update_every, unsigned long long dt);
19 -extern int do_proc_interrupts(int update_every, unsigned long long dt);
20 -extern int do_proc_softirqs(int update_every, unsigned long long dt);
21 -extern int do_sys_kernel_mm_ksm(int update_every, unsigned long long dt);
22 -extern int do_proc_loadavg(int update_every, unsigned long long dt);
23 -extern int do_proc_net_stat_synproxy(int update_every, unsigned long long dt);
24 -extern int do_proc_net_softnet_stat(int update_every, unsigned long long dt);
6 +extern int do_proc_net_dev(int update_every, usec_t dt);
7 +extern int do_proc_diskstats(int update_every, usec_t dt);
8 +extern int do_proc_net_snmp(int update_every, usec_t dt);
9 +extern int do_proc_net_snmp6(int update_every, usec_t dt);
10 +extern int do_proc_net_netstat(int update_every, usec_t dt);
11 +extern int do_proc_net_stat_conntrack(int update_every, usec_t dt);
12 +extern int do_proc_net_ip_vs_stats(int update_every, usec_t dt);
13 +extern int do_proc_stat(int update_every, usec_t dt);
14 +extern int do_proc_meminfo(int update_every, usec_t dt);
15 +extern int do_proc_vmstat(int update_every, usec_t dt);
16 +extern int do_proc_net_rpc_nfs(int update_every, usec_t dt);
17 +extern int do_proc_net_rpc_nfsd(int update_every, usec_t dt);
18 +extern int do_proc_sys_kernel_random_entropy_avail(int update_every, usec_t dt);
19 +extern int do_proc_interrupts(int update_every, usec_t dt);
20 +extern int do_proc_softirqs(int update_every, usec_t dt);
21 +extern int do_sys_kernel_mm_ksm(int update_every, usec_t dt);
22 +extern int do_proc_loadavg(int update_every, usec_t dt);
23 +extern int do_proc_net_stat_synproxy(int update_every, usec_t dt);
24 +extern int do_proc_net_softnet_stat(int update_every, usec_t dt);
25
26 #endif /* NETDATA_PLUGIN_PROC_H */
src/plugins_d.c
+5 -5
@@ -90,7 +90,7 @@ void *pluginsd_worker_thread(void *arg)
90 char line[PLUGINSD_LINE_MAX + 1];
91
92 #ifdef DETACH_PLUGINS_FROM_NETDATA
93 - unsigned long long usec = 0, susec = 0;
93 + usec_t usec = 0, susec = 0;
94 struct timeval last = {0, 0} , now = {0, 0};
95 #endif
96
@@ -185,7 +185,7 @@ void *pluginsd_worker_thread(void *arg)
185 }
186
187 if(likely(st->counter_done)) {
188 - unsigned long long microseconds = 0;
188 + usec_t microseconds = 0;
189 if(microseconds_txt && *microseconds_txt) microseconds = strtoull(microseconds_txt, NULL, 10);
190 if(microseconds) rrdset_next_usec(st, microseconds);
191 else rrdset_next(st);
@@ -344,14 +344,14 @@ void *pluginsd_worker_thread(void *arg)
344 now_realtime_timeval(&now);
345 if(unlikely(!usec && !susec)) {
346 // our first run
347 - susec = cd->rrd_update_every * 1000000ULL;
347 + susec = cd->rrd_update_every * USEC_PER_SEC;
348 }
349 else {
350 // second+ run
351 usec = dt_usec(&now, &last) - susec;
352 error("PLUGINSD: %s last loop took %llu usec (worked for %llu, sleeped for %llu).\n", cd->fullfilename, usec + susec, usec, susec);
353 - if(unlikely(usec < (rrd_update_every * 1000000ULL / 2ULL))) susec = (rrd_update_every * 1000000ULL) - usec;
354 - else susec = rrd_update_every * 1000000ULL / 2ULL;
353 + if(unlikely(usec < (rrd_update_every * USEC_PER_SEC / 2ULL))) susec = (rrd_update_every * USEC_PER_SEC) - usec;
354 + else susec = rrd_update_every * USEC_PER_SEC / 2ULL;
355 }
356
357 error("PLUGINSD: %s sleeping for %llu. Will kill with SIGCONT pid %d to wake it up.\n", cd->fullfilename, susec, cd->pid);
src/proc_diskstats.c
+2 -2
@@ -129,7 +129,7 @@ struct mount_point_metadata {
129 int do_inodes;
130 };
131
132 -static inline void do_disk_space_stats(struct mountinfo *mi, int update_every, unsigned long long dt) {
132 +static inline void do_disk_space_stats(struct mountinfo *mi, int update_every, usec_t dt) {
133 (void)dt;
134
135 const char *family = mi->mount_point;
@@ -411,7 +411,7 @@ static inline int select_positive_option(int option1, int option2) {
411 return CONFIG_ONDEMAND_NO;
412 }
413
414 -int do_proc_diskstats(int update_every, unsigned long long dt) {
414 +int do_proc_diskstats(int update_every, usec_t dt) {
415 (void)dt;
416
417 static procfile *ff = NULL;
src/proc_interrupts.c
+1 -1
@@ -29,7 +29,7 @@ static inline struct interrupt *get_interrupts_array(int lines, int cpus) {
29 return irrs;
30 }
31
32 -int do_proc_interrupts(int update_every, unsigned long long dt) {
32 +int do_proc_interrupts(int update_every, usec_t dt) {
33 (void)dt;
34
35 static procfile *ff = NULL;
src/proc_loadavg.c
+3 -3
@@ -3,12 +3,12 @@
3 // linux calculates this once every 5 seconds
4 #define MIN_LOADAVG_UPDATE_EVERY 5
5
6 -int do_proc_loadavg(int update_every, unsigned long long dt) {
6 +int do_proc_loadavg(int update_every, usec_t dt) {
7 (void)dt;
8
9 static procfile *ff = NULL;
10 static int do_loadavg = -1, do_all_processes = -1;
11 - static unsigned long long last_loadavg_usec = 0;
11 + static usec_t last_loadavg_usec = 0;
12 static RRDSET *load_chart = NULL, *processes_chart = NULL;
13
14 if(unlikely(!ff)) {
@@ -68,7 +68,7 @@ int do_proc_loadavg(int update_every, unsigned long long dt) {
68 rrdset_done(load_chart);
69 }
70
71 - last_loadavg_usec = load_chart->update_every * 1000000ULL;
71 + last_loadavg_usec = load_chart->update_every * USEC_PER_SEC;
72 }
73 else last_loadavg_usec -= dt;
74
src/proc_meminfo.c
+1 -1
@@ -1,6 +1,6 @@
1 #include "common.h"
2
3 -int do_proc_meminfo(int update_every, unsigned long long dt) {
3 +int do_proc_meminfo(int update_every, usec_t dt) {
4 (void)dt;
5
6 static procfile *ff = NULL;
src/proc_net_dev.c
+1 -1
@@ -1,6 +1,6 @@
1 #include "common.h"
2
3 -int do_proc_net_dev(int update_every, unsigned long long dt) {
3 +int do_proc_net_dev(int update_every, usec_t dt) {
4 static procfile *ff = NULL;
5 static int enable_new_interfaces = -1, enable_ifb_interfaces = -1;
6 static int do_bandwidth = -1, do_packets = -1, do_errors = -1, do_drops = -1, do_fifo = -1, do_compressed = -1, do_events = -1;
src/proc_net_ip_vs_stats.c
+1 -1
@@ -3,7 +3,7 @@
3 #define RRD_TYPE_NET_IPVS "ipvs"
4 #define RRD_TYPE_NET_IPVS_LEN strlen(RRD_TYPE_NET_IPVS)
5
6 -int do_proc_net_ip_vs_stats(int update_every, unsigned long long dt) {
6 +int do_proc_net_ip_vs_stats(int update_every, usec_t dt) {
7 static int do_bandwidth = -1, do_sockets = -1, do_packets = -1;
8 static procfile *ff = NULL;
9
src/proc_net_netstat.c
+1 -1
@@ -191,7 +191,7 @@ static void parse_line_pair(procfile *ff, struct netstat_columns *nc, uint32_t h
191 }
192
193
194 -int do_proc_net_netstat(int update_every, unsigned long long dt) {
194 +int do_proc_net_netstat(int update_every, usec_t dt) {
195 (void)dt;
196
197 static int do_bandwidth = -1, do_inerrors = -1, do_mcast = -1, do_bcast = -1, do_mcast_p = -1, do_bcast_p = -1, do_ecn = -1, \
src/proc_net_rpc_nfs.c
+1 -1
@@ -127,7 +127,7 @@ struct nfs_procs nfs_proc4_values[] = {
127 { "", 0ULL, 0 }
128 };
129
130 -int do_proc_net_rpc_nfs(int update_every, unsigned long long dt) {
130 +int do_proc_net_rpc_nfs(int update_every, usec_t dt) {
131 (void)dt;
132
133 static procfile *ff = NULL;
src/proc_net_rpc_nfsd.c
+1 -1
@@ -209,7 +209,7 @@ struct nfsd_procs nfsd4_ops_values[] = {
209 };
210
211
212 -int do_proc_net_rpc_nfsd(int update_every, unsigned long long dt) {
212 +int do_proc_net_rpc_nfsd(int update_every, usec_t dt) {
213 static procfile *ff = NULL;
214 static int do_rc = -1, do_fh = -1, do_io = -1, do_th = -1, do_ra = -1, do_net = -1, do_rpc = -1, do_proc2 = -1, do_proc3 = -1, do_proc4 = -1, do_proc4ops = -1;
215 static int ra_warning = 0, th_warning = 0, proc2_warning = 0, proc3_warning = 0, proc4_warning = 0, proc4ops_warning = 0;
src/proc_net_snmp.c
+1 -1
@@ -197,7 +197,7 @@ static void parse_line_pair(procfile *ff, struct netstat_columns *nc, uint32_t h
197 }
198 }
199
200 -int do_proc_net_snmp(int update_every, unsigned long long dt) {
200 +int do_proc_net_snmp(int update_every, usec_t dt) {
201 (void)dt;
202
203 static procfile *ff = NULL;
src/proc_net_snmp6.c
+1 -1
@@ -3,7 +3,7 @@
3 #define RRD_TYPE_NET_SNMP6 "ipv6"
4 #define RRD_TYPE_NET_SNMP6_LEN strlen(RRD_TYPE_NET_SNMP6)
5
6 -int do_proc_net_snmp6(int update_every, unsigned long long dt) {
6 +int do_proc_net_snmp6(int update_every, usec_t dt) {
7 (void)dt;
8
9 static procfile *ff = NULL;
src/proc_net_softnet_stat.c
+1 -1
@@ -12,7 +12,7 @@ static inline char *softnet_column_name(uint32_t column) {
12 }
13 }
14
15 -int do_proc_net_softnet_stat(int update_every, unsigned long long dt) {
15 +int do_proc_net_softnet_stat(int update_every, usec_t dt) {
16 (void)dt;
17
18 static procfile *ff = NULL;
src/proc_net_stat_conntrack.c
+3 -3
@@ -3,10 +3,10 @@
3 #define RRD_TYPE_NET_STAT_NETFILTER "netfilter"
4 #define RRD_TYPE_NET_STAT_CONNTRACK "conntrack"
5
6 -int do_proc_net_stat_conntrack(int update_every, unsigned long long dt) {
6 +int do_proc_net_stat_conntrack(int update_every, usec_t dt) {
7 static procfile *ff = NULL;
8 static int do_sockets = -1, do_new = -1, do_changes = -1, do_expect = -1, do_search = -1, do_errors = -1;
9 - static unsigned long long get_max_every = 10 * 1000000ULL, usec_since_last_max = 0;
9 + static usec_t get_max_every = 10 * USEC_PER_SEC, usec_since_last_max = 0;
10 static int read_full = 1;
11 static char *nf_conntrack_filename, *nf_conntrack_count_filename, *nf_conntrack_max_filename;
12 static RRDVAR *rrdvar_max = NULL;
@@ -21,7 +21,7 @@ int do_proc_net_stat_conntrack(int update_every, unsigned long long dt) {
21
22 snprintfz(filename, FILENAME_MAX, "%s%s", global_host_prefix, "/proc/sys/net/netfilter/nf_conntrack_max");
23 nf_conntrack_max_filename = config_get("plugin:proc:/proc/sys/net/netfilter/nf_conntrack_max", "filename to monitor", filename);
24 - usec_since_last_max = get_max_every = config_get_number("plugin:proc:/proc/sys/net/netfilter/nf_conntrack_max", "read every seconds", 10) * 1000000ULL;
24 + usec_since_last_max = get_max_every = config_get_number("plugin:proc:/proc/sys/net/netfilter/nf_conntrack_max", "read every seconds", 10) * USEC_PER_SEC;
25
26 read_full = 1;
27 ff = procfile_open(nf_conntrack_filename, " \t:", PROCFILE_FLAG_DEFAULT);
src/proc_net_stat_synproxy.c
+1 -1
@@ -3,7 +3,7 @@
3 #define RRD_TYPE_NET_STAT_NETFILTER "netfilter"
4 #define RRD_TYPE_NET_STAT_SYNPROXY "synproxy"
5
6 -int do_proc_net_stat_synproxy(int update_every, unsigned long long dt) {
6 +int do_proc_net_stat_synproxy(int update_every, usec_t dt) {
7 (void)dt;
8
9 static int do_entries = -1, do_cookies = -1, do_syns = -1, do_reopened = -1;
src/proc_softirqs.c
+1 -1
@@ -29,7 +29,7 @@ static inline struct interrupt *get_interrupts_array(int lines, int cpus) {
29 return irrs;
30 }
31
32 -int do_proc_softirqs(int update_every, unsigned long long dt) {
32 +int do_proc_softirqs(int update_every, usec_t dt) {
33 (void)dt;
34
35 static procfile *ff = NULL;
src/proc_stat.c
+1 -1
@@ -1,6 +1,6 @@
1 #include "common.h"
2
3 -int do_proc_stat(int update_every, unsigned long long dt) {
3 +int do_proc_stat(int update_every, usec_t dt) {
4 (void)dt;
5
6 static procfile *ff = NULL;
src/proc_sys_kernel_random_entropy_avail.c
+1 -1
@@ -1,6 +1,6 @@
1 #include "common.h"
2
3 -int do_proc_sys_kernel_random_entropy_avail(int update_every, unsigned long long dt) {
3 +int do_proc_sys_kernel_random_entropy_avail(int update_every, usec_t dt) {
4 (void)dt;
5
6 static procfile *ff = NULL;
src/proc_vmstat.c
+1 -1
@@ -1,6 +1,6 @@
1 #include "common.h"
2
3 -int do_proc_vmstat(int update_every, unsigned long long dt) {
3 +int do_proc_vmstat(int update_every, usec_t dt) {
4 (void)dt;
5
6 static procfile *ff = NULL;
src/rrd.c
+27 -27
@@ -685,7 +685,7 @@ RRDDIM *rrddim_add(RRDSET *st, const char *id, const char *name, long multiplier
685 error("File %s does not have the same refresh frequency. Clearing it.", fullfilename);
686 memset(rd, 0, size);
687 }
688 - else if(dt_usec(&now, &rd->last_collected_time) > (rd->entries * rd->update_every * 1000000ULL)) {
688 + else if(dt_usec(&now, &rd->last_collected_time) > (rd->entries * rd->update_every * USEC_PER_SEC)) {
689 errno = 0;
690 error("File %s is too old. Clearing it.", fullfilename);
691 memset(rd, 0, size);
@@ -998,23 +998,23 @@ collected_number rrddim_set(RRDSET *st, const char *id, collected_number value)
998 return rrddim_set_by_pointer(st, rd, value);
999 }
1000
1001 -void rrdset_next_usec_unfiltered(RRDSET *st, unsigned long long microseconds)
1001 +void rrdset_next_usec_unfiltered(RRDSET *st, usec_t microseconds)
1002 {
1003 if(unlikely(!st->last_collected_time.tv_sec || !microseconds)) {
1004 // the first entry
1005 - microseconds = st->update_every * 1000000ULL;
1005 + microseconds = st->update_every * USEC_PER_SEC;
1006 }
1007 st->usec_since_last_update = microseconds;
1008 }
1009
1010 -void rrdset_next_usec(RRDSET *st, unsigned long long microseconds)
1010 +void rrdset_next_usec(RRDSET *st, usec_t microseconds)
1011 {
1012 struct timeval now;
1013 now_realtime_timeval(&now);
1014
1015 if(unlikely(!st->last_collected_time.tv_sec)) {
1016 // the first entry
1017 - microseconds = st->update_every * 1000000ULL;
1017 + microseconds = st->update_every * USEC_PER_SEC;
1018 }
1019 else if(unlikely(!microseconds)) {
1020 // no dt given by the plugin
@@ -1022,9 +1022,9 @@ void rrdset_next_usec(RRDSET *st, unsigned long long microseconds)
1022 }
1023 else {
1024 // microseconds has the time since the last collection
1025 - unsigned long long now_usec = timeval_usec(&now);
1026 - unsigned long long last_usec = timeval_usec(&st->last_collected_time);
1027 - unsigned long long since_last_usec = dt_usec(&now, &st->last_collected_time);
1025 + usec_t now_usec = timeval_usec(&now);
1026 + usec_t last_usec = timeval_usec(&st->last_collected_time);
1027 + usec_t since_last_usec = dt_usec(&now, &st->last_collected_time);
1028
1029 // verify the microseconds given is good
1030 if(unlikely(microseconds > since_last_usec)) {
@@ -1052,7 +1052,7 @@ void rrdset_next_usec(RRDSET *st, unsigned long long microseconds)
1052 st->usec_since_last_update = microseconds;
1053 }
1054
1055 -unsigned long long rrdset_done(RRDSET *st)
1055 +usec_t rrdset_done(RRDSET *st)
1056 {
1057 if(unlikely(netdata_exit)) return 0;
1058
@@ -1070,12 +1070,12 @@ unsigned long long rrdset_done(RRDSET *st)
1070 unsigned int
1071 stored_entries = 0; // the number of entries we have stored in the db, during this call to rrdset_done()
1072
1073 - unsigned long long
1073 + usec_t
1074 last_collect_ut, // the timestamp in microseconds, of the last collected value
1075 now_collect_ut, // the timestamp in microseconds, of this collected value (this is NOW)
1076 last_stored_ut, // the timestamp in microseconds, of the last stored entry in the db
1077 next_store_ut, // the timestamp in microseconds, of the next entry to store in the db
1078 - update_every_ut = st->update_every * 1000000ULL; // st->update_every in microseconds
1078 + update_every_ut = st->update_every * USEC_PER_SEC; // st->update_every in microseconds
1079
1080 if(unlikely(pthread_setcancelstate(PTHREAD_CANCEL_DISABLE, &pthreadoldcancelstate) != 0))
1081 error("Cannot set pthread cancel state to DISABLE.");
@@ -1105,7 +1105,7 @@ unsigned long long rrdset_done(RRDSET *st)
1105 now_realtime_timeval(&st->last_collected_time);
1106 timeval_align(&st->last_collected_time, st->update_every);
1107
1108 - last_collect_ut = st->last_collected_time.tv_sec * 1000000ULL + st->last_collected_time.tv_usec - update_every_ut;
1108 + last_collect_ut = st->last_collected_time.tv_sec * USEC_PER_SEC + st->last_collected_time.tv_usec - update_every_ut;
1109
1110 // the first entry should not be stored
1111 store_this_entry = 0;
@@ -1116,10 +1116,10 @@ unsigned long long rrdset_done(RRDSET *st)
1116 else {
1117 // it is not the first entry
1118 // calculate the proper last_collected_time, using usec_since_last_update
1119 - last_collect_ut = st->last_collected_time.tv_sec * 1000000ULL + st->last_collected_time.tv_usec;
1120 - unsigned long long ut = last_collect_ut + st->usec_since_last_update;
1121 - st->last_collected_time.tv_sec = (time_t) (ut / 1000000ULL);
1122 - st->last_collected_time.tv_usec = (suseconds_t) (ut % 1000000ULL);
1119 + last_collect_ut = st->last_collected_time.tv_sec * USEC_PER_SEC + st->last_collected_time.tv_usec;
1120 + usec_t ut = last_collect_ut + st->usec_since_last_update;
1121 + st->last_collected_time.tv_sec = (time_t) (ut / USEC_PER_SEC);
1122 + st->last_collected_time.tv_usec = (suseconds_t) (ut % USEC_PER_SEC);
1123 }
1124
1125 // if this set has not been updated in the past
@@ -1127,9 +1127,9 @@ unsigned long long rrdset_done(RRDSET *st)
1127 if(unlikely(!st->last_updated.tv_sec)) {
1128 // it has never been updated before
1129 // set a fake last_updated, in the past using usec_since_last_update
1130 - unsigned long long ut = st->last_collected_time.tv_sec * 1000000ULL + st->last_collected_time.tv_usec - st->usec_since_last_update;
1131 - st->last_updated.tv_sec = (time_t) (ut / 1000000ULL);
1132 - st->last_updated.tv_usec = (suseconds_t) (ut % 1000000ULL);
1130 + usec_t ut = st->last_collected_time.tv_sec * USEC_PER_SEC + st->last_collected_time.tv_usec - st->usec_since_last_update;
1131 + st->last_updated.tv_sec = (time_t) (ut / USEC_PER_SEC);
1132 + st->last_updated.tv_usec = (suseconds_t) (ut % USEC_PER_SEC);
1133
1134 // the first entry should not be stored
1135 store_this_entry = 0;
@@ -1148,9 +1148,9 @@ unsigned long long rrdset_done(RRDSET *st)
1148 now_realtime_timeval(&st->last_collected_time);
1149 timeval_align(&st->last_collected_time, st->update_every);
1150
1151 - unsigned long long ut = st->last_collected_time.tv_sec * 1000000ULL + st->last_collected_time.tv_usec - st->usec_since_last_update;
1152 - st->last_updated.tv_sec = (time_t) (ut / 1000000ULL);
1153 - st->last_updated.tv_usec = (suseconds_t) (ut % 1000000ULL);
1151 + usec_t ut = st->last_collected_time.tv_sec * USEC_PER_SEC + st->last_collected_time.tv_usec - st->usec_since_last_update;
1152 + st->last_updated.tv_sec = (time_t) (ut / USEC_PER_SEC);
1153 + st->last_updated.tv_usec = (suseconds_t) (ut % USEC_PER_SEC);
1154
1155 // the first entry should not be stored
1156 store_this_entry = 0;
@@ -1161,9 +1161,9 @@ unsigned long long rrdset_done(RRDSET *st)
1161 // last_stored_ut = the last time we added a value to the storage
1162 // now_collect_ut = the time the current value has been collected
1163 // next_store_ut = the time of the next interpolation point
1164 - last_stored_ut = st->last_updated.tv_sec * 1000000ULL + st->last_updated.tv_usec;
1165 - now_collect_ut = st->last_collected_time.tv_sec * 1000000ULL + st->last_collected_time.tv_usec;
1166 - next_store_ut = (st->last_updated.tv_sec + st->update_every) * 1000000ULL;
1164 + last_stored_ut = st->last_updated.tv_sec * USEC_PER_SEC + st->last_updated.tv_usec;
1165 + now_collect_ut = st->last_collected_time.tv_sec * USEC_PER_SEC + st->last_collected_time.tv_usec;
1166 + next_store_ut = (st->last_updated.tv_sec + st->update_every) * USEC_PER_SEC;
1167
1168 if(unlikely(st->debug)) {
1169 debug(D_RRD_STATS, "%s: last_collect_ut = %0.3Lf (last collection time)", st->name, (long double)last_collect_ut/1000000.0);
@@ -1366,7 +1366,7 @@ unsigned long long rrdset_done(RRDSET *st)
1366 #endif
1367 }
1368
1369 - unsigned long long first_ut = last_stored_ut;
1369 + usec_t first_ut = last_stored_ut;
1370 long long iterations = (now_collect_ut - last_stored_ut) / (update_every_ut);
1371 if((now_collect_ut % (update_every_ut)) == 0) iterations++;
1372
@@ -1380,7 +1380,7 @@ unsigned long long rrdset_done(RRDSET *st)
1380 debug(D_RRD_STATS, "%s: next_store_ut = %0.3Lf (next interpolation point)", st->name, (long double)next_store_ut/1000000.0);
1381 }
1382
1383 - st->last_updated.tv_sec = (time_t) (next_store_ut / 1000000ULL);
1383 + st->last_updated.tv_sec = (time_t) (next_store_ut / USEC_PER_SEC);
1384 st->last_updated.tv_usec = 0;
1385
1386 for( rd = st->dimensions ; likely(rd) ; rd = rd->next ) {
src/rrd.h
+4 -4
@@ -244,7 +244,7 @@ struct rrdset {
244
245 uint32_t hash_name; // a simple hash on the name
246
247 - unsigned long long usec_since_last_update; // the time in microseconds since the last collection of data
247 + usec_t usec_since_last_update; // the time in microseconds since the last collection of data
248
249 struct timeval last_updated; // when this data set was last updated (updated every time the rrd_stats_done() function)
250 struct timeval last_collected_time; // when did this data set last collected values
@@ -355,11 +355,11 @@ extern RRDSET *rrdset_find(const char *id);
355 extern RRDSET *rrdset_find_bytype(const char *type, const char *id);
356 extern RRDSET *rrdset_find_byname(const char *name);
357
358 -extern void rrdset_next_usec_unfiltered(RRDSET *st, unsigned long long microseconds);
359 -extern void rrdset_next_usec(RRDSET *st, unsigned long long microseconds);
358 +extern void rrdset_next_usec_unfiltered(RRDSET *st, usec_t microseconds);
359 +extern void rrdset_next_usec(RRDSET *st, usec_t microseconds);
360 #define rrdset_next(st) rrdset_next_usec(st, 0ULL)
361
362 -extern unsigned long long rrdset_done(RRDSET *st);
362 +extern usec_t rrdset_done(RRDSET *st);
363
364 // get the total duration in seconds of the round robin database
365 #define rrdset_duration(st) ((time_t)( (((st)->counter >= ((unsigned long)(st)->entries))?(unsigned long)(st)->entries:(st)->counter) * (st)->update_every ))
src/sys_fs_cgroup.c
+5 -5
@@ -1391,7 +1391,7 @@ void update_cgroup_charts(int update_every) {
1391 // ----------------------------------------------------------------------------
1392 // cgroups main
1393
1394 -int do_sys_fs_cgroup(int update_every, unsigned long long dt) {
1394 +int do_sys_fs_cgroup(int update_every, usec_t dt) {
1395 (void)dt;
1396
1397 static int cgroup_global_config_read = 0;
@@ -1433,15 +1433,15 @@ void *cgroups_main(void *ptr)
1433 int vdo_cpu_netdata = !config_get_boolean("plugin:cgroups", "cgroups plugin resources", 1);
1434
1435 // keep track of the time each module was called
1436 - unsigned long long sutime_sys_fs_cgroup = 0ULL;
1436 + usec_t sutime_sys_fs_cgroup = 0ULL;
1437
1438 // the next time we will run - aligned properly
1439 - unsigned long long sunext = (now_realtime_sec() - (now_realtime_sec() % rrd_update_every) + rrd_update_every) * 1000000ULL;
1439 + usec_t sunext = (now_realtime_sec() - (now_realtime_sec() % rrd_update_every) + rrd_update_every) * USEC_PER_SEC;
1440
1441 RRDSET *stcpu_thread = NULL;
1442
1443 for(;;) {
1444 - unsigned long long sunow;
1444 + usec_t sunow;
1445 if(unlikely(netdata_exit)) break;
1446
1447 // delay until it is our time to run
@@ -1450,7 +1450,7 @@ void *cgroups_main(void *ptr)
1450
1451 // find the next time we need to run
1452 while(now_realtime_usec() > sunext)
1453 - sunext += rrd_update_every * 1000000ULL;
1453 + sunext += rrd_update_every * USEC_PER_SEC;
1454
1455 if(unlikely(netdata_exit)) break;
1456
src/sys_kernel_mm_ksm.c
+1 -1
@@ -19,7 +19,7 @@ KSM_NAME_VALUE values[] = {
19 [PAGES_TO_SCAN] = { "/sys/kernel/mm/ksm/pages_to_scan", 0ULL },
20 };
21
22 -int do_sys_kernel_mm_ksm(int update_every, unsigned long long dt) {
22 +int do_sys_kernel_mm_ksm(int update_every, usec_t dt) {
23 static procfile *ff_pages_shared = NULL, *ff_pages_sharing = NULL, *ff_pages_unshared = NULL, *ff_pages_volatile = NULL, *ff_pages_to_scan = NULL;
24 static long page_size = -1;
25