diff options
| -rw-r--r-- | drivers/char/ipmi/kcs_bmc.c | 5 | 
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/char/ipmi/kcs_bmc.c b/drivers/char/ipmi/kcs_bmc.c index 03d02a848f3a..8b1161d5194a 100644 --- a/drivers/char/ipmi/kcs_bmc.c +++ b/drivers/char/ipmi/kcs_bmc.c @@ -56,12 +56,13 @@ irqreturn_t kcs_bmc_handle_event(struct kcs_bmc_device *kcs_bmc)  {  	struct kcs_bmc_client *client;  	irqreturn_t rc = IRQ_NONE; +	unsigned long flags; -	spin_lock(&kcs_bmc->lock); +	spin_lock_irqsave(&kcs_bmc->lock, flags);  	client = kcs_bmc->client;  	if (client)  		rc = client->ops->event(client); -	spin_unlock(&kcs_bmc->lock); +	spin_unlock_irqrestore(&kcs_bmc->lock, flags);  	return rc;  }  | 
