hc
2024-10-22 8ac6c7a54ed1b98d142dce24b11c6de6a1e239a5
kernel/tools/perf/util/time-utils.h
....@@ -3,6 +3,7 @@
33 #define _TIME_UTILS_H_
44
55 #include <stddef.h>
6
+#include <time.h>
67 #include <linux/types.h>
78
89 struct perf_time_interval {
....@@ -23,8 +24,28 @@
2324 bool perf_time__ranges_skip_sample(struct perf_time_interval *ptime_buf,
2425 int num, u64 timestamp);
2526
27
+struct perf_session;
28
+
29
+int perf_time__parse_for_ranges_reltime(const char *str, struct perf_session *session,
30
+ struct perf_time_interval **ranges,
31
+ int *range_size, int *range_num,
32
+ bool reltime);
33
+
34
+int perf_time__parse_for_ranges(const char *str, struct perf_session *session,
35
+ struct perf_time_interval **ranges,
36
+ int *range_size, int *range_num);
37
+
2638 int timestamp__scnprintf_usec(u64 timestamp, char *buf, size_t sz);
39
+int timestamp__scnprintf_nsec(u64 timestamp, char *buf, size_t sz);
2740
2841 int fetch_current_timestamp(char *buf, size_t sz);
2942
43
+static inline unsigned long long rdclock(void)
44
+{
45
+ struct timespec ts;
46
+
47
+ clock_gettime(CLOCK_MONOTONIC, &ts);
48
+ return ts.tv_sec * 1000000000ULL + ts.tv_nsec;
49
+}
50
+
3051 #endif