Re: INIT_LIST_HEAD marco audit

From: Andrew Morton (morton@nortelnetworks.com)
Date: Mon Dec 11 2000 - 18:07:21 EST


"Mohammad A. Haque" wrote:
>
> Thinko.
>
> Question is... Adam Richter posted a patch for i2o_lan.c that does
> this...
>
> static struct tq_struct i2o_post_buckets_task = {
> list: LIST_HEAD_INIT(i2o_post_buckets_task.list),
> sync: 0,
> routine: (void (*)(void *))i2o_lan_receive_post,
> data: (void *) 0
> };
>

Will someone pleeeeze compile, test, use and submit this?

--- linux-2.4.0-test12-pre7/include/linux/tqueue.h Mon Dec 11 13:21:04 2000
+++ linux/include/linux/tqueue.h Tue Dec 12 10:03:51 2000
@@ -47,6 +47,16 @@
 #define DECLARE_TASK_QUEUE(q) LIST_HEAD(q)
 #define TQ_ACTIVE(q) (!list_empty(&q))
 
+#define INIT_TQ_STRUCT(routine, data) \
+ { list: LIST_HEAD_INIT(*(struct list_head *)0), \
+ sync: 0, \
+ routine: (routine), \
+ data: (data), \
+ }
+
+#define DECLARE_TQ_STRUCT(name, routine, data) \
+ struct tq_struct name = INIT_TQ_STRUCT(routine, data)
+
 extern task_queue tq_timer, tq_immediate, tq_disk;
 
 /*
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Fri Dec 15 2000 - 21:00:22 EST