From 882910a780b3b48c54aa6d4895ee7e4fa28f91d1 Mon Sep 17 00:00:00 2001 From: Corey Minyard Date: Wed, 8 Nov 2006 17:44:52 -0800 Subject: [PATCH] --- yaml --- r: 40832 b: refs/heads/master c: f3ce6a0ead8c557e9acdc733addd23cbc206c7e3 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/drivers/char/ipmi/ipmi_msghandler.c | 12 +++++++++++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index 2b9755459286..8fc32dde48c0 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 13bb7e37e5081d03643e2bd64f3f5d21f32e7221 +refs/heads/master: f3ce6a0ead8c557e9acdc733addd23cbc206c7e3 diff --git a/trunk/drivers/char/ipmi/ipmi_msghandler.c b/trunk/drivers/char/ipmi/ipmi_msghandler.c index 34a4fd13fa81..e55a0d276729 100644 --- a/trunk/drivers/char/ipmi/ipmi_msghandler.c +++ b/trunk/drivers/char/ipmi/ipmi_msghandler.c @@ -376,13 +376,23 @@ static void free_recv_msg_list(struct list_head *q) } } +static void free_smi_msg_list(struct list_head *q) +{ + struct ipmi_smi_msg *msg, *msg2; + + list_for_each_entry_safe(msg, msg2, q, link) { + list_del(&msg->link); + ipmi_free_smi_msg(msg); + } +} + static void clean_up_interface_data(ipmi_smi_t intf) { int i; struct cmd_rcvr *rcvr, *rcvr2; struct list_head list; - free_recv_msg_list(&intf->waiting_msgs); + free_smi_msg_list(&intf->waiting_msgs); free_recv_msg_list(&intf->waiting_events); /* Wholesale remove all the entries from the list in the