Thanks Shmulik! Reviewed-by: Bala Manoharan <bala.manoha...@linaro.org>
On 11 January 2015 at 23:02, Bill Fischofer <bill.fischo...@linaro.org> wrote: > Thanks! > > On Sun, Jan 11, 2015 at 4:15 AM, Shmulik Ladkani < > shmulik.ladk...@gmail.com> wrote: > >> ODP_{BIG,LITTLE}_ENDIAN_BITFIELD were always defined, regardless the >> value of system's __BIG_ENDIAN_BITFIELD and __LITTLE_ENDIAN_BITFIELD. >> >> As a result, 'odph_tcphdr_t' bitfields in odph_tcp.h were always >> arranged as big-endian. >> >> This lead to incorrect parsing in linux-generic's 'parse_tcp' for >> little endian systems, which resulted in packet's 'tcp_err' being set. >> >> Fixed by defining ODP_BIG_ENDIAN_BITFIELD or ODP_LITTLE_ENDIAN_BITFIELD >> conditionally per system's bitfield endianess. >> >> Signed-off-by: Shmulik Ladkani <shmulik.ladk...@gmail.com> >> > > Reviewed-by: Bill Fischofer <bill.fischo...@linaro.org> > > >> --- >> platform/linux-generic/include/api/odp_byteorder.h | 8 ++++++-- >> 1 file changed, 6 insertions(+), 2 deletions(-) >> >> diff --git a/platform/linux-generic/include/api/odp_byteorder.h >> b/platform/linux-generic/include/api/odp_byteorder.h >> index 5d7cceb4a8..5890011028 100644 >> --- a/platform/linux-generic/include/api/odp_byteorder.h >> +++ b/platform/linux-generic/include/api/odp_byteorder.h >> @@ -47,10 +47,14 @@ extern "C" { >> #define ODP_LITTLE_ENDIAN __LITTLE_ENDIAN >> >> /** Big endian bit field */ >> -#define ODP_BIG_ENDIAN_BITFIELD __BIG_ENDIAN_BITFIELD >> +#ifdef __BIG_ENDIAN_BITFIELD >> +#define ODP_BIG_ENDIAN_BITFIELD >> +#endif >> >> /** Little endian bit field */ >> -#define ODP_LITTLE_ENDIAN_BITFIELD __LITTLE_ENDIAN_BITFIELD >> +#ifdef __LITTLE_ENDIAN_BITFIELD >> +#define ODP_LITTLE_ENDIAN_BITFIELD >> +#endif >> >> /** Selected byte order */ >> #if __BYTE_ORDER == __LITTLE_ENDIAN >> -- >> 1.9.1 >> >> >> _______________________________________________ >> lng-odp mailing list >> lng-odp@lists.linaro.org >> http://lists.linaro.org/mailman/listinfo/lng-odp >> > > > _______________________________________________ > lng-odp mailing list > lng-odp@lists.linaro.org > http://lists.linaro.org/mailman/listinfo/lng-odp > >
_______________________________________________ lng-odp mailing list lng-odp@lists.linaro.org http://lists.linaro.org/mailman/listinfo/lng-odp