<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On 25 March 2014 14:58, Andy Zhou <span dir="ltr"><<a href="mailto:azhou@nicira.com" target="_blank">azhou@nicira.com</a>></span> wrote:<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
/* Metadata. */<br>
+ if (present_attrs & (UINT64_C(1) << OVS_KEY_ATTR_RECIRC_ID)) {<br>
+ flow->recirc_id = nl_attr_get_u32(attrs[OVS_KEY_ATTR_RECIRC_ID]);<br>
+ expected_attrs |= UINT64_C(1) << OVS_KEY_ATTR_RECIRC_ID;<br>
+ } else if (is_mask) {<br>
+ /* Always exact match recirc_id when datapath does not sepcify it. */<br>
+ flow->recirc_id = UINT32_MAX;<br>
+ }<br>
+<br>
+ if (present_attrs & (UINT64_C(1) << OVS_KEY_ATTR_DP_HASH)) {<br>
+ flow->dp_hash = nl_attr_get_u32(attrs[OVS_KEY_ATTR_DP_HASH]);<br>
+ expected_attrs |= UINT64_C(1) << OVS_KEY_ATTR_DP_HASH;<br>
+ }<br>
if (present_attrs & (UINT64_C(1) << OVS_KEY_ATTR_PRIORITY)) {<br>
flow->skb_priority = nl_attr_get_u32(attrs[OVS_KEY_ATTR_PRIORITY]);<br>
expected_attrs |= UINT64_C(1) << OVS_KEY_ATTR_PRIORITY;<br></blockquote><div><br></div><div>What's the reasoning behind the "else if (is_mask)" case for recirc_id, and why does this not apply to dp_hash? </div>
</div></div></div>