[ovs-dev] [PATCH v3 3/3] flow: Split miniflow's map.
Ben Pfaff
blp at nicira.com
Thu Jul 16 23:44:29 UTC 2015
On Thu, Jul 16, 2015 at 03:15:54PM -0700, Jarno Rajahalme wrote:
> Use two maps in miniflow to allow for expansion of struct flow past
> 512 bytes. We now have one map for tunnel related fields, and another
> for the rest of the packet metadata and actual packet header fields.
> This split has the benefit that for non-tunneled packets the overhead
> should be minimal.
>
> Some miniflow utilities now exist in two variants, new ones operating
> over all the data, and the old ones operating only on a single 64-bit
> map at a time. The old ones require doubling of code but should
> execute faster, so those are used in the datapath and classifier's
> lookup path.
>
> Signed-off-by: Jarno Rajahalme <jrajahalme at nicira.com>
I consistently get a test failure in test 636 "tunnel_push_pop - action"
with this commit. The failure looks like this:
../../tests/tunnel-push-pop.at:131: ovs-ofctl dump-ports int-br | grep 'port 5'
--- - 2015-07-16 16:43:05.417520479 -0700
+++ /home/blp/nicira/ovs/_build/tests/testsuite.dir/at-groups/636/stdout 2015-07-16 16:43:05.410146027 -0700
@@ -1,2 +1,2 @@
- port 5: rx pkts=1, bytes=98, drop=0, errs=0, frame=0, over=0, crc=0
+ port 5: rx pkts=0, bytes=0, drop=0, errs=0, frame=0, over=0, crc=0
I also get a single "sparse" warning though I don't know whether it is
related:
../lib/flow.c:466:13: warning: cast truncates bits from constant value (3ffffffff becomes ffffffff)
More information about the dev
mailing list