mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-10 12:57:06 +09:00
Drivers: hv: vmbus: Prevent sending data on a rescinded channel
am: e44eab51e7
Change-Id: I2ddbfadcd61f6e9bd0cbe93de0bc0d4d1c6399f9
This commit is contained in:
@@ -298,6 +298,9 @@ int hv_ringbuffer_write(struct vmbus_channel *channel,
|
||||
unsigned long flags = 0;
|
||||
struct hv_ring_buffer_info *outring_info = &channel->outbound;
|
||||
|
||||
if (channel->rescind)
|
||||
return -ENODEV;
|
||||
|
||||
for (i = 0; i < kv_count; i++)
|
||||
totalbytes_towrite += kv_list[i].iov_len;
|
||||
|
||||
@@ -350,6 +353,10 @@ int hv_ringbuffer_write(struct vmbus_channel *channel,
|
||||
spin_unlock_irqrestore(&outring_info->ring_lock, flags);
|
||||
|
||||
hv_signal_on_write(old_write, channel, kick_q);
|
||||
|
||||
if (channel->rescind)
|
||||
return -ENODEV;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user