Pointer is really all I’m looking for. Just wanted to get as many ‘tidbits’ out of the way before the IPsec application patch.
From: Bill Fischofer [mailto:[email protected]] Sent: Tuesday, August 19, 2014 8:58 AM To: Robbie King (robking) Cc: lng-odp-forward Subject: Re: [lng-odp] [PATCH] Add 64 bit context to packet Are you really wanting to define a 64-bit integer or are you looking for a pointer? uint64_t is not portable to 32-bit systems, however intptr_t is guaranteed to be a native pointer type of appropriate size. Bill On Tue, Aug 19, 2014 at 7:46 AM, Robbie King <[email protected]<mailto:[email protected]>> wrote: Signed-off-by: Robbie King <[email protected]<mailto:[email protected]>> --- include/odp_packet.h | 18 ++++++++++++++++++ .../linux-generic/include/odp_packet_internal.h | 2 ++ platform/linux-generic/odp_packet.c | 10 ++++++++++ 3 files changed, 30 insertions(+), 0 deletions(-) diff --git a/include/odp_packet.h b/include/odp_packet.h index ef4be9e..db75540 100644 --- a/include/odp_packet.h +++ b/include/odp_packet.h @@ -98,6 +98,24 @@ void odp_packet_set_len(odp_packet_t pkt, size_t len); size_t odp_packet_get_len(odp_packet_t pkt); /** + * Set packet user context + * + * @param buf Packet handle + * @param ctx User context + * + */ +void odp_packet_set_ctx(odp_packet_t buf, uint64_t ctx); + +/** + * Get packet user context + * + * @param buf Packet handle + * + * @return User context + */ +uint64_t odp_packet_get_ctx(odp_packet_t buf); + +/** * Get address to the start of the packet buffer * * The address of the packet buffer is not necessarily the same as the start diff --git a/platform/linux-generic/include/odp_packet_internal.h b/platform/linux-generic/include/odp_packet_internal.h index 0ab3be2..49c59b2 100644 --- a/platform/linux-generic/include/odp_packet_internal.h +++ b/platform/linux-generic/include/odp_packet_internal.h @@ -112,6 +112,8 @@ typedef struct { uint32_t frame_len; + uint64_t user_ctx; /* user context */ + odp_pktio_t input; uint32_t pad; diff --git a/platform/linux-generic/odp_packet.c b/platform/linux-generic/odp_packet.c index 13e2471..bbfef49 100644 --- a/platform/linux-generic/odp_packet.c +++ b/platform/linux-generic/odp_packet.c @@ -386,3 +386,13 @@ int odp_packet_copy(odp_packet_t pkt_dst, odp_packet_t pkt_src) return 0; } + +void odp_packet_set_ctx(odp_packet_t pkt, uint64_t ctx) +{ + odp_packet_hdr(pkt)->user_ctx = ctx; +} + +uint64_t odp_packet_get_ctx(odp_packet_t pkt) +{ + return odp_packet_hdr(pkt)->user_ctx; +} -- 1.7.7.6 _______________________________________________ lng-odp mailing list [email protected]<mailto:[email protected]> http://lists.linaro.org/mailman/listinfo/lng-odp
_______________________________________________ lng-odp mailing list [email protected] http://lists.linaro.org/mailman/listinfo/lng-odp
