summaryrefslogtreecommitdiff
path: root/librt/kernel-posix-timers.h
diff options
context:
space:
mode:
Diffstat (limited to 'librt/kernel-posix-timers.h')
-rw-r--r--librt/kernel-posix-timers.h30
1 files changed, 30 insertions, 0 deletions
diff --git a/librt/kernel-posix-timers.h b/librt/kernel-posix-timers.h
new file mode 100644
index 000000000..9a538c715
--- /dev/null
+++ b/librt/kernel-posix-timers.h
@@ -0,0 +1,30 @@
+/*
+ * kernel-posix-timers.h - kernel-dependent definitions for POSIX timers.
+ */
+
+#include <setjmp.h>
+#include <signal.h>
+#include <sys/types.h>
+
+/* Type of timers in the kernel */
+typedef int kernel_timer_t;
+
+/* Internal representation of timer */
+struct timer {
+ /* Notification mechanism */
+ int sigev_notify;
+
+ /* Timer ID returned by the kernel */
+ kernel_timer_t ktimerid;
+
+ /*
+ * All new elements must be added after ktimerid. And if the thrfunc
+ * element is not the third element anymore the memory allocation in
+ * timer_create needs to be changed.
+ */
+
+ /* Parameters for the thread to be started for SIGEV_THREAD */
+ void (*thrfunc) (sigval_t);
+ sigval_t sival;
+ pthread_attr_t attr;
+};