summaryrefslogtreecommitdiffstats
path: root/drivers/staging/hv/Channel.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/staging/hv/Channel.c')
-rw-r--r--drivers/staging/hv/Channel.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/staging/hv/Channel.c b/drivers/staging/hv/Channel.c
index 3f48ac7cd11f..196c7a6e549e 100644
--- a/drivers/staging/hv/Channel.c
+++ b/drivers/staging/hv/Channel.c
@@ -686,6 +686,7 @@ VmbusChannelClose(
int ret=0;
VMBUS_CHANNEL_CLOSE_CHANNEL* msg;
VMBUS_CHANNEL_MSGINFO* info;
+ unsigned long flags;
DPRINT_ENTER(VMBUS);
@@ -729,9 +730,9 @@ VmbusChannelClose(
// since the caller will free the channel
if (Channel->State == CHANNEL_OPEN_STATE)
{
- SpinlockAcquire(gVmbusConnection.ChannelLock);
+ spin_lock_irqsave(&gVmbusConnection.channel_lock, flags);
REMOVE_ENTRY_LIST(&Channel->ListEntry);
- SpinlockRelease(gVmbusConnection.ChannelLock);
+ spin_unlock_irqrestore(&gVmbusConnection.channel_lock, flags);
FreeVmbusChannel(Channel);
}