Skip to content

Commit cd49fbb

Browse files
authored
wrap metadata with CXPLAT_RECV_DATA to be same as XDP_RX_PACKET (#3824)
1 parent c23042b commit cd49fbb

File tree

1 file changed

+8
-8
lines changed

1 file changed

+8
-8
lines changed

src/platform/datapath_winuser.c

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -659,6 +659,11 @@ typedef struct CXPLAT_DATAPATH {
659659

660660
} CXPLAT_DATAPATH;
661661

662+
typedef struct DECLSPEC_ALIGN(MEMORY_ALLOCATION_ALIGNMENT) SOCK_RX_PACKET {
663+
CXPLAT_RECV_DATA;
664+
CXPLAT_DATAPATH_INTERNAL_RECV_BUFFER_CONTEXT Context;
665+
} SOCK_RX_PACKET;
666+
662667
#ifdef DEBUG
663668
#ifndef AllocOffset
664669
#define AllocOffset (sizeof(void*) * 2)
@@ -790,9 +795,7 @@ CxPlatDataPathRecvPacketToRecvData(
790795
)
791796
{
792797
return (CXPLAT_RECV_DATA*)
793-
(((PUCHAR)Context) -
794-
sizeof(CXPLAT_DATAPATH_INTERNAL_RECV_BUFFER_CONTEXT) -
795-
sizeof(CXPLAT_RECV_DATA));
798+
(((PUCHAR)Context) - sizeof(SOCK_RX_PACKET));
796799
}
797800

798801
CXPLAT_RECV_PACKET*
@@ -801,9 +804,7 @@ CxPlatDataPathRecvDataToRecvPacket(
801804
)
802805
{
803806
return (CXPLAT_RECV_PACKET*)
804-
(((PUCHAR)Datagram) +
805-
sizeof(CXPLAT_RECV_DATA) +
806-
sizeof(CXPLAT_DATAPATH_INTERNAL_RECV_BUFFER_CONTEXT));
807+
(((PUCHAR)Datagram) + sizeof(SOCK_RX_PACKET));
807808
}
808809

809810
CXPLAT_DATAPATH_INTERNAL_RECV_BUFFER_CONTEXT*
@@ -1280,8 +1281,7 @@ CxPlatDataPathInitialize(
12801281

12811282
Datapath->DatagramStride =
12821283
ALIGN_UP(
1283-
sizeof(CXPLAT_RECV_DATA) +
1284-
sizeof(CXPLAT_DATAPATH_INTERNAL_RECV_BUFFER_CONTEXT) +
1284+
sizeof(SOCK_RX_PACKET) +
12851285
ClientRecvContextLength,
12861286
PVOID);
12871287
Datapath->RecvPayloadOffset =

0 commit comments

Comments
 (0)