diff options
author | K. Y. Srinivasan <kys@microsoft.com> | 2016-11-06 13:14:17 -0800 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2016-11-07 10:01:17 +0100 |
commit | 1f6ee4e7d83586c8b10bd4f2f4346353d04ce884 (patch) | |
tree | 0a81141b2e8dde8f97e099eab3ef3663d333657d /drivers/hv/hyperv_vmbus.h | |
parent | 74198eb4a42c4a3c4fbef08fa01a291a282f7c2e (diff) | |
download | blackbird-op-linux-1f6ee4e7d83586c8b10bd4f2f4346353d04ce884.tar.gz blackbird-op-linux-1f6ee4e7d83586c8b10bd4f2f4346353d04ce884.zip |
Drivers: hv: vmbus: On write cleanup the logic to interrupt the host
Signal the host when we determine the host is to be signaled.
The currrent code determines the need to signal in the ringbuffer
code and actually issues the signal elsewhere. This can result
in the host viewing this interrupt as spurious since the host may also
poll the channel. Make the necessary adjustments.
Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/hv/hyperv_vmbus.h')
-rw-r--r-- | drivers/hv/hyperv_vmbus.h | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/hv/hyperv_vmbus.h b/drivers/hv/hyperv_vmbus.h index bdab7e7f2a15..2d42ebe2af6c 100644 --- a/drivers/hv/hyperv_vmbus.h +++ b/drivers/hv/hyperv_vmbus.h @@ -527,10 +527,10 @@ int hv_ringbuffer_init(struct hv_ring_buffer_info *ring_info, void hv_ringbuffer_cleanup(struct hv_ring_buffer_info *ring_info); -int hv_ringbuffer_write(struct hv_ring_buffer_info *ring_info, +int hv_ringbuffer_write(struct vmbus_channel *channel, struct kvec *kv_list, - u32 kv_count, bool *signal, bool lock, - enum hv_signal_policy policy); + u32 kv_count, bool lock, + bool kick_q); int hv_ringbuffer_read(struct hv_ring_buffer_info *inring_info, void *buffer, u32 buflen, u32 *buffer_actual_len, |