diff options
author | David Howells <dhowells@redhat.com> | 2006-11-22 14:54:45 +0000 |
---|---|---|
committer | David Howells <dhowells@redhat.com> | 2006-11-22 14:54:45 +0000 |
commit | 6bb49e5965c1fc399b4d3cd2b5cf2da535b330c0 (patch) | |
tree | ebf48d3bb43c8dbf65d2653b8810973e69d3517e /include | |
parent | 52bad64d95bd89e08c49ec5a071fa6dcbe5a1a9c (diff) | |
download | lwn-6bb49e5965c1fc399b4d3cd2b5cf2da535b330c0.tar.gz lwn-6bb49e5965c1fc399b4d3cd2b5cf2da535b330c0.zip |
WorkStruct: Typedef the work function prototype
Define a type for the work function prototype. It's not only kept in the
work_struct struct, it's also passed as an argument to several functions.
This makes it easier to change it.
Signed-Off-By: David Howells <dhowells@redhat.com>
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/workqueue.h | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/include/linux/workqueue.h b/include/linux/workqueue.h index 9faaccae570e..cef40b22ff9a 100644 --- a/include/linux/workqueue.h +++ b/include/linux/workqueue.h @@ -11,10 +11,12 @@ struct workqueue_struct; +typedef void (*work_func_t)(void *data); + struct work_struct { unsigned long pending; struct list_head entry; - void (*func)(void *); + work_func_t func; void *data; void *wq_data; }; @@ -91,7 +93,7 @@ extern int FASTCALL(schedule_work(struct work_struct *work)); extern int FASTCALL(schedule_delayed_work(struct delayed_work *work, unsigned long delay)); extern int schedule_delayed_work_on(int cpu, struct delayed_work *work, unsigned long delay); -extern int schedule_on_each_cpu(void (*func)(void *info), void *info); +extern int schedule_on_each_cpu(work_func_t func, void *info); extern void flush_scheduled_work(void); extern int current_is_keventd(void); extern int keventd_up(void); @@ -100,8 +102,7 @@ extern void init_workqueues(void); void cancel_rearming_delayed_work(struct delayed_work *work); void cancel_rearming_delayed_workqueue(struct workqueue_struct *, struct delayed_work *); -int execute_in_process_context(void (*fn)(void *), void *, - struct execute_work *); +int execute_in_process_context(work_func_t fn, void *, struct execute_work *); /* * Kill off a pending schedule_delayed_work(). Note that the work callback |