]> xenbits.xensource.com Git - people/julieng/freebsd.git/commitdiff
Merge LinuxKPI changes from DragonflyBSD:
authorhselasky <hselasky@FreeBSD.org>
Mon, 19 Oct 2015 10:54:24 +0000 (10:54 +0000)
committerhselasky <hselasky@FreeBSD.org>
Mon, 19 Oct 2015 10:54:24 +0000 (10:54 +0000)
- Added support for multiple new Linux functions.
- Properly implement DEFINE_WAIT() and init_waitqueue_head() macros.
- Removed FreeBSD specific __wait_queue_head structure definition.

Sponsored by: Mellanox Technologies

sys/ofed/include/linux/wait.h

index 80047f2e5d8bad0f337eec9ea96335b184ba26da..dccd0f3d5ad1126f004c14c9b665881cee7cb06c 100644 (file)
 #include <sys/kernel.h>
 #include <sys/proc.h>
 
-struct __wait_queue_head {
+typedef struct {
+} wait_queue_t;
+
+typedef struct {
        unsigned int    wchan;
-};
-typedef struct __wait_queue_head wait_queue_head_t;
+} wait_queue_head_t;
 
-#define        init_waitqueue_head(x)
+#define        init_waitqueue_head(x) \
+    do { } while (0)
 
 static inline void
-__wake_up(struct __wait_queue_head *q, int all)
+__wake_up(wait_queue_head_t *q, int all)
 {
        int wakeup_swapper;
        void *c;
@@ -108,6 +111,23 @@ do {                                                                       \
        -_error;                                                        \
 })
 
-#define        DEFINE_WAIT(x)
+static inline int
+waitqueue_active(wait_queue_head_t *q)
+{
+       return 0;       /* XXX: not really implemented */
+}
+
+#define DEFINE_WAIT(name)      \
+       wait_queue_t name = {}
+
+static inline void
+prepare_to_wait(wait_queue_head_t *q, wait_queue_t *wait, int state)
+{
+}
+
+static inline void
+finish_wait(wait_queue_head_t *q, wait_queue_t *wait)
+{
+}
 
 #endif /* _LINUX_WAIT_H_ */