> 'key.len' should be calculated before inserting to EMC, otherwise
> resulting entry will match with any packet with the same hash.
>
> CC: Yipeng Wang <[email protected]>
> Fixes: 60d8ccae135f ("dpif-netdev: Add SMC cache after EMC cache")
> Signed-off-by: Ilya Maximets <[email protected]>
Thanks Ilya,
I'll apply this to dpdk merge, will be part of the next pull request.
Thanks
Ian
> ---
> lib/dpif-netdev.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/lib/dpif-netdev.c b/lib/dpif-netdev.c index 13a20f0..0a833dc
> 100644
> --- a/lib/dpif-netdev.c
> +++ b/lib/dpif-netdev.c
> @@ -5810,9 +5810,9 @@ smc_lookup_batch(struct dp_netdev_pmd_thread *pmd,
> if (OVS_LIKELY(dpcls_rule_matches_key(&flow->cr,
> &keys[i]) &&
> flow->flow.in_port.odp_port == packet-
> >md.in_port.odp_port)) {
> /* SMC hit and emc miss, we insert into EMC */
> - emc_probabilistic_insert(pmd, &keys[i], flow);
> keys[i].len =
>
> netdev_flow_key_size(miniflow_n_values(&keys[i].mf));
> + emc_probabilistic_insert(pmd, &keys[i], flow);
> dp_netdev_queue_batches(packet, flow,
> miniflow_get_tcp_flags(&keys[i].mf), batches,
> n_batches);
> n_smc_hit++;
> --
> 2.7.4
_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev