From linux-usb-owner@vger.kernel.org Fri Apr 25 11:19:08 2008 From: Tejun Heo Date: Sat, 26 Apr 2008 03:16:04 +0900 Subject: klist: implement KLIST_INIT() and DEFINE_KLIST() To: Greg KH Cc: Peter Zijlstra , James Bottomley , Alan Stern , Andrew Morton , oliver@neukum.org, Alan Cox , zaitcev@redhat.com, Linux Kernel Mailing List , linux-usb@vger.kernel.org Message-ID: <48121FE4.5010803@gmail.com> klist is missing static initializers and definition helper. Add them. Signed-off-by: Tejun Heo Cc: Peter Zijlstra Signed-off-by: Greg Kroah-Hartman --- include/linux/klist.h | 8 ++++++++ 1 file changed, 8 insertions(+) --- a/include/linux/klist.h +++ b/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 *));