aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Documentation/connector/cn_test.c4
-rw-r--r--drivers/connector/cn_proc.c3
-rw-r--r--drivers/connector/cn_queue.c7
-rw-r--r--drivers/connector/connector.c6
-rw-r--r--drivers/staging/dst/dcore.c3
-rw-r--r--drivers/video/uvesafb.c3
-rw-r--r--drivers/w1/w1_netlink.c3
-rw-r--r--include/linux/connector.h6
8 files changed, 16 insertions, 19 deletions
diff --git a/Documentation/connector/cn_test.c b/Documentation/connector/cn_test.c
index f688eba87704..50d5ce4899c8 100644
--- a/Documentation/connector/cn_test.c
+++ b/Documentation/connector/cn_test.c
@@ -32,10 +32,8 @@ static char cn_test_name[] = "cn_test";
32static struct sock *nls; 32static struct sock *nls;
33static struct timer_list cn_test_timer; 33static struct timer_list cn_test_timer;
34 34
35void cn_test_callback(void *data) 35void cn_test_callback(struct cn_msg *msg)
36{ 36{
37 struct cn_msg *msg = (struct cn_msg *)data;
38
39 printk("%s: %lu: idx=%x, val=%x, seq=%u, ack=%u, len=%d: %s.\n", 37 printk("%s: %lu: idx=%x, val=%x, seq=%u, ack=%u, len=%d: %s.\n",
40 __func__, jiffies, msg->id.idx, msg->id.val, 38 __func__, jiffies, msg->id.idx, msg->id.val,
41 msg->seq, msg->ack, msg->len, (char *)msg->data); 39 msg->seq, msg->ack, msg->len, (char *)msg->data);
diff --git a/drivers/connector/cn_proc.c b/drivers/connector/cn_proc.c
index c5afc98e2675..85e5dc0431fe 100644
--- a/drivers/connector/cn_proc.c
+++ b/drivers/connector/cn_proc.c
@@ -202,9 +202,8 @@ static void cn_proc_ack(int err, int rcvd_seq, int rcvd_ack)
202 * cn_proc_mcast_ctl 202 * cn_proc_mcast_ctl
203 * @data: message sent from userspace via the connector 203 * @data: message sent from userspace via the connector
204 */ 204 */
205static void cn_proc_mcast_ctl(void *data) 205static void cn_proc_mcast_ctl(struct cn_msg *msg)
206{ 206{
207 struct cn_msg *msg = data;
208 enum proc_cn_mcast_op *mc_op = NULL; 207 enum proc_cn_mcast_op *mc_op = NULL;
209 int err = 0; 208 int err = 0;
210 209
diff --git a/drivers/connector/cn_queue.c b/drivers/connector/cn_queue.c
index c769ef269fb5..d478aefcd3be 100644
--- a/drivers/connector/cn_queue.c
+++ b/drivers/connector/cn_queue.c
@@ -87,7 +87,9 @@ void cn_queue_wrapper(struct work_struct *work)
87 kfree(d->free); 87 kfree(d->free);
88} 88}
89 89
90static struct cn_callback_entry *cn_queue_alloc_callback_entry(char *name, struct cb_id *id, void (*callback)(void *)) 90static struct cn_callback_entry *
91cn_queue_alloc_callback_entry(char *name, struct cb_id *id,
92 void (*callback)(struct cn_msg *))
91{ 93{
92 struct cn_callback_entry *cbq; 94 struct cn_callback_entry *cbq;
93 95
@@ -120,7 +122,8 @@ int cn_cb_equal(struct cb_id *i1, struct cb_id *i2)
120 return ((i1->idx == i2->idx) && (i1->val == i2->val)); 122 return ((i1->idx == i2->idx) && (i1->val == i2->val));
121} 123}
122 124
123int cn_queue_add_callback(struct cn_queue_dev *dev, char *name, struct cb_id *id, void (*callback)(void *)) 125int cn_queue_add_callback(struct cn_queue_dev *dev, char *name, struct cb_id *id,
126 void (*callback)(struct cn_msg *))
124{ 127{
125 struct cn_callback_entry *cbq, *__cbq; 128 struct cn_callback_entry *cbq, *__cbq;
126 int found = 0; 129 int found = 0;
diff --git a/drivers/connector/connector.c b/drivers/connector/connector.c
index fd336c5a9057..3f45669f5d76 100644
--- a/drivers/connector/connector.c
+++ b/drivers/connector/connector.c
@@ -269,7 +269,8 @@ static void cn_notify(struct cb_id *id, u32 notify_event)
269 * 269 *
270 * May sleep. 270 * May sleep.
271 */ 271 */
272int cn_add_callback(struct cb_id *id, char *name, void (*callback)(void *)) 272int cn_add_callback(struct cb_id *id, char *name,
273 void (*callback)(struct cn_msg *))
273{ 274{
274 int err; 275 int err;
275 struct cn_dev *dev = &cdev; 276 struct cn_dev *dev = &cdev;
@@ -351,9 +352,8 @@ static int cn_ctl_msg_equals(struct cn_ctl_msg *m1, struct cn_ctl_msg *m2)
351 * 352 *
352 * Used for notification of a request's processing. 353 * Used for notification of a request's processing.
353 */ 354 */
354static void cn_callback(void *data) 355static void cn_callback(struct cn_msg *msg)
355{ 356{
356 struct cn_msg *msg = data;
357 struct cn_ctl_msg *ctl; 357 struct cn_ctl_msg *ctl;
358 struct cn_ctl_entry *ent; 358 struct cn_ctl_entry *ent;
359 u32 size; 359 u32 size;
diff --git a/drivers/staging/dst/dcore.c b/drivers/staging/dst/dcore.c
index fad25b753042..84724187ec3e 100644
--- a/drivers/staging/dst/dcore.c
+++ b/drivers/staging/dst/dcore.c
@@ -846,10 +846,9 @@ static dst_command_func dst_commands[] = {
846/* 846/*
847 * Configuration parser. 847 * Configuration parser.
848 */ 848 */
849static void cn_dst_callback(void *data) 849static void cn_dst_callback(struct cn_msg *msg)
850{ 850{
851 struct dst_ctl *ctl; 851 struct dst_ctl *ctl;
852 struct cn_msg *msg = data;
853 int err; 852 int err;
854 struct dst_ctl_ack ack; 853 struct dst_ctl_ack ack;
855 struct dst_node *n = NULL, *tmp; 854 struct dst_node *n = NULL, *tmp;
diff --git a/drivers/video/uvesafb.c b/drivers/video/uvesafb.c
index ca5b4643a401..e98baf6916b8 100644
--- a/drivers/video/uvesafb.c
+++ b/drivers/video/uvesafb.c
@@ -67,9 +67,8 @@ static DEFINE_MUTEX(uvfb_lock);
67 * find the kernel part of the task struct, copy the registers and 67 * find the kernel part of the task struct, copy the registers and
68 * the buffer contents and then complete the task. 68 * the buffer contents and then complete the task.
69 */ 69 */
70static void uvesafb_cn_callback(void *data) 70static void uvesafb_cn_callback(struct cn_msg *msg)
71{ 71{
72 struct cn_msg *msg = data;
73 struct uvesafb_task *utask; 72 struct uvesafb_task *utask;
74 struct uvesafb_ktask *task; 73 struct uvesafb_ktask *task;
75 74
diff --git a/drivers/w1/w1_netlink.c b/drivers/w1/w1_netlink.c
index fdf72851c574..52ccb3d3a963 100644
--- a/drivers/w1/w1_netlink.c
+++ b/drivers/w1/w1_netlink.c
@@ -306,9 +306,8 @@ static int w1_netlink_send_error(struct cn_msg *rcmsg, struct w1_netlink_msg *rm
306 return error; 306 return error;
307} 307}
308 308
309static void w1_cn_callback(void *data) 309static void w1_cn_callback(struct cn_msg *msg)
310{ 310{
311 struct cn_msg *msg = data;
312 struct w1_netlink_msg *m = (struct w1_netlink_msg *)(msg + 1); 311 struct w1_netlink_msg *m = (struct w1_netlink_msg *)(msg + 1);
313 struct w1_netlink_cmd *cmd; 312 struct w1_netlink_cmd *cmd;
314 struct w1_slave *sl; 313 struct w1_slave *sl;
diff --git a/include/linux/connector.h b/include/linux/connector.h
index b68d27850d51..47ebf416f512 100644
--- a/include/linux/connector.h
+++ b/include/linux/connector.h
@@ -136,7 +136,7 @@ struct cn_callback_data {
136 void *ddata; 136 void *ddata;
137 137
138 void *callback_priv; 138 void *callback_priv;
139 void (*callback) (void *); 139 void (*callback) (struct cn_msg *);
140 140
141 void *free; 141 void *free;
142}; 142};
@@ -167,11 +167,11 @@ struct cn_dev {
167 struct cn_queue_dev *cbdev; 167 struct cn_queue_dev *cbdev;
168}; 168};
169 169
170int cn_add_callback(struct cb_id *, char *, void (*callback) (void *)); 170int cn_add_callback(struct cb_id *, char *, void (*callback) (struct cn_msg *));
171void cn_del_callback(struct cb_id *); 171void cn_del_callback(struct cb_id *);
172int cn_netlink_send(struct cn_msg *, u32, gfp_t); 172int cn_netlink_send(struct cn_msg *, u32, gfp_t);
173 173
174int cn_queue_add_callback(struct cn_queue_dev *dev, char *name, struct cb_id *id, void (*callback)(void *)); 174int cn_queue_add_callback(struct cn_queue_dev *dev, char *name, struct cb_id *id, void (*callback)(struct cn_msg *));
175void cn_queue_del_callback(struct cn_queue_dev *dev, struct cb_id *id); 175void cn_queue_del_callback(struct cn_queue_dev *dev, struct cb_id *id);
176 176
177int queue_cn_work(struct cn_callback_entry *cbq, struct work_struct *work); 177int queue_cn_work(struct cn_callback_entry *cbq, struct work_struct *work);