Lines Matching refs:ring_buffer
57 if (READ_ONCE(rbi->ring_buffer->interrupt_mask)) in hv_signal_on_write()
66 if (old_write == READ_ONCE(rbi->ring_buffer->read_index)) { in hv_signal_on_write()
76 u32 next = ring_info->ring_buffer->write_index; in hv_get_next_write_location()
86 ring_info->ring_buffer->write_index = next_write_location; in hv_set_next_write_location()
100 return (u64)ring_info->ring_buffer->write_index << 32; in hv_get_ring_bufferindices()
113 void *ring_buffer = hv_get_ring_buffer(ring_info); in hv_copyto_ringbuffer() local
116 memcpy(ring_buffer + start_write_offset, src, srclen); in hv_copyto_ringbuffer()
139 read_loc = READ_ONCE(rbi->ring_buffer->read_index); in hv_get_ringbuffer_availbytes()
140 write_loc = READ_ONCE(rbi->ring_buffer->write_index); in hv_get_ringbuffer_availbytes()
157 if (!ring_info->ring_buffer) { in hv_ringbuffer_get_debuginfo()
167 debug_info->current_read_index = ring_info->ring_buffer->read_index; in hv_ringbuffer_get_debuginfo()
168 debug_info->current_write_index = ring_info->ring_buffer->write_index; in hv_ringbuffer_get_debuginfo()
170 = ring_info->ring_buffer->interrupt_mask; in hv_ringbuffer_get_debuginfo()
212 ring_info->ring_buffer = (struct hv_ring_buffer *) in hv_ringbuffer_init()
217 if (!ring_info->ring_buffer) in hv_ringbuffer_init()
221 memset(ring_info->ring_buffer, 0x00, PAGE_SIZE * page_cnt); in hv_ringbuffer_init()
234 ring_info->ring_buffer = (struct hv_ring_buffer *) in hv_ringbuffer_init()
239 if (!ring_info->ring_buffer) in hv_ringbuffer_init()
244 ring_info->ring_buffer->read_index = in hv_ringbuffer_init()
245 ring_info->ring_buffer->write_index = 0; in hv_ringbuffer_init()
248 ring_info->ring_buffer->feature_bits.value = 1; in hv_ringbuffer_init()
274 vunmap(ring_info->ring_buffer); in hv_ringbuffer_cleanup()
275 ring_info->ring_buffer = NULL; in hv_ringbuffer_cleanup()
459 write_loc = virt_load_acquire(&rbi->ring_buffer->write_index); in hv_pkt_iter_avail()
591 start_read_index = rbi->ring_buffer->read_index; in hv_pkt_iter_close()
592 rbi->ring_buffer->read_index = rbi->priv_read_index; in hv_pkt_iter_close()
599 if (!rbi->ring_buffer->feature_bits.feat_pending_send_sz) in hv_pkt_iter_close()
618 pending_sz = READ_ONCE(rbi->ring_buffer->pending_send_sz); in hv_pkt_iter_close()