>> diff --git a/lib/librte_mbuf/rte_mbuf.h b/lib/librte_mbuf/rte_mbuf.h >> index 32e8474..669e7f5 100644 >> --- a/lib/librte_mbuf/rte_mbuf.h >> +++ b/lib/librte_mbuf/rte_mbuf.h >> @@ -119,6 +119,13 @@ struct rte_mbuf { >> void *buf_addr; /**< Virtual address of segment buffer. */ >> phys_addr_t buf_physaddr; /**< Physical address of segment buffer. */ >> uint16_t buf_len; /**< Length of segment buffer. */ >> + >> + /* valid for any segment */ >> + struct rte_mbuf *next; /**< Next segment of scattered packet. */ >> + uint16_t data_off; >> + uint16_t data_len; /**< Amount of data in segment buffer. */ >> + uint32_t pkt_len; /**< Total pkt len: sum of all segments. */ >> + > > Here, the compiler will add some padding between "buf_len" and "next" > (6 bytes in 64bits, 2 in 32bits). Shouldn't we add "reserved" fields > or at least a comment ? Another idea would be to reorganize the fields > to avoid padding, if possible.
I've just seen that patch 02/13 reorders the mbuf fields. So maybe this remarq is useless. Olivier