0369957f27
The vector/SSE pmd used a different element type for the tx queue sw_ring entries. This led to lots of typecasts in the code which required specific use of bracketing, leading to subtle errors. For example, in the original code: txe = (struct ixgbe_tx_entry_v *)&txq->sw_ring[i]; instead needs to be written as: txe = &((struct ixgbe_tx_entry_v *)txq->sw_ring)[i]; We can eliminate this problem, by having two software ring pointers in the structure for the two different element types. Signed-off-by: Bruce Richardson <bruce.richardson@intel.com> Signed-off-by: Konstantin Ananyev <konstantin.ananyev@intel.com>