summaryrefslogtreecommitdiffstats
path: root/include/libtf/fiber.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/libtf/fiber.h')
-rw-r--r--include/libtf/fiber.h15
1 files changed, 11 insertions, 4 deletions
diff --git a/include/libtf/fiber.h b/include/libtf/fiber.h
index 91c0b3b..36c2812 100644
--- a/include/libtf/fiber.h
+++ b/include/libtf/fiber.h
@@ -28,6 +28,10 @@
#define TF_WAKEUP_TIMEOUT ETIMEDOUT
#define TF_WAKEUP_FD EIO
+/* Special timeouts for tf_schedule() */
+#define TF_NO_TIMEOUT -1
+#define TF_NO_TIMEOUT_CHANGE -2
+
/* Scheduler */
struct tf_fiber;
@@ -77,11 +81,14 @@ void tf_fiber_put(void *data);
void tf_exit(void) attribute_noreturn;
void tf_kill(void *fiber);
-int tf_schedule(int wakeup_type);
-int tf_schedule_timeout(int milliseconds);
+int tf_schedule(int milliseconds);
void tf_wakeup(struct tf_fiber *fiber, int wakeup_type);
-
int tf_yield(void);
-int tf_msleep(int milliseconds);
+
+static inline
+int tf_msleep(int milliseconds)
+{
+ return tf_schedule(milliseconds);
+}
#endif