[ovs-discuss] Failing ovs tests on big-endian system

Ben Pfaff blp at nicira.com
Mon Nov 24 23:44:58 UTC 2014


On Tue, Nov 18, 2014 at 06:53:53PM -0500, safradin at linux.vnet.ibm.com wrote:
> when running 'make check' on a big-endian system, some tests do fail.

Thanks for the report.

> For instance, by looking at the testcase 79 "flow classifier -
> lookup segmentation" it shows that at lib/classifier.c the function
> miniflow_and_mask_matches_flow_wc() does process the bitwise OR in
> wrong order. By introducing the function le32toh(), the test does
> pass on a little and big endian system.

I don't understand why you need to do this.  OVS internally does use
host byte order and network byte order, but it doesn't intentionally
maintain any data in little-endian order.  Can you explain further?

Does this only happen on master?  Version 2.3.x passes all of the
tests on big-endian and little-endian systems:
https://buildd.debian.org/status/logs.php?pkg=openvswitch&ver=2.3.0%2Bgit20140819-2&suite=sid



More information about the discuss mailing list