summaryrefslogtreecommitdiffstats
path: root/Documentation/trace
diff options
context:
space:
mode:
authorSteven Rostedt <rostedt@goodmis.org>2013-06-12 13:16:25 -0400
committerSteven Rostedt <rostedt@goodmis.org>2013-06-19 23:30:40 -0400
commit1a891cf19cdfb645827969cc6aeaeebdefeb87b2 (patch)
tree7f62a3cd802158e8c29a6fdac1a54f39ba47a454 /Documentation/trace
parentaaf6ac0f0871cb7fc0f28f3a00edf329bc7adc29 (diff)
downloadlinux-1a891cf19cdfb645827969cc6aeaeebdefeb87b2.tar.gz
linux-1a891cf19cdfb645827969cc6aeaeebdefeb87b2.tar.bz2
linux-1a891cf19cdfb645827969cc6aeaeebdefeb87b2.zip
tracing: Add binary '&' filter for events
There are some cases when filtering on a set flag of a field of a tracepoint is useful. But currently the only filtering commands for numbered fields is ==, !=, <, <=, >, >=. This does not help when you just want to trace if a specific flag is set. For example: > # sudo trace-cmd record -e brcmfmac:brcmf_dbg -f 'level & 0x40000' > disable all > enable brcmfmac:brcmf_dbg > path = /sys/kernel/debug/tracing/events/brcmfmac/brcmf_dbg/enable > (level & 0x40000) > ^ > parse_error: Invalid operator > When trying to trace brcmf_dbg when level has its 1 << 18 bit set, the filter fails to perform. By allowing a binary '&' operation, this gives the user the ability to test a bit. Note, a binary '|' is not added, as it doesn't make sense as fields must be compared to constants (for now), and ORing a constant will always return true. Link: http://lkml.kernel.org/r/1371057385.9844.261.camel@gandalf.local.home Suggested-by: Arend van Spriel <arend@broadcom.com> Tested-by: Arend van Spriel <arend@broadcom.com> Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
Diffstat (limited to 'Documentation/trace')
-rw-r--r--Documentation/trace/events.txt2
1 files changed, 1 insertions, 1 deletions
diff --git a/Documentation/trace/events.txt b/Documentation/trace/events.txt
index bb24c2a0e870..41911240c65c 100644
--- a/Documentation/trace/events.txt
+++ b/Documentation/trace/events.txt
@@ -183,7 +183,7 @@ The relational-operators depend on the type of the field being tested:
The operators available for numeric fields are:
-==, !=, <, <=, >, >=
+==, !=, <, <=, >, >=, &
And for string fields they are: