.. | .. |
---|
9 | 9 | * See kernel/sched/completion.c for details. |
---|
10 | 10 | */ |
---|
11 | 11 | |
---|
12 | | -#include <linux/wait.h> |
---|
| 12 | +#include <linux/swait.h> |
---|
13 | 13 | |
---|
14 | 14 | /* |
---|
15 | 15 | * struct completion - structure used to maintain state for a "completion" |
---|
.. | .. |
---|
25 | 25 | */ |
---|
26 | 26 | struct completion { |
---|
27 | 27 | unsigned int done; |
---|
28 | | - wait_queue_head_t wait; |
---|
| 28 | + struct swait_queue_head wait; |
---|
29 | 29 | }; |
---|
30 | 30 | |
---|
31 | 31 | #define init_completion_map(x, m) __init_completion(x) |
---|
.. | .. |
---|
34 | 34 | static inline void complete_release(struct completion *x) {} |
---|
35 | 35 | |
---|
36 | 36 | #define COMPLETION_INITIALIZER(work) \ |
---|
37 | | - { 0, __WAIT_QUEUE_HEAD_INITIALIZER((work).wait) } |
---|
| 37 | + { 0, __SWAIT_QUEUE_HEAD_INITIALIZER((work).wait) } |
---|
38 | 38 | |
---|
39 | 39 | #define COMPLETION_INITIALIZER_ONSTACK_MAP(work, map) \ |
---|
40 | 40 | (*({ init_completion_map(&(work), &(map)); &(work); })) |
---|
.. | .. |
---|
85 | 85 | static inline void __init_completion(struct completion *x) |
---|
86 | 86 | { |
---|
87 | 87 | x->done = 0; |
---|
88 | | - init_waitqueue_head(&x->wait); |
---|
| 88 | + init_swait_queue_head(&x->wait); |
---|
89 | 89 | } |
---|
90 | 90 | |
---|
91 | 91 | /** |
---|