X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;ds=sidebyside;f=src%2Fvnet%2Fdpo%2Fdpo.h;h=ee4990d005825b82bfda895614c0dbf4672ab723;hb=ab4fbedf27ece4ea623d7c3b54cc54f0133ba1f7;hp=e5a9bdc1ca142a0f4f7b898c384b8ae6e1a4e415;hpb=e1ab06c14deaff5cc0870f7ec76f36613ffcc2d3;p=vpp.git diff --git a/src/vnet/dpo/dpo.h b/src/vnet/dpo/dpo.h index e5a9bdc1ca1..ee4990d0058 100644 --- a/src/vnet/dpo/dpo.h +++ b/src/vnet/dpo/dpo.h @@ -168,23 +168,28 @@ typedef enum dpo_type_t_ { * instance number/index of objects of that type */ typedef struct dpo_id_t_ { - /** - * the type - */ - dpo_type_t dpoi_type; - /** - * the data-path protocol of the type. - */ - dpo_proto_t dpoi_proto; - /** - * The next VLIB node to follow. - */ - u16 dpoi_next_node; - /** - * the index of objects of that type - */ - index_t dpoi_index; -} __attribute__ ((aligned(sizeof(u64)))) dpo_id_t; + union { + struct { + /** + * the type + */ + dpo_type_t dpoi_type; + /** + * the data-path protocol of the type. + */ + dpo_proto_t dpoi_proto; + /** + * The next VLIB node to follow. + */ + u16 dpoi_next_node; + /** + * the index of objects of that type + */ + index_t dpoi_index; + }; + u64 as_u64; + }; +} dpo_id_t; STATIC_ASSERT(sizeof(dpo_id_t) <= sizeof(u64), "DPO ID is greater than sizeof u64 "