summaryrefslogtreecommitdiffstats
path: root/src/plugins/flowprobe/flowprobe.api
diff options
context:
space:
mode:
authorAlexander Chernavin <achernavin@netgate.com>2023-12-27 11:17:23 +0000
committerMatthew Smith <mgsmith@netgate.com>2024-01-02 23:08:59 +0000
commit5d13416f38cbb12e97a7ca696c6186f3a5b4fa98 (patch)
tree2cce8b7f27ce8e4444b968a5dcf59ec6f35cd53e /src/plugins/flowprobe/flowprobe.api
parentb1ea30e5639adb4290df2bfb493729cc0d5f3b70 (diff)
flowprobe: fix calling vlib_time_now() from worker threads
Currently, when flowprobe_export_send() calls vlib_time_now(), a pointer to the main thread's vlib_main_t is always passed (the one cached in flow_report_main). However, that code can also be executed from a worker thread. And passing a pointer to the main thread's vlib_main_t to vlib_time_now() from a worker thread may cause time synchronization issues. Also, running a debug binary will cause an assertion failure in vlib_time_now() in this case. With this fix, flowprobe_export_send() passes the pointer to the current thread's vlib_main_t to vlib_time_how(). This doesn't allow to remove @tag_fixme_vpp_workers from the unit tests yet as they will be failing for other multi-worker related problems. Type: fix Change-Id: Ia35e3a4176777b88cf8ca8af8af7c42c495cbc6a Signed-off-by: Alexander Chernavin <achernavin@netgate.com>
Diffstat (limited to 'src/plugins/flowprobe/flowprobe.api')
0 files changed, 0 insertions, 0 deletions