projects/linux·commit 177294d1

[PATCH] ipmi: fix inconsistent spinlock usage

177294d1 · Hironobu Ishii <[email protected]> · 2005-11-11 08:12:21 -06:00

Part of a patch was accidentally reverted, this corrects an
inconsistent spinlock use in the IPMI message handler.

Signed-off-by: Hironobu Ishii <[email protected]>
Signed-off-by: Corey Minyard <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Commit
177294d19174cf92de22434bb1fc9a8ecdbbe658
Parents
9b80b11c

Changes

1 files changed · +3 −3

FileStatusAddDelContent
drivers/char/ipmi/ipmi_msghandler.cmodified+3−3View file

drivers/char/ipmi/ipmi_msghandler.c

View file
diff --git a/drivers/char/ipmi/ipmi_msghandler.c b/drivers/char/ipmi/ipmi_msghandler.c
index c1d06ba..d16bd4b 100644
--- a/drivers/char/ipmi/ipmi_msghandler.c
+++ b/drivers/char/ipmi/ipmi_msghandler.c
@@ -2648,7 +2648,7 @@ void ipmi_smi_msg_received(ipmi_smi_t intf,
spin_lock_irqsave(&intf->waiting_msgs_lock, flags);
if (!list_empty(&intf->waiting_msgs)) {
list_add_tail(&msg->link, &intf->waiting_msgs);
- spin_unlock(&intf->waiting_msgs_lock);
+ spin_unlock_irqrestore(&intf->waiting_msgs_lock, flags);
goto out;
}
spin_unlock_irqrestore(&intf->waiting_msgs_lock, flags);
@@ -2657,9 +2657,9 @@ void ipmi_smi_msg_received(ipmi_smi_t intf,
if (rv > 0) {
/* Could not handle the message now, just add it to a
list to handle later. */
- spin_lock(&intf->waiting_msgs_lock);
+ spin_lock_irqsave(&intf->waiting_msgs_lock, flags);
list_add_tail(&msg->link, &intf->waiting_msgs);
- spin_unlock(&intf->waiting_msgs_lock);
+ spin_unlock_irqrestore(&intf->waiting_msgs_lock, flags);
} else if (rv == 0) {
ipmi_free_smi_msg(msg);
}