[Bug translator/16672] New: Allow brace expansion on probe points
jistone at redhat dot com
sourceware-bugzilla@sourceware.org
Fri Mar 7 19:26:00 GMT 2014
https://sourceware.org/bugzilla/show_bug.cgi?id=16672
Bug ID: 16672
Summary: Allow brace expansion on probe points
Product: systemtap
Version: unspecified
Status: NEW
Severity: enhancement
Priority: P2
Component: translator
Assignee: systemtap at sourceware dot org
Reporter: jistone at redhat dot com
As a way to improve brevity in specifying probe points, without requiring
wildcards that may be to broad, we might allow brace expansion similar to
shells.
For example:
process.function("*").{call,return}
=> process.function("*").call, process.function("*").return
process.{function("*").callees,plt}?
=> process.function("*").callees?, process.plt?
{kernel,module("nfs")}.function("nfs*")!
=> kernel.function("nfs*")!, module("nfs").function("nfs*")!
Note the distribution of '?' and '!'. Also, if there are multiple sections of
braces, they will multiply accordingly.
The start of a brace group would only be valid syntax when it immediately
follows 'probe', '.', or ',' where we know there must be a probepoint
component, so it's not ambiguous with the brace starting a probe body. Thus
"probe e{nd,rror}" would not be allowed.
In fact I'd suggest no token-pasting at all, so the branches of the braces must
deal in whole probe components only. Or if not whole components, at least
whole tokens - that way we might still allow something like:
kernel.function({"foo","bar"})
=> kernel.function("foo"), kernel.function("bar")
--
You are receiving this mail because:
You are the assignee for the bug.
More information about the Systemtap
mailing list