[Patch 1/6] Delay accounting: timespec diff

From: Shailabh Nagar
Date: Tue Jan 03 2006 - 18:23:01 EST


nstimestamp_diff.patch

Add kernel utility function for measuring the
interval (diff) between two timespec values, adjusting for overflow

Signed-off-by: Shailabh Nagar <nagar@xxxxxxxxxxxxxx>

include/linux/time.h | 15 +++++++++++++++
1 files changed, 15 insertions(+)

Index: linux-2.6.15-rc7/include/linux/time.h
===================================================================
--- linux-2.6.15-rc7.orig/include/linux/time.h
+++ linux-2.6.15-rc7/include/linux/time.h
@@ -114,6 +114,21 @@ set_normalized_timespec (struct timespec
ts->tv_nsec = nsec;
}

+/*
+ * timespec_diff_ns - Return difference of two timestamps in nanoseconds
+ * In the rare case of @end being earlier than @start, return zero
+ */
+static inline unsigned long long
+timespec_diff_ns(struct timespec *start, struct timespec *end)
+{
+ long long ret;
+
+ ret = end->tv_sec*(1000000000) + end->tv_nsec;
+ ret -= start->tv_sec*(1000000000) + start->tv_nsec;
+ if (ret < 0)
+ return 0;
+ return ret;
+}
#endif /* __KERNEL__ */

#define NFDBITS __NFDBITS
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/