1 struct closure {
2 union {
3 struct {
4 long _pad;
5 struct task_struct *p;
6 struct closure *next;
7 };
8 struct work_struct w;
9 };
10
11 closure_fn *fn;
12 struct closure *parent;
13
14 union {
15 struct {
16 atomic_t _pad2;
17 atomic_t remaining;
18 };
19
20 #define CLOSURE_BLOCK 0
21 #define CLOSURE_NOQUEUE 1
22 #define __CLOSURE_WAITING 2
23 #define __CLOSURE_SLEEPING 3
24 unsigned long flags;
25 };
26 };