[ovs-dev] [PATCH 1/3] Classifier: Staged sub-table matching.

Jarno Rajahalme jrajahalme at nicira.com
Tue Nov 5 22:02:06 UTC 2013


On Nov 5, 2013, at 1:54 PM, Jarno Rajahalme <jrajahalme at nicira.com> wrote:
> On Nov 5, 2013, at 1:16 PM, Ben Pfaff <blp at nicira.com> wrote:
> 
>> I didn't look at the flow.[ch] code yet.  It looks tricky.
> 
...
> Probably should have flagged the struct flow changes as RFC, but the staged rearrangement was the most efficient implementation I could think of. There is an alternative that would allow arbitrary non-overlapping “stage masks” to be used, but that would require explicit storage of those masks and/or more computation to combine those masks with the table’s masks. I did not fully explore this alternative, as it seemed to me that the classifier remains simpler this way.
> 

One more comment: To make the implementation simple, I have kept the stage boundaries on a 32-bit/4-byte alignment, which can result in a need of explicit padding, as now right after the tcp_flags field. At least for now the same padding would be implicitly added to the end of the struct otherwise, so this is only a cosmetic problem.

  Jarno


More information about the dev mailing list