summaryrefslogtreecommitdiff
path: root/lib/stream-ssl.h
diff options
context:
space:
mode:
authorIlya Maximets <i.maximets@samsung.com>2015-08-04 12:36:37 -0700
committerEthan Jackson <ethan@nicira.com>2015-08-04 12:36:45 -0700
commit2aca813cf4dfd870232d708cda34017e3888333f (patch)
tree4fbcee18eaad35862a8da212fb8434e2cccfb228 /lib/stream-ssl.h
parentcfe17b43c10d9d14510e77d21cc463c34c6d7c34 (diff)
downloadopenvswitch-2aca813cf4dfd870232d708cda34017e3888333f.tar.gz
dpif-netdev: fix race for queues between pmd threads.
Currently pmd threads select queues in pmd_load_queues() according to get_n_pmd_threads_on_numa(). This behavior leads to race between pmds, beacause dp_netdev_set_pmds_on_numa() starts them one by one and current number of threads changes incrementally. As a result we may have the following situation with 2 pmd threads: * dp_netdev_set_pmds_on_numa() * pmd12 thread started. Currently only 1 pmd thread exists. dpif_netdev(pmd12)|INFO|Core 1 processing port 'port_1' dpif_netdev(pmd12)|INFO|Core 1 processing port 'port_2' * pmd14 thread started. 2 pmd threads exists. dpif_netdev|INFO|Created 2 pmd threads on numa node 0 dpif_netdev(pmd14)|INFO|Core 2 processing port 'port_2' We have: core 1 --> port 1, port 2 core 2 --> port 2 Fix this by starting pmd threads only after all of them have been configured. Cc: Daniele Di Proietto <diproiettod at vmware.com> Cc: Dyasly Sergey <s.dyasly at samsung.com> Acked-by: Flavio Leitner <fbl@sysclose.org> Acked-by: Daniele Di Proietto <diproiettod@vmware.com> Signed-off-by: Ilya Maximets <i.maximets at samsung.com> Signed-off-by: Ethan Jackson <ethan@nicira.com>
Diffstat (limited to 'lib/stream-ssl.h')
0 files changed, 0 insertions, 0 deletions