mirror of
https://github.com/openvswitch/ovs
synced 2025-08-31 06:15:47 +00:00
dpif-netdev: Implement the API functions to allow multiple handler
threads read upcall. This commit implements the API functions to allow multiple handler threads read upcall. Also, this commit removes the handling priority of DPIF_UC_MISS over DPIF_UC_ACTION. So, both misses will be put to the same queue. The decision is based on the fact that a lot has changed since the age when flow setup rate is most treasured and starving all actions in the presence of any flow misses doesn't seem like a sound balancing solution. Thusly the current implementation will be put in testing and investigation for better balancing solution will continue if there is an issue. Also note, the introduction and use of flow_hash_5tuple() will put missed ICMP packets from same source but with different type/code to different handler queues. This may cause reordering of these packets. For now, we do not count this as a problem. Signed-off-by: Alex Wang <alexw@nicira.com> Acked-by: Ben Pfaff <blp@nicira.com>
This commit is contained in:
@@ -323,6 +323,7 @@ void flow_wildcards_fold_minimask_range(struct flow_wildcards *,
|
||||
uint32_t flow_wildcards_hash(const struct flow_wildcards *, uint32_t basis);
|
||||
bool flow_wildcards_equal(const struct flow_wildcards *,
|
||||
const struct flow_wildcards *);
|
||||
uint32_t flow_hash_5tuple(const struct flow *flow, uint32_t basis);
|
||||
uint32_t flow_hash_symmetric_l4(const struct flow *flow, uint32_t basis);
|
||||
|
||||
/* Initialize a flow with random fields that matter for nx_hash_fields. */
|
||||
|
Reference in New Issue
Block a user