From 10717a1a8d48e50463abf2f6b47e2618eaa529e7 Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Wed, 27 Oct 2010 00:01:12 +0200 Subject: unit: serialize active timestamps --- src/util.c | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) (limited to 'src/util.c') diff --git a/src/util.c b/src/util.c index f5ee29897f..d653d6b549 100644 --- a/src/util.c +++ b/src/util.c @@ -3528,6 +3528,36 @@ finish: return r; } +void dual_timestamp_serialize(FILE *f, const char *name, dual_timestamp *t) { + + assert(f); + assert(name); + assert(t); + + if (!dual_timestamp_is_set(t)) + return; + + fprintf(f, "%s=%llu %llu\n", + name, + (unsigned long long) t->realtime, + (unsigned long long) t->monotonic); +} + +void dual_timestamp_deserialize(FILE *f, const char *value, dual_timestamp *t) { + unsigned long long a, b; + + assert(f); + assert(value); + assert(t); + + if (sscanf(value, "%lli %llu", &a, &b) != 2) + log_debug("Failed to parse finish timestamp value %s", value); + else { + t->realtime = a; + t->monotonic = b; + } +} + static const char *const ioprio_class_table[] = { [IOPRIO_CLASS_NONE] = "none", [IOPRIO_CLASS_RT] = "realtime", -- cgit v1.2.3-54-g00ecf