blob: 7dffaf984ada029fb334760d22cf06df2ab4495a [file] [log] [blame]
From da66e4e541b21b326a26a36de42f400975da60ac Mon Sep 17 00:00:00 2001
From: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Date: Mon, 28 Nov 2011 07:42:20 -0500
Subject: lttng: timing calibration feature
This calibration feature is fairly limited for now, but provides an
example of how this can be performed.
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
---
drivers/staging/lttng/lttng-calibrate.c | 30 ++++++++++++++++++++++++++++++
1 files changed, 30 insertions(+), 0 deletions(-)
create mode 100644 drivers/staging/lttng/lttng-calibrate.c
diff --git a/drivers/staging/lttng/lttng-calibrate.c b/drivers/staging/lttng/lttng-calibrate.c
new file mode 100644
index 0000000..07e3c5b
--- /dev/null
+++ b/drivers/staging/lttng/lttng-calibrate.c
@@ -0,0 +1,30 @@
+/*
+ * lttng-calibrate.c
+ *
+ * Copyright 2011 (c) - Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
+ *
+ * LTTng probe calibration.
+ *
+ * Dual LGPL v2.1/GPL v2 license.
+ */
+
+#include "ltt-debugfs-abi.h"
+#include "ltt-events.h"
+
+noinline
+void lttng_calibrate_kretprobe(void)
+{
+ asm volatile ("");
+}
+
+int lttng_calibrate(struct lttng_kernel_calibrate *calibrate)
+{
+ switch (calibrate->type) {
+ case LTTNG_KERNEL_CALIBRATE_KRETPROBE:
+ lttng_calibrate_kretprobe();
+ break;
+ default:
+ return -EINVAL;
+ }
+ return 0;
+}
--
1.7.9