提交 604a1eb0 编写于 作者: K K. Y. Srinivasan 提交者: Greg Kroah-Hartman

Staging: hv: vmbus: Don't free the channel when the channel is closed

When the driver unloads, the device must persist. A channel represents the
device and so we should not free the channel when the channel is closed as
part of the driver unloading.
Signed-off-by: NK. Y. Srinivasan <kys@microsoft.com>
Signed-off-by: NHaiyang Zhang <haiyangz@microsoft.com>
Signed-off-by: NAbhishek Kane <v-abkane@microsoft.com>
Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
上级 2aa05dcb
......@@ -552,7 +552,6 @@ void vmbus_close(struct vmbus_channel *channel)
{
struct vmbus_channel_close_channel *msg;
struct vmbus_channel_msginfo *info;
unsigned long flags;
int ret;
/* Stop callback and cancel the timer asap */
......@@ -591,19 +590,6 @@ void vmbus_close(struct vmbus_channel *channel)
kfree(info);
/*
* If we are closing the channel during an error path in
* opening the channel, don't free the channel since the
* caller will free the channel
*/
if (channel->state == CHANNEL_OPEN_STATE) {
spin_lock_irqsave(&vmbus_connection.channel_lock, flags);
list_del(&channel->listentry);
spin_unlock_irqrestore(&vmbus_connection.channel_lock, flags);
free_channel(channel);
}
}
EXPORT_SYMBOL_GPL(vmbus_close);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册