Thanks for the fix:
Acked-by: Jan Scheurich <[email protected]>

> -----Original Message-----
> From: [email protected] 
> [mailto:[email protected]] On Behalf Of Ciara Loftus
> Sent: Wednesday, 17 May, 2017 10:29
> To: [email protected]
> Subject: [ovs-dev] [PATCH] dpif-netdev: Fix insertion probability
> 
> emc_conditional_insert uses pmd->last_cycles and the packet's RSS hash
> to generate a random number used to determine whether or not an emc
> entry should be inserted. This works for single-packet bursts as
> last_cycles is updated for each burst. However, for bursts > 1 packet,
> where the packets in the batch generate the same RSS hash,
> pmd->last_cycles remains constant for the entire burst also, and thus
> cannot be used as a random number for each packet in the burst.
> 
> This commit replaces the use of pmd->last_cycles with random_uint32()
> for this purpose and subsequently fixes the behavior of the
> emc_insert_inv_prob setting for high-throughput (large bursts)
> single-flow cases.
> 
> Fixes: 4c30b24602c3 ("dpif-netdev: Conditional EMC insert")
> Reported-by: Kevin Traynor <[email protected]>
> Signed-off-by: Ciara Loftus <[email protected]>
> ---
>  lib/dpif-netdev.c | 4 ----
>  1 file changed, 4 deletions(-)
> 
> diff --git a/lib/dpif-netdev.c b/lib/dpif-netdev.c
> index d215156..ab1e26e 100644
> --- a/lib/dpif-netdev.c
> +++ b/lib/dpif-netdev.c
> @@ -2037,11 +2037,7 @@ emc_probabilistic_insert(struct dp_netdev_pmd_thread 
> *pmd,
>      uint32_t min;
>      atomic_read_relaxed(&pmd->dp->emc_insert_min, &min);
> 
> -#ifdef DPDK_NETDEV
> -    if (min && (key->hash ^ (uint32_t) pmd->last_cycles) <= min) {
> -#else
>      if (min && (key->hash ^ random_uint32()) <= min) {
> -#endif
>          emc_insert(&pmd->flow_cache, key, flow);
>      }
>  }
> --
> 2.4.11
> 
> _______________________________________________
> dev mailing list
> [email protected]
> https://mail.openvswitch.org/mailman/listinfo/ovs-dev
_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to