summaryrefslogtreecommitdiffstats
path: root/include/linux/klist.h
diff options
context:
space:
mode:
authorMatthew Wilcox <matthew@wil.cx>2008-10-16 14:57:54 -0600
committerGreg Kroah-Hartman <gregkh@suse.de>2009-01-06 10:44:30 -0800
commit210272a28465a7a31bcd580d2f9529f924965aa5 (patch)
treebd368e8f27c7691b12deaafc1a52c79db1fa1cc9 /include/linux/klist.h
parent929d2fa5955ab27aa21fac615b23e0e92e8dc3a0 (diff)
downloadlinux-210272a28465a7a31bcd580d2f9529f924965aa5.tar.gz
linux-210272a28465a7a31bcd580d2f9529f924965aa5.tar.bz2
linux-210272a28465a7a31bcd580d2f9529f924965aa5.zip
driver core: Remove completion from struct klist_node
Removing the completion from klist_node reduces its size from 64 bytes to 28 on x86-64. To maintain the semantics of klist_remove(), we add a single list of klist nodes which are pending deletion and scan them. Signed-off-by: Matthew Wilcox <willy@linux.intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'include/linux/klist.h')
-rw-r--r--include/linux/klist.h2
1 files changed, 0 insertions, 2 deletions
diff --git a/include/linux/klist.h b/include/linux/klist.h
index 8ea98db223e5..d5a27af9dba5 100644
--- a/include/linux/klist.h
+++ b/include/linux/klist.h
@@ -13,7 +13,6 @@
#define _LINUX_KLIST_H
#include <linux/spinlock.h>
-#include <linux/completion.h>
#include <linux/kref.h>
#include <linux/list.h>
@@ -41,7 +40,6 @@ struct klist_node {
void *n_klist; /* never access directly */
struct list_head n_node;
struct kref n_ref;
- struct completion n_removed;
};
extern void klist_add_tail(struct klist_node *n, struct klist *k);