From 43980bca79e0ab463dfba858719edd35a7b73f1e Mon Sep 17 00:00:00 2001 From: Tejun Heo Date: Sat, 26 Apr 2008 03:16:04 +0900 Subject: [PATCH] --- yaml --- r: 95601 b: refs/heads/master c: 1da43e4a9ee942c9c967dbe8839476571df0c3ed h: refs/heads/master i: 95599: 636641a18eada6d54f5eee349d83e7c1cac5e347 v: v3 --- [refs] | 2 +- trunk/include/linux/klist.h | 8 ++++++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index dc4738c37f19..d501b123c109 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 40a2159abf3d0107bba359246554bd7d56f2171b +refs/heads/master: 1da43e4a9ee942c9c967dbe8839476571df0c3ed diff --git a/trunk/include/linux/klist.h b/trunk/include/linux/klist.h index 74071254c9d3..a119c0da8977 100644 --- a/trunk/include/linux/klist.h +++ b/trunk/include/linux/klist.h @@ -25,6 +25,14 @@ struct klist { void (*put)(struct klist_node *); }; +#define KLIST_INIT(_name, _get, _put) \ + { .k_lock = __SPIN_LOCK_UNLOCKED(_name.k_lock), \ + .k_list = LIST_HEAD_INIT(_name.k_list), \ + .get = _get, \ + .put = _put, } + +#define DEFINE_KLIST(_name, _get, _put) \ + struct klist _name = KLIST_INIT(_name, _get, _put) extern void klist_init(struct klist * k, void (*get)(struct klist_node *), void (*put)(struct klist_node *));