2014-12-03 16:26, Qiu, Michael: > > --- a/app/test-pmd/csumonly.c > > +++ b/app/test-pmd/csumonly.c > > @@ -81,7 +81,13 @@ > > > > /* we cannot use htons() from arpa/inet.h due to name conflicts, and we > > * cannot use rte_cpu_to_be_16() on a constant in a switch/case */ > > -#if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__ > > +#ifdef __BYTE_ORDER__ > > +#define LITTLE_ENDIAN_CHECK (__BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__) > > +#else > > +#define LITTLE_ENDIAN_CHECK (__BYTE_ORDER == __LITTLE_ENDIAN) > > +#endif > > + > > +#if LITTLE_ENDIAN_CHECK > > #define _htons(x) ((uint16_t)((((x) & 0x00ffU) << 8) | (((x) & 0xff00U) >> > > 8))) > > #else > > #define _htons(x) (x)
I don't agree we should fix it in testpmd. It's a more general problem which must be solved in EAL. I'm preparing a patchset to fix it. -- Thomas