diff options
author | Dmitry Torokhov <dmitry.torokhov@gmail.com> | 2009-05-08 21:29:27 -0400 |
---|---|---|
committer | Dmitry Torokhov <dmitry.torokhov@gmail.com> | 2009-05-08 21:29:27 -0400 |
commit | d585a021c0b10b0477d6b608c53e1feb8cde0507 (patch) | |
tree | 5ca059da1db7f15d4b29427644ad9c08270c885c /include/linux/connector.h | |
parent | 84e5b0d00f8f84c4ae226be131d4bebbcee88bd3 (diff) | |
parent | 091bf7624d1c90cec9e578a18529f615213ff847 (diff) |
Merge commit 'v2.6.30-rc5' into next
Diffstat (limited to 'include/linux/connector.h')
-rw-r--r-- | include/linux/connector.h | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/include/linux/connector.h b/include/linux/connector.h index 34f2789d9b9b..b9966e64604e 100644 --- a/include/linux/connector.h +++ b/include/linux/connector.h | |||
@@ -39,8 +39,10 @@ | |||
39 | #define CN_IDX_V86D 0x4 | 39 | #define CN_IDX_V86D 0x4 |
40 | #define CN_VAL_V86D_UVESAFB 0x1 | 40 | #define CN_VAL_V86D_UVESAFB 0x1 |
41 | #define CN_IDX_BB 0x5 /* BlackBoard, from the TSP GPL sampling framework */ | 41 | #define CN_IDX_BB 0x5 /* BlackBoard, from the TSP GPL sampling framework */ |
42 | #define CN_DST_IDX 0x6 | ||
43 | #define CN_DST_VAL 0x1 | ||
42 | 44 | ||
43 | #define CN_NETLINK_USERS 6 | 45 | #define CN_NETLINK_USERS 7 |
44 | 46 | ||
45 | /* | 47 | /* |
46 | * Maximum connector's message size. | 48 | * Maximum connector's message size. |
@@ -109,6 +111,12 @@ struct cn_queue_dev { | |||
109 | unsigned char name[CN_CBQ_NAMELEN]; | 111 | unsigned char name[CN_CBQ_NAMELEN]; |
110 | 112 | ||
111 | struct workqueue_struct *cn_queue; | 113 | struct workqueue_struct *cn_queue; |
114 | /* Sent to kevent to create cn_queue only when needed */ | ||
115 | struct work_struct wq_creation; | ||
116 | /* Tell if the wq_creation job is pending/completed */ | ||
117 | atomic_t wq_requested; | ||
118 | /* Wait for cn_queue to be created */ | ||
119 | wait_queue_head_t wq_created; | ||
112 | 120 | ||
113 | struct list_head queue_list; | 121 | struct list_head queue_list; |
114 | spinlock_t queue_lock; | 122 | spinlock_t queue_lock; |
@@ -164,6 +172,8 @@ int cn_netlink_send(struct cn_msg *, u32, gfp_t); | |||
164 | int cn_queue_add_callback(struct cn_queue_dev *dev, char *name, struct cb_id *id, void (*callback)(void *)); | 172 | int cn_queue_add_callback(struct cn_queue_dev *dev, char *name, struct cb_id *id, void (*callback)(void *)); |
165 | void cn_queue_del_callback(struct cn_queue_dev *dev, struct cb_id *id); | 173 | void cn_queue_del_callback(struct cn_queue_dev *dev, struct cb_id *id); |
166 | 174 | ||
175 | int queue_cn_work(struct cn_callback_entry *cbq, struct work_struct *work); | ||
176 | |||
167 | struct cn_queue_dev *cn_queue_alloc_dev(char *name, struct sock *); | 177 | struct cn_queue_dev *cn_queue_alloc_dev(char *name, struct sock *); |
168 | void cn_queue_free_dev(struct cn_queue_dev *dev); | 178 | void cn_queue_free_dev(struct cn_queue_dev *dev); |
169 | 179 | ||