summaryrefslogtreecommitdiffstats
path: root/kernel/include/linux/swork.h
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/include/linux/swork.h')
-rw-r--r--kernel/include/linux/swork.h24
1 files changed, 24 insertions, 0 deletions
diff --git a/kernel/include/linux/swork.h b/kernel/include/linux/swork.h
new file mode 100644
index 000000000..f175fa9a6
--- /dev/null
+++ b/kernel/include/linux/swork.h
@@ -0,0 +1,24 @@
+#ifndef _LINUX_SWORK_H
+#define _LINUX_SWORK_H
+
+#include <linux/list.h>
+
+struct swork_event {
+ struct list_head item;
+ unsigned long flags;
+ void (*func)(struct swork_event *);
+};
+
+static inline void INIT_SWORK(struct swork_event *event,
+ void (*func)(struct swork_event *))
+{
+ event->flags = 0;
+ event->func = func;
+}
+
+bool swork_queue(struct swork_event *sev);
+
+int swork_get(void);
+void swork_put(void);
+
+#endif /* _LINUX_SWORK_H */