This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "".
The branch, 2.0 has been updated via ca1be967bd4f6aec7dc99b72de643718cb8a32b8 (commit) from 1236f1ad2bba56b5e49ff62df247e52143b48985 (commit)
Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below.
- Log ----------------------------------------------------------------- commit ca1be967bd4f6aec7dc99b72de643718cb8a32b8 Author: Joyce Kong joyce.kong@arm.com Date: Wed Oct 18 17:45:27 2017 +0800
remove uarea_size from packet meta data
Signed-off-by: Joyce Kong joyce.kong@arm.com Reviewed-by: Honnappa Nagarahalli honnappa.Nagarahalli@arm.com Reviewed-by: Ola Liljedahl ola.Liljedahl@arm.com Reviewed-by: Bill Fischofer bill.fischofer@linaro.org Signed-off-by: Yi He yi.he@linaro.org
diff --git a/platform/linux-dpdk/include/odp/api/plat/packet_inlines.h b/platform/linux-dpdk/include/odp/api/plat/packet_inlines.h index 93102974..a8d8b1d5 100644 --- a/platform/linux-dpdk/include/odp/api/plat/packet_inlines.h +++ b/platform/linux-dpdk/include/odp/api/plat/packet_inlines.h @@ -102,13 +102,6 @@ static inline void *_odp_packet_user_area(odp_packet_t pkt) return (void *)((char *)pkt + _odp_packet_inline.udata); }
-/** @internal Inline function @param pkt @return */ -static inline uint32_t _odp_packet_user_area_size(odp_packet_t pkt) -{ - return *(uint32_t *)(void *)((char *)pkt + - _odp_packet_inline.udata_len); -} - /** @internal Inline function @param pkt @return */ static inline uint32_t _odp_packet_flow_hash(odp_packet_t pkt) { diff --git a/platform/linux-dpdk/include/odp/api/plat/packet_inlines_api.h b/platform/linux-dpdk/include/odp/api/plat/packet_inlines_api.h index 16a445a1..c964ce6d 100644 --- a/platform/linux-dpdk/include/odp/api/plat/packet_inlines_api.h +++ b/platform/linux-dpdk/include/odp/api/plat/packet_inlines_api.h @@ -63,11 +63,6 @@ _ODP_INLINE void *odp_packet_user_area(odp_packet_t pkt) return _odp_packet_user_area(pkt); }
-_ODP_INLINE uint32_t odp_packet_user_area_size(odp_packet_t pkt) -{ - return _odp_packet_user_area_size(pkt); -} - _ODP_INLINE uint32_t odp_packet_flow_hash(odp_packet_t pkt) { return _odp_packet_flow_hash(pkt); diff --git a/platform/linux-dpdk/include/odp_packet_internal.h b/platform/linux-dpdk/include/odp_packet_internal.h index fc1f9e5f..66159cae 100644 --- a/platform/linux-dpdk/include/odp_packet_internal.h +++ b/platform/linux-dpdk/include/odp_packet_internal.h @@ -119,9 +119,6 @@ typedef struct { * Members below are not initialized by packet_init() */
- /* User metadata size, it's right after odp_packet_hdr_t */ - uint32_t uarea_size; - /* Timestamp value */ odp_time_t timestamp;
diff --git a/platform/linux-dpdk/odp_packet.c b/platform/linux-dpdk/odp_packet.c index 523c2229..103f6f7a 100644 --- a/platform/linux-dpdk/odp_packet.c +++ b/platform/linux-dpdk/odp_packet.c @@ -44,7 +44,6 @@ const _odp_packet_inline_offset_t _odp_packet_inline ODP_ALIGNED_CACHE = { (size_t)&rte_pktmbuf_data_len((struct rte_mbuf *)0), .nb_segs = offsetof(odp_packet_hdr_t, buf_hdr.mb) + offsetof(struct rte_mbuf, nb_segs), - .udata_len = offsetof(odp_packet_hdr_t, uarea_size), .udata = sizeof(odp_packet_hdr_t), .rss = offsetof(odp_packet_hdr_t, buf_hdr.mb) + offsetof(struct rte_mbuf, hash.rss), @@ -540,6 +539,12 @@ void *odp_packet_offset(odp_packet_t pkt, uint32_t offset, uint32_t *len, * ******************************************************** * */ +uint32_t odp_packet_user_area_size(odp_packet_t pkt) +{ + pool_entry_cp_t *pool_cp = odp_pool_to_entry_cp(odp_packet_pool(pkt)); + + return pool_cp->params.pkt.uarea_size; +}
int odp_packet_input_index(odp_packet_t pkt) { diff --git a/platform/linux-dpdk/pool/dpdk.c b/platform/linux-dpdk/pool/dpdk.c index 3f085620..90d2d7c6 100644 --- a/platform/linux-dpdk/pool/dpdk.c +++ b/platform/linux-dpdk/pool/dpdk.c @@ -219,14 +219,10 @@ odp_dpdk_mbuf_ctor(struct rte_mempool *mp,
/* keep some headroom between start of buffer and data */ if (mb_ctor_arg->type == ODP_POOL_PACKET) { - odp_packet_hdr_t *pkt_hdr; - mb->data_off = RTE_PKTMBUF_HEADROOM; mb->nb_segs = 1; mb->port = 0xff; mb->vlan_tci = 0; - pkt_hdr = (odp_packet_hdr_t *)raw_mbuf; - pkt_hdr->uarea_size = mb_ctor_arg->pkt_uarea_size; } else { mb->data_off = 0; } diff --git a/platform/linux-generic/include/odp/api/plat/packet_inlines.h b/platform/linux-generic/include/odp/api/plat/packet_inlines.h index 1804fa6f..06bcf855 100644 --- a/platform/linux-generic/include/odp/api/plat/packet_inlines.h +++ b/platform/linux-generic/include/odp/api/plat/packet_inlines.h @@ -95,12 +95,6 @@ static inline void *_odp_packet_user_area(odp_packet_t pkt) return _odp_pkt_get(pkt, void *, user_area); }
-/** @internal Inline function @param pkt @return */ -static inline uint32_t _odp_packet_user_area_size(odp_packet_t pkt) -{ - return _odp_pkt_get(pkt, uint32_t, user_area_size); -} - /** @internal Inline function @param pkt @return */ static inline uint32_t _odp_packet_flow_hash(odp_packet_t pkt) { diff --git a/platform/linux-generic/include/odp/api/plat/packet_inlines_api.h b/platform/linux-generic/include/odp/api/plat/packet_inlines_api.h index 233bc876..7eaaa85e 100644 --- a/platform/linux-generic/include/odp/api/plat/packet_inlines_api.h +++ b/platform/linux-generic/include/odp/api/plat/packet_inlines_api.h @@ -63,11 +63,6 @@ _ODP_INLINE void *odp_packet_user_area(odp_packet_t pkt) return _odp_packet_user_area(pkt); }
-_ODP_INLINE uint32_t odp_packet_user_area_size(odp_packet_t pkt) -{ - return _odp_packet_user_area_size(pkt); -} - _ODP_INLINE uint32_t odp_packet_flow_hash(odp_packet_t pkt) { return _odp_packet_flow_hash(pkt); diff --git a/platform/linux-generic/include/odp/api/plat/packet_types.h b/platform/linux-generic/include/odp/api/plat/packet_types.h index 68c66312..009a3aa7 100644 --- a/platform/linux-generic/include/odp/api/plat/packet_types.h +++ b/platform/linux-generic/include/odp/api/plat/packet_types.h @@ -94,8 +94,6 @@ typedef struct _odp_packet_inline_offset_t { /** @internal field offset */ uint16_t user_area; /** @internal field offset */ - uint16_t user_area_size; - /** @internal field offset */ uint16_t flow_hash; /** @internal field offset */ uint16_t timestamp; diff --git a/platform/linux-generic/include/odp_buffer_internal.h b/platform/linux-generic/include/odp_buffer_internal.h index 358c0e44..e9b3e886 100644 --- a/platform/linux-generic/include/odp_buffer_internal.h +++ b/platform/linux-generic/include/odp_buffer_internal.h @@ -104,9 +104,6 @@ struct odp_buffer_hdr_t { /* User area pointer */ void *uarea_addr;
- /* User area size */ - uint32_t uarea_size; - /* Max data size */ uint32_t size;
diff --git a/platform/linux-generic/odp_packet.c b/platform/linux-generic/odp_packet.c index 68a834a1..3011183d 100644 --- a/platform/linux-generic/odp_packet.c +++ b/platform/linux-generic/odp_packet.c @@ -40,7 +40,6 @@ const _odp_packet_inline_offset_t _odp_packet_inline ODP_ALIGNED_CACHE = { .segcount = offsetof(odp_packet_hdr_t, buf_hdr.segcount), .user_ptr = offsetof(odp_packet_hdr_t, buf_hdr.buf_ctx), .user_area = offsetof(odp_packet_hdr_t, buf_hdr.uarea_addr), - .user_area_size = offsetof(odp_packet_hdr_t, buf_hdr.uarea_size), .flow_hash = offsetof(odp_packet_hdr_t, flow_hash), .timestamp = offsetof(odp_packet_hdr_t, timestamp), .input_flags = offsetof(odp_packet_hdr_t, p.input_flags) @@ -268,7 +267,6 @@ static inline void packet_seg_copy_md(odp_packet_hdr_t *dst, /* buffer header side packet metadata */ dst->buf_hdr.buf_u64 = src->buf_hdr.buf_u64; dst->buf_hdr.uarea_addr = src->buf_hdr.uarea_addr; - dst->buf_hdr.uarea_size = src->buf_hdr.uarea_size;
/* segmentation data is not copied: * buf_hdr.seg[] @@ -1168,6 +1166,12 @@ void *odp_packet_offset(odp_packet_t pkt, uint32_t offset, uint32_t *len, * ******************************************************** * */ +uint32_t odp_packet_user_area_size(odp_packet_t pkt) +{ + pool_t *pool = pool_entry_from_hdl(odp_packet_pool(pkt)); + + return pool->params.pkt.uarea_size; +}
int odp_packet_input_index(odp_packet_t pkt) { @@ -1744,6 +1748,8 @@ int _odp_packet_copy_md_to_packet(odp_packet_t srcpkt, odp_packet_t dstpkt) { odp_packet_hdr_t *srchdr = packet_hdr(srcpkt); odp_packet_hdr_t *dsthdr = packet_hdr(dstpkt); + uint32_t src_size = odp_packet_user_area_size(srcpkt); + uint32_t dst_size = odp_packet_user_area_size(dstpkt);
dsthdr->input = srchdr->input; dsthdr->dst_queue = srchdr->dst_queue; @@ -1752,10 +1758,7 @@ int _odp_packet_copy_md_to_packet(odp_packet_t srcpkt, odp_packet_t dstpkt) srchdr->buf_hdr.uarea_addr != NULL) memcpy(dsthdr->buf_hdr.uarea_addr, srchdr->buf_hdr.uarea_addr, - dsthdr->buf_hdr.uarea_size <= - srchdr->buf_hdr.uarea_size ? - dsthdr->buf_hdr.uarea_size : - srchdr->buf_hdr.uarea_size); + dst_size <= src_size ? dst_size : src_size);
copy_packet_parser_metadata(srchdr, dsthdr);
@@ -1763,7 +1766,7 @@ int _odp_packet_copy_md_to_packet(odp_packet_t srcpkt, odp_packet_t dstpkt) * user area was truncated in the process. Note this can only * happen when copying between different pools. */ - return dsthdr->buf_hdr.uarea_size < srchdr->buf_hdr.uarea_size; + return dst_size < src_size; }
/** diff --git a/platform/linux-generic/pool/generic.c b/platform/linux-generic/pool/generic.c index 520d8a6f..37628b13 100644 --- a/platform/linux-generic/pool/generic.c +++ b/platform/linux-generic/pool/generic.c @@ -237,7 +237,6 @@ static void init_buffers(pool_t *pool) buf_hdr->pool_ptr = pool; buf_hdr->uarea_addr = uarea; /* Show user requested size through API */ - buf_hdr->uarea_size = pool->params.pkt.uarea_size; buf_hdr->segcount = 1; buf_hdr->num_seg = 1; buf_hdr->next_seg = NULL;
-----------------------------------------------------------------------
Summary of changes: .../linux-dpdk/include/odp/api/plat/packet_inlines.h | 7 ------- .../include/odp/api/plat/packet_inlines_api.h | 5 ----- platform/linux-dpdk/include/odp_packet_internal.h | 3 --- platform/linux-dpdk/odp_packet.c | 7 ++++++- platform/linux-dpdk/pool/dpdk.c | 4 ---- .../linux-generic/include/odp/api/plat/packet_inlines.h | 6 ------ .../include/odp/api/plat/packet_inlines_api.h | 5 ----- .../linux-generic/include/odp/api/plat/packet_types.h | 2 -- platform/linux-generic/include/odp_buffer_internal.h | 3 --- platform/linux-generic/odp_packet.c | 17 ++++++++++------- platform/linux-generic/pool/generic.c | 1 - 11 files changed, 16 insertions(+), 44 deletions(-)
hooks/post-receive