From aad7fa7d6f590ac05d483d78b010eed5b531bf97 Mon Sep 17 00:00:00 2001 From: Dave Barach Date: Fri, 18 Oct 2019 14:44:05 -0400 Subject: vlib: enable worker-thread dispatch pcap trace Needed a bit of foreach_vlib_main(...) action to turn on/off all instances of vm->dispatch_pcap_enable, and to pick up the pcap_main_t pointer from vlib_global_main. Type: fix Signed-off-by: Dave Barach Change-Id: I49b69b87934c7dc7a9835cd07aa2c5c4d3c79f18 (cherry picked from commit 349cd1af77a27962e9475e9fa9c0ed15e2af23de) --- src/vlib/main.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'src') diff --git a/src/vlib/main.c b/src/vlib/main.c index dc11128476b..90ce53de5a0 100644 --- a/src/vlib/main.c +++ b/src/vlib/main.c @@ -1023,7 +1023,7 @@ dispatch_pcap_trace (vlib_main_t * vm, { int i; vlib_buffer_t *bufs[VLIB_FRAME_SIZE], **bufp, *b; - pcap_main_t *pm = &vm->dispatch_pcap_main; + pcap_main_t *pm = &vlib_global_main.dispatch_pcap_main; vlib_trace_main_t *tm = &vm->trace_main; u32 capture_size; vlib_node_t *n; @@ -2243,12 +2243,16 @@ vlib_pcap_dispatch_trace_configure (vlib_pcap_dispatch_trace_args_t * a) pm->file_name = (char *) a->filename; pm->n_packets_captured = 0; pm->packet_type = PCAP_PACKET_TYPE_vpp; - vm->dispatch_pcap_enable = 1; pm->n_packets_to_capture = a->packets_to_capture; + /* *INDENT-OFF* */ + foreach_vlib_main (({this_vlib_main->dispatch_pcap_enable = 1;})); + /* *INDENT-ON* */ } else { - vm->dispatch_pcap_enable = 0; + /* *INDENT-OFF* */ + foreach_vlib_main (({this_vlib_main->dispatch_pcap_enable = 0;})); + /* *INDENT-ON* */ vec_reset_length (vm->dispatch_buffer_trace_nodes); if (pm->n_packets_captured) { -- cgit 1.2.3-korg