Code Review
/
vpp.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
review
|
tree
raw
|
inline
| side by side
classify: add pcap/trace classfier mgmt API calls
[vpp.git]
/
src
/
vlib
/
trace.c
diff --git
a/src/vlib/trace.c
b/src/vlib/trace.c
index
1527444
..
156378a
100644
(file)
--- a/
src/vlib/trace.c
+++ b/
src/vlib/trace.c
@@
-39,6
+39,7
@@
#include <vlib/vlib.h>
#include <vlib/threads.h>
#include <vlib/vlib.h>
#include <vlib/threads.h>
+#include <vnet/classify/vnet_classify.h>
u8 *vnet_trace_placeholder;
u8 *vnet_trace_placeholder;
@@
-110,7
+111,7
@@
vlib_trace_frame_buffers_only (vlib_main_t * vm,
}
/* Free up all trace buffer memory. */
}
/* Free up all trace buffer memory. */
-
always_inline
void
+void
clear_trace_buffer (void)
{
int i;
clear_trace_buffer (void)
{
int i;
@@
-416,6
+417,8
@@
trace_update_capture_options (u32 add, u32 node_index, u32 filter, u8 verbose)
tm->trace_enable = 1;
}));
/* *INDENT-ON* */
tm->trace_enable = 1;
}));
/* *INDENT-ON* */
+
+ vlib_enable_disable_pkt_trace_filter (! !filter);
}
static clib_error_t *
}
static clib_error_t *
@@
-464,13
+467,11
@@
cli_add_trace_buffer (vlib_main_t * vm,
goto done;
}
goto done;
}
- if (filter)
+ u32 filter_table = classify_get_trace_chain ();
+ if (filter && filter_table == ~0)
{
{
- if (vlib_enable_disable_pkt_trace_filter (1 /* enable */ ))
- {
- error = clib_error_create ("No packet trace filter configured...");
- goto done;
- }
+ error = clib_error_create ("No packet trace filter configured...");
+ goto done;
}
trace_update_capture_options (add, node_index, filter, verbose);
}
trace_update_capture_options (add, node_index, filter, verbose);