I was trying to rebase my DPDK onto v2.1.0 and I came across some very confusing code in examples/l3fwd/main.c .
So... this code used the RTE_NEXT_ABI macros on a change which does not appear to affect the API... on a function that is marked always_inline ??? Maybe I missed something but this seems pointless. An always_inline function is going to have to be recompiled in any case. Now I have no clue what would makes sense for my version of the function either... because RTE_NEXT_ABI is a binary on/off but trying to track a multi-variate quantity of ABI updates. For now I guess I have to write it like this inside the RTE_NEXT_ABI: rfc1812_process(struct ipv4_hdr *ipv4_hdr, uint32_t *dp, uint32_t ptype) This seems unpleasant and kind of painful. What did I miss here? Matthew. static inline __attribute__((always_inline)) void <<<<<<< 8e29af8a2843b6342dbc72db43ac82c9d29695bf #ifdef RTE_NEXT_ABI rfc1812_process(struct ipv4_hdr *ipv4_hdr, uint16_t *dp, uint32_t ptype) #else rfc1812_process(struct ipv4_hdr *ipv4_hdr, uint16_t *dp, uint32_t flags) #endif ======= rfc1812_process(struct ipv4_hdr *ipv4_hdr, uint32_t *dp, uint32_t flags) >>>>>>> examples: update examples to use 24 bit extended next hop {