[ovs-dev] [PATCH v3] dpif: Allow adding ukeys for same flow by different pmds.

Joe Stringer joe at ovn.org
Wed Feb 3 23:53:02 UTC 2016


On 3 February 2016 at 03:31, Ilya Maximets <i.maximets at samsung.com> wrote:
> In multiqueue mode several pmd threads may process one
> port, but different queues. Flow may not depend on queue.
> It's true at least for vhost-user ports.
>
> So, while miss upcall processing, all threads (except first
> for that port) will receive error = ENOSPC due to
> ukey_install failure. Therefore they will not add the flow
> to flow_table and will not insert it to exact match cache.
>
> As a result all threads (except first for that port) will
> always execute a miss.
>
> Fix that by mixing pmd_id with the bits from the ufid
> for ukey->hash calculation.
>
> Also, this allows to reassign queues among pmd threads
> without restarting them and deleting the megaflow cache.
>
> Signed-off-by: Ilya Maximets <i.maximets at samsung.com>

Thanks, I made some minor changes to the commit message, dropped the
cast from get_ukey_hash() and pushed the patch to master.



More information about the dev mailing list