The 'key' pointer must point at the first unused element in the key array. Fixes: b89c678b7a26 ("dpif-netdev: optmizing emc_processing()") CC: Andy Zhou <az...@ovn.org> Signed-off-by: Daniele Di Proietto <diproiet...@vmware.com> --- lib/dpif-netdev.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/lib/dpif-netdev.c b/lib/dpif-netdev.c index 6e76bc2..f233b61 100644 --- a/lib/dpif-netdev.c +++ b/lib/dpif-netdev.c @@ -3357,7 +3357,10 @@ emc_processing(struct dp_netdev_pmd_thread *pmd, struct dp_packet **packets, /* Exact match cache missed. Group missed packets together at * the beginning of the 'packets' array. */ packets[n_missed] = packet; - key = &keys[n_missed++]; + /* 'key[n_missed]' contains the key of the current packet and it + * must be returned to the caller. The next key should be extracted + * to 'keys[n_missed + 1]'. */ + key = &keys[++n_missed]; } } -- 2.1.4 _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev