diff options
author | Ingo Molnar <mingo@elte.hu> | 2006-07-10 13:45:32 +0200 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-07-10 22:24:25 +0200 |
commit | 21d71f513b6221f482ed6ad45e05f073ae67f319 (patch) | |
tree | 4b890613d46adce1391be4c5c954f5042968ba85 /kernel/wait.c | |
parent | [PATCH] fix weird logic in alloc_fdtable() (diff) | |
download | linux-21d71f513b6221f482ed6ad45e05f073ae67f319.tar.xz linux-21d71f513b6221f482ed6ad45e05f073ae67f319.zip |
[PATCH] uninline init_waitqueue_head()
allyesconfig vmlinux size delta:
text data bss dec filename
20736884 6073834 3075176 29885894 vmlinux.before
20721009 6073966 3075176 29870151 vmlinux.after
~18 bytes per callsite, 15K of text size (~0.1%) saved.
(as an added bonus this also removes a lockdep annotation.)
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'kernel/wait.c')
-rw-r--r-- | kernel/wait.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/kernel/wait.c b/kernel/wait.c index a1d57aeb7f75..59a82f63275d 100644 --- a/kernel/wait.c +++ b/kernel/wait.c @@ -10,9 +10,13 @@ #include <linux/wait.h> #include <linux/hash.h> -struct lock_class_key waitqueue_lock_key; +void init_waitqueue_head(wait_queue_head_t *q) +{ + spin_lock_init(&q->lock); + INIT_LIST_HEAD(&q->task_list); +} -EXPORT_SYMBOL(waitqueue_lock_key); +EXPORT_SYMBOL(init_waitqueue_head); void fastcall add_wait_queue(wait_queue_head_t *q, wait_queue_t *wait) { |