diff options
author | K. Y. Srinivasan <kys@microsoft.com> | 2012-12-01 06:46:32 -0800 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2013-01-17 10:46:39 -0800 |
commit | 6fdf3b21433e901dcba0ac186f00d604ce944f56 (patch) | |
tree | 57ba241493d522388a1d8eda8663f43c96b57f32 /drivers/hv/hyperv_vmbus.h | |
parent | 0bffd25ce919f88ea6473150b66d26e7fa5712af (diff) | |
download | kernel_goldelico_gta04-6fdf3b21433e901dcba0ac186f00d604ce944f56.zip kernel_goldelico_gta04-6fdf3b21433e901dcba0ac186f00d604ce944f56.tar.gz kernel_goldelico_gta04-6fdf3b21433e901dcba0ac186f00d604ce944f56.tar.bz2 |
Drivers: hv: Implement routines for read side signaling optimization
Implement functions that will support read-side signaling optimization.
By having the reader indicate the start of the "read" operation and the
"end" of the read operation we can more efficiently handle the signaling
protocol: while the read is in progress, there is no need for the "writer"
to signal the "reader" as new items are put on the read queue.
Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
Reviewed-by: Haiyang Zhang <haiyangz@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 | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/hv/hyperv_vmbus.h b/drivers/hv/hyperv_vmbus.h index d8d1fad..3184f6f 100644 --- a/drivers/hv/hyperv_vmbus.h +++ b/drivers/hv/hyperv_vmbus.h @@ -570,6 +570,10 @@ u32 hv_get_ringbuffer_interrupt_mask(struct hv_ring_buffer_info *ring_info); void hv_ringbuffer_get_debuginfo(struct hv_ring_buffer_info *ring_info, struct hv_ring_buffer_debug_info *debug_info); +void hv_begin_read(struct hv_ring_buffer_info *rbi); + +u32 hv_end_read(struct hv_ring_buffer_info *rbi); + /* * Maximum channels is determined by the size of the interrupt page * which is PAGE_SIZE. 1/2 of PAGE_SIZE is for send endpoint interrupt |