提交 8a0e1c55 编写于 作者: G Greg Kroah-Hartman

Staging: hv: remove RING_BUFFER_INFO typedef

typedefs are bad, kill them.

Cc: Hank Janssen <hjanssen@microsoft.com>
Cc: Haiyang Zhang <haiyangz@microsoft.com>
Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
上级 80682b7a
...@@ -247,8 +247,8 @@ struct vmbus_channel { ...@@ -247,8 +247,8 @@ struct vmbus_channel {
/* Allocated memory for ring buffer */ /* Allocated memory for ring buffer */
void *RingBufferPages; void *RingBufferPages;
u32 RingBufferPageCount; u32 RingBufferPageCount;
RING_BUFFER_INFO Outbound; /* send to parent */ struct hv_ring_buffer_info Outbound; /* send to parent */
RING_BUFFER_INFO Inbound; /* receive from parent */ struct hv_ring_buffer_info Inbound; /* receive from parent */
spinlock_t inbound_lock; spinlock_t inbound_lock;
struct workqueue_struct *ControlWQ; struct workqueue_struct *ControlWQ;
......
...@@ -46,7 +46,7 @@ ...@@ -46,7 +46,7 @@
--*/ --*/
static inline void static inline void
GetRingBufferAvailBytes(RING_BUFFER_INFO *rbi, u32 *read, u32 *write) GetRingBufferAvailBytes(struct hv_ring_buffer_info *rbi, u32 *read, u32 *write)
{ {
u32 read_loc, write_loc; u32 read_loc, write_loc;
...@@ -68,7 +68,7 @@ GetRingBufferAvailBytes(RING_BUFFER_INFO *rbi, u32 *read, u32 *write) ...@@ -68,7 +68,7 @@ GetRingBufferAvailBytes(RING_BUFFER_INFO *rbi, u32 *read, u32 *write)
--*/ --*/
static inline u32 static inline u32
GetNextWriteLocation(RING_BUFFER_INFO *RingInfo) GetNextWriteLocation(struct hv_ring_buffer_info *RingInfo)
{ {
u32 next = RingInfo->RingBuffer->WriteIndex; u32 next = RingInfo->RingBuffer->WriteIndex;
...@@ -87,7 +87,8 @@ GetNextWriteLocation(RING_BUFFER_INFO *RingInfo) ...@@ -87,7 +87,8 @@ GetNextWriteLocation(RING_BUFFER_INFO *RingInfo)
--*/ --*/
static inline void static inline void
SetNextWriteLocation(RING_BUFFER_INFO *RingInfo, u32 NextWriteLocation) SetNextWriteLocation(struct hv_ring_buffer_info *RingInfo,
u32 NextWriteLocation)
{ {
RingInfo->RingBuffer->WriteIndex = NextWriteLocation; RingInfo->RingBuffer->WriteIndex = NextWriteLocation;
} }
...@@ -102,7 +103,7 @@ SetNextWriteLocation(RING_BUFFER_INFO *RingInfo, u32 NextWriteLocation) ...@@ -102,7 +103,7 @@ SetNextWriteLocation(RING_BUFFER_INFO *RingInfo, u32 NextWriteLocation)
--*/ --*/
static inline u32 static inline u32
GetNextReadLocation(RING_BUFFER_INFO *RingInfo) GetNextReadLocation(struct hv_ring_buffer_info *RingInfo)
{ {
u32 next = RingInfo->RingBuffer->ReadIndex; u32 next = RingInfo->RingBuffer->ReadIndex;
...@@ -122,7 +123,7 @@ GetNextReadLocation(RING_BUFFER_INFO *RingInfo) ...@@ -122,7 +123,7 @@ GetNextReadLocation(RING_BUFFER_INFO *RingInfo)
--*/ --*/
static inline u32 static inline u32
GetNextReadLocationWithOffset(RING_BUFFER_INFO *RingInfo, u32 Offset) GetNextReadLocationWithOffset(struct hv_ring_buffer_info *RingInfo, u32 Offset)
{ {
u32 next = RingInfo->RingBuffer->ReadIndex; u32 next = RingInfo->RingBuffer->ReadIndex;
...@@ -143,7 +144,7 @@ GetNextReadLocationWithOffset(RING_BUFFER_INFO *RingInfo, u32 Offset) ...@@ -143,7 +144,7 @@ GetNextReadLocationWithOffset(RING_BUFFER_INFO *RingInfo, u32 Offset)
--*/ --*/
static inline void static inline void
SetNextReadLocation(RING_BUFFER_INFO *RingInfo, u32 NextReadLocation) SetNextReadLocation(struct hv_ring_buffer_info *RingInfo, u32 NextReadLocation)
{ {
RingInfo->RingBuffer->ReadIndex = NextReadLocation; RingInfo->RingBuffer->ReadIndex = NextReadLocation;
} }
...@@ -159,7 +160,7 @@ SetNextReadLocation(RING_BUFFER_INFO *RingInfo, u32 NextReadLocation) ...@@ -159,7 +160,7 @@ SetNextReadLocation(RING_BUFFER_INFO *RingInfo, u32 NextReadLocation)
--*/ --*/
static inline void * static inline void *
GetRingBuffer(RING_BUFFER_INFO *RingInfo) GetRingBuffer(struct hv_ring_buffer_info *RingInfo)
{ {
return (void *)RingInfo->RingBuffer->Buffer; return (void *)RingInfo->RingBuffer->Buffer;
} }
...@@ -175,7 +176,7 @@ GetRingBuffer(RING_BUFFER_INFO *RingInfo) ...@@ -175,7 +176,7 @@ GetRingBuffer(RING_BUFFER_INFO *RingInfo)
--*/ --*/
static inline u32 static inline u32
GetRingBufferSize(RING_BUFFER_INFO *RingInfo) GetRingBufferSize(struct hv_ring_buffer_info *RingInfo)
{ {
return RingInfo->RingDataSize; return RingInfo->RingDataSize;
} }
...@@ -190,7 +191,7 @@ GetRingBufferSize(RING_BUFFER_INFO *RingInfo) ...@@ -190,7 +191,7 @@ GetRingBufferSize(RING_BUFFER_INFO *RingInfo)
--*/ --*/
static inline u64 static inline u64
GetRingBufferIndices(RING_BUFFER_INFO *RingInfo) GetRingBufferIndices(struct hv_ring_buffer_info *RingInfo)
{ {
return ((u64)RingInfo->RingBuffer->WriteIndex << 32) return ((u64)RingInfo->RingBuffer->WriteIndex << 32)
|| RingInfo->RingBuffer->ReadIndex; || RingInfo->RingBuffer->ReadIndex;
...@@ -206,7 +207,7 @@ GetRingBufferIndices(RING_BUFFER_INFO *RingInfo) ...@@ -206,7 +207,7 @@ GetRingBufferIndices(RING_BUFFER_INFO *RingInfo)
Dump out to console the ring buffer info Dump out to console the ring buffer info
--*/ --*/
void DumpRingInfo(RING_BUFFER_INFO *RingInfo, char *Prefix) void DumpRingInfo(struct hv_ring_buffer_info *RingInfo, char *Prefix)
{ {
u32 bytesAvailToWrite; u32 bytesAvailToWrite;
u32 bytesAvailToRead; u32 bytesAvailToRead;
...@@ -233,14 +234,14 @@ void DumpRingInfo(RING_BUFFER_INFO *RingInfo, char *Prefix) ...@@ -233,14 +234,14 @@ void DumpRingInfo(RING_BUFFER_INFO *RingInfo, char *Prefix)
static u32 static u32
CopyToRingBuffer( CopyToRingBuffer(
RING_BUFFER_INFO *RingInfo, struct hv_ring_buffer_info *RingInfo,
u32 StartWriteOffset, u32 StartWriteOffset,
void *Src, void *Src,
u32 SrcLen); u32 SrcLen);
static u32 static u32
CopyFromRingBuffer( CopyFromRingBuffer(
RING_BUFFER_INFO *RingInfo, struct hv_ring_buffer_info *RingInfo,
void *Dest, void *Dest,
u32 DestLen, u32 DestLen,
u32 StartReadOffset); u32 StartReadOffset);
...@@ -256,7 +257,7 @@ CopyFromRingBuffer( ...@@ -256,7 +257,7 @@ CopyFromRingBuffer(
Get various debug metrics for the specified ring buffer Get various debug metrics for the specified ring buffer
--*/ --*/
void RingBufferGetDebugInfo(RING_BUFFER_INFO *RingInfo, void RingBufferGetDebugInfo(struct hv_ring_buffer_info *RingInfo,
struct hv_ring_buffer_debug_info *debug_info) struct hv_ring_buffer_debug_info *debug_info)
{ {
u32 bytesAvailToWrite; u32 bytesAvailToWrite;
...@@ -285,7 +286,7 @@ void RingBufferGetDebugInfo(RING_BUFFER_INFO *RingInfo, ...@@ -285,7 +286,7 @@ void RingBufferGetDebugInfo(RING_BUFFER_INFO *RingInfo,
Get the interrupt mask for the specified ring buffer Get the interrupt mask for the specified ring buffer
--*/ --*/
u32 GetRingBufferInterruptMask(RING_BUFFER_INFO *rbi) u32 GetRingBufferInterruptMask(struct hv_ring_buffer_info *rbi)
{ {
return rbi->RingBuffer->InterruptMask; return rbi->RingBuffer->InterruptMask;
} }
...@@ -299,12 +300,12 @@ u32 GetRingBufferInterruptMask(RING_BUFFER_INFO *rbi) ...@@ -299,12 +300,12 @@ u32 GetRingBufferInterruptMask(RING_BUFFER_INFO *rbi)
Initialize the ring buffer Initialize the ring buffer
--*/ --*/
int RingBufferInit(RING_BUFFER_INFO *RingInfo, void *Buffer, u32 BufferLen) int RingBufferInit(struct hv_ring_buffer_info *RingInfo, void *Buffer, u32 BufferLen)
{ {
if (sizeof(RING_BUFFER) != PAGE_SIZE) if (sizeof(RING_BUFFER) != PAGE_SIZE)
return -EINVAL; return -EINVAL;
memset(RingInfo, 0, sizeof(RING_BUFFER_INFO)); memset(RingInfo, 0, sizeof(struct hv_ring_buffer_info));
RingInfo->RingBuffer = (RING_BUFFER *)Buffer; RingInfo->RingBuffer = (RING_BUFFER *)Buffer;
RingInfo->RingBuffer->ReadIndex = RingInfo->RingBuffer->WriteIndex = 0; RingInfo->RingBuffer->ReadIndex = RingInfo->RingBuffer->WriteIndex = 0;
...@@ -326,7 +327,7 @@ int RingBufferInit(RING_BUFFER_INFO *RingInfo, void *Buffer, u32 BufferLen) ...@@ -326,7 +327,7 @@ int RingBufferInit(RING_BUFFER_INFO *RingInfo, void *Buffer, u32 BufferLen)
Cleanup the ring buffer Cleanup the ring buffer
--*/ --*/
void RingBufferCleanup(RING_BUFFER_INFO *RingInfo) void RingBufferCleanup(struct hv_ring_buffer_info *RingInfo)
{ {
} }
...@@ -339,7 +340,7 @@ void RingBufferCleanup(RING_BUFFER_INFO *RingInfo) ...@@ -339,7 +340,7 @@ void RingBufferCleanup(RING_BUFFER_INFO *RingInfo)
Write to the ring buffer Write to the ring buffer
--*/ --*/
int RingBufferWrite(RING_BUFFER_INFO *OutRingInfo, int RingBufferWrite(struct hv_ring_buffer_info *OutRingInfo,
struct scatterlist *sglist, u32 sgcount) struct scatterlist *sglist, u32 sgcount)
{ {
int i = 0; int i = 0;
...@@ -424,7 +425,7 @@ int RingBufferWrite(RING_BUFFER_INFO *OutRingInfo, ...@@ -424,7 +425,7 @@ int RingBufferWrite(RING_BUFFER_INFO *OutRingInfo,
Read without advancing the read index Read without advancing the read index
--*/ --*/
int RingBufferPeek(RING_BUFFER_INFO *InRingInfo, void *Buffer, u32 BufferLen) int RingBufferPeek(struct hv_ring_buffer_info *InRingInfo, void *Buffer, u32 BufferLen)
{ {
u32 bytesAvailToWrite; u32 bytesAvailToWrite;
u32 bytesAvailToRead; u32 bytesAvailToRead;
...@@ -473,7 +474,7 @@ int RingBufferPeek(RING_BUFFER_INFO *InRingInfo, void *Buffer, u32 BufferLen) ...@@ -473,7 +474,7 @@ int RingBufferPeek(RING_BUFFER_INFO *InRingInfo, void *Buffer, u32 BufferLen)
Read and advance the read index Read and advance the read index
--*/ --*/
int RingBufferRead(RING_BUFFER_INFO *InRingInfo, void *Buffer, int RingBufferRead(struct hv_ring_buffer_info *InRingInfo, void *Buffer,
u32 BufferLen, u32 Offset) u32 BufferLen, u32 Offset)
{ {
u32 bytesAvailToWrite; u32 bytesAvailToWrite;
...@@ -548,7 +549,7 @@ int RingBufferRead(RING_BUFFER_INFO *InRingInfo, void *Buffer, ...@@ -548,7 +549,7 @@ int RingBufferRead(RING_BUFFER_INFO *InRingInfo, void *Buffer,
--*/ --*/
static u32 static u32
CopyToRingBuffer( CopyToRingBuffer(
RING_BUFFER_INFO *RingInfo, struct hv_ring_buffer_info *RingInfo,
u32 StartWriteOffset, u32 StartWriteOffset,
void *Src, void *Src,
u32 SrcLen) u32 SrcLen)
...@@ -586,7 +587,7 @@ CopyToRingBuffer( ...@@ -586,7 +587,7 @@ CopyToRingBuffer(
--*/ --*/
static u32 static u32
CopyFromRingBuffer( CopyFromRingBuffer(
RING_BUFFER_INFO *RingInfo, struct hv_ring_buffer_info *RingInfo,
void *Dest, void *Dest,
u32 DestLen, u32 DestLen,
u32 StartReadOffset) u32 StartReadOffset)
......
...@@ -53,15 +53,14 @@ typedef struct _RING_BUFFER { ...@@ -53,15 +53,14 @@ typedef struct _RING_BUFFER {
u8 Buffer[0]; u8 Buffer[0];
} __attribute__((packed)) RING_BUFFER; } __attribute__((packed)) RING_BUFFER;
typedef struct _RING_BUFFER_INFO { struct hv_ring_buffer_info {
RING_BUFFER *RingBuffer; RING_BUFFER *RingBuffer;
u32 RingSize; /* Include the shared header */ u32 RingSize; /* Include the shared header */
spinlock_t ring_lock; spinlock_t ring_lock;
u32 RingDataSize; /* < ringSize */ u32 RingDataSize; /* < ringSize */
u32 RingDataStartOffset; u32 RingDataStartOffset;
};
} RING_BUFFER_INFO;
struct hv_ring_buffer_debug_info { struct hv_ring_buffer_debug_info {
u32 CurrentInterruptMask; u32 CurrentInterruptMask;
...@@ -76,26 +75,28 @@ struct hv_ring_buffer_debug_info { ...@@ -76,26 +75,28 @@ struct hv_ring_buffer_debug_info {
/* Interface */ /* Interface */
int RingBufferInit(RING_BUFFER_INFO *RingInfo, void *Buffer, u32 BufferLen); int RingBufferInit(struct hv_ring_buffer_info *RingInfo, void *Buffer,
u32 BufferLen);
void RingBufferCleanup(RING_BUFFER_INFO *RingInfo); void RingBufferCleanup(struct hv_ring_buffer_info *RingInfo);
int RingBufferWrite(RING_BUFFER_INFO *RingInfo, int RingBufferWrite(struct hv_ring_buffer_info *RingInfo,
struct scatterlist *sglist, struct scatterlist *sglist,
u32 sgcount); u32 sgcount);
int RingBufferPeek(RING_BUFFER_INFO *RingInfo, void *Buffer, u32 BufferLen); int RingBufferPeek(struct hv_ring_buffer_info *RingInfo, void *Buffer,
u32 BufferLen);
int RingBufferRead(RING_BUFFER_INFO *RingInfo, int RingBufferRead(struct hv_ring_buffer_info *RingInfo,
void *Buffer, void *Buffer,
u32 BufferLen, u32 BufferLen,
u32 Offset); u32 Offset);
u32 GetRingBufferInterruptMask(RING_BUFFER_INFO *RingInfo); u32 GetRingBufferInterruptMask(struct hv_ring_buffer_info *RingInfo);
void DumpRingInfo(RING_BUFFER_INFO *RingInfo, char *Prefix); void DumpRingInfo(struct hv_ring_buffer_info *RingInfo, char *Prefix);
void RingBufferGetDebugInfo(RING_BUFFER_INFO *RingInfo, void RingBufferGetDebugInfo(struct hv_ring_buffer_info *RingInfo,
struct hv_ring_buffer_debug_info *debug_info); struct hv_ring_buffer_debug_info *debug_info);
#endif /* _RING_BUFFER_H_ */ #endif /* _RING_BUFFER_H_ */
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册