svn commit: r303329 - head/sys/dev/hyperv/vmbus

Sepherosa Ziehau sephe at FreeBSD.org
Tue Jul 26 05:06:01 UTC 2016


Author: sephe
Date: Tue Jul 26 05:06:00 2016
New Revision: 303329
URL: https://svnweb.freebsd.org/changeset/base/303329

Log:
  hyperv/vmbus: Nuke unnecessary accessor functions.
  
  MFC after:	1 week
  Sponsored by:	Microsoft OSTC
  Differential Revision:	https://reviews.freebsd.org/D7303

Modified:
  head/sys/dev/hyperv/vmbus/hv_ring_buffer.c

Modified: head/sys/dev/hyperv/vmbus/hv_ring_buffer.c
==============================================================================
--- head/sys/dev/hyperv/vmbus/hv_ring_buffer.c	Tue Jul 26 03:47:16 2016	(r303328)
+++ head/sys/dev/hyperv/vmbus/hv_ring_buffer.c	Tue Jul 26 05:06:00 2016	(r303329)
@@ -136,86 +136,6 @@ get_ring_buffer_avail_bytes(hv_vmbus_rin
 	*read = rbi->ring_data_size - *write;
 }
 
-/**
- * @brief Get the next write location for the specified ring buffer
- */
-static __inline uint32_t
-get_next_write_location(hv_vmbus_ring_buffer_info *ring_info)
-{
-	return ring_info->ring_buffer->br_windex;
-}
-
-/**
- * @brief Set the next write location for the specified ring buffer
- */
-static __inline void
-set_next_write_location(hv_vmbus_ring_buffer_info *ring_info,
-    uint32_t next_write_location)
-{
-	ring_info->ring_buffer->br_windex = next_write_location;
-}
-
-/**
- * @brief Get the next read location for the specified ring buffer
- */
-static __inline uint32_t
-get_next_read_location(hv_vmbus_ring_buffer_info *ring_info)
-{
-	return ring_info->ring_buffer->br_rindex;
-}
-
-/**
- * @brief Get the next read location + offset for the specified ring buffer.
- * This allows the caller to skip.
- */
-static __inline uint32_t
-get_next_read_location_with_offset(hv_vmbus_ring_buffer_info *ring_info,
-    uint32_t offset)
-{
-	uint32_t next = ring_info->ring_buffer->br_rindex;
-
-	next += offset;
-	next %= ring_info->ring_data_size;
-	return (next);
-}
-
-/**
- * @brief Set the next read location for the specified ring buffer
- */
-static __inline void
-set_next_read_location(hv_vmbus_ring_buffer_info *ring_info,
-    uint32_t next_read_location)
-{
-	ring_info->ring_buffer->br_rindex = next_read_location;
-}
-
-/**
- * @brief Get the start of the ring buffer
- */
-static __inline void *
-get_ring_buffer(hv_vmbus_ring_buffer_info *ring_info)
-{
-	return ring_info->ring_buffer->br_data;
-}
-
-/**
- * @brief Get the size of the ring buffer.
- */
-static __inline uint32_t
-get_ring_buffer_size(hv_vmbus_ring_buffer_info *ring_info)
-{
-	return ring_info->ring_data_size;
-}
-
-/**
- * Get the read and write indices as uint64_t of the specified ring buffer.
- */
-static __inline uint64_t
-get_ring_buffer_indices(hv_vmbus_ring_buffer_info *ring_info)
-{
-	return ((uint64_t)ring_info->ring_buffer->br_windex) << 32;
-}
-
 void
 hv_ring_buffer_read_begin(hv_vmbus_ring_buffer_info *ring_info)
 {
@@ -341,7 +261,7 @@ hv_ring_buffer_write(hv_vmbus_ring_buffe
 	/*
 	 * Write to the ring buffer
 	 */
-	next_write_location = get_next_write_location(out_ring_info);
+	next_write_location = out_ring_info->ring_buffer->br_windex;
 
 	old_write_location = next_write_location;
 
@@ -353,7 +273,7 @@ hv_ring_buffer_write(hv_vmbus_ring_buffe
 	/*
 	 * Set previous packet start
 	 */
-	prev_indices = get_ring_buffer_indices(out_ring_info);
+	prev_indices = ((uint64_t)out_ring_info->ring_buffer->br_windex) << 32;
 
 	next_write_location = copy_to_ring_buffer(out_ring_info,
 	    next_write_location, (char *)&prev_indices, sizeof(uint64_t));
@@ -366,7 +286,7 @@ hv_ring_buffer_write(hv_vmbus_ring_buffe
 	/*
 	 * Now, update the write location
 	 */
-	set_next_write_location(out_ring_info, next_write_location);
+	out_ring_info->ring_buffer->br_windex = next_write_location;
 
 	mtx_unlock_spin(&out_ring_info->ring_lock);
 
@@ -403,7 +323,7 @@ hv_ring_buffer_peek(hv_vmbus_ring_buffer
 	/*
 	 * Convert to byte offset
 	 */
-	nextReadLocation = get_next_read_location(in_ring_info);
+	nextReadLocation = in_ring_info->ring_buffer->br_rindex;
 
 	nextReadLocation = copy_from_ring_buffer(in_ring_info,
 	    (char *)buffer, buffer_len, nextReadLocation);
@@ -441,8 +361,8 @@ hv_ring_buffer_read(hv_vmbus_ring_buffer
 		return (EAGAIN);
 	}
 
-	next_read_location = get_next_read_location_with_offset(in_ring_info,
-	    offset);
+	next_read_location = (in_ring_info->ring_buffer->br_rindex + offset) %
+	    in_ring_info->ring_data_size;
 
 	next_read_location = copy_from_ring_buffer(in_ring_info, (char *)buffer,
 	    buffer_len, next_read_location);
@@ -460,7 +380,7 @@ hv_ring_buffer_read(hv_vmbus_ring_buffer
 	/*
 	 * Update the read index
 	 */
-	set_next_read_location(in_ring_info, next_read_location);
+	in_ring_info->ring_buffer->br_rindex = next_read_location;
 
 	mtx_unlock_spin(&in_ring_info->ring_lock);
 
@@ -476,8 +396,8 @@ static uint32_t
 copy_to_ring_buffer(hv_vmbus_ring_buffer_info *ring_info,
     uint32_t start_write_offset, const uint8_t *src, uint32_t src_len)
 {
-	char *ring_buffer = get_ring_buffer(ring_info);
-	uint32_t ring_buffer_size = get_ring_buffer_size(ring_info);
+	char *ring_buffer = ring_info->ring_buffer->br_data;
+	uint32_t ring_buffer_size = ring_info->ring_data_size;
 	uint32_t fragLen;
 
 	if (src_len > ring_buffer_size - start_write_offset) {
@@ -505,8 +425,8 @@ copy_from_ring_buffer(hv_vmbus_ring_buff
     uint32_t dest_len, uint32_t start_read_offset)
 {
 	uint32_t fragLen;
-	char *ring_buffer = get_ring_buffer(ring_info);
-	uint32_t ring_buffer_size = get_ring_buffer_size(ring_info);
+	char *ring_buffer = ring_info->ring_buffer->br_data;
+	uint32_t ring_buffer_size = ring_info->ring_data_size;
 
 	if (dest_len > ring_buffer_size - start_read_offset) {
 		/* wrap-around detected at the src */


More information about the svn-src-all mailing list