trace: extract stap_escape() function for reuse
SystemTap reserved words sometimes conflict with QEMU variable names. We escape them to prevent conflicts. Move escaping into its own function so the next patch can reuse it. Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
This commit is contained in:
parent
2d591ce2ae
commit
a76ccf3c1c
@ -27,6 +27,13 @@ RESERVED_WORDS = (
|
||||
)
|
||||
|
||||
|
||||
def stap_escape(identifier):
|
||||
# Append underscore to reserved keywords
|
||||
if identifier in RESERVED_WORDS:
|
||||
return identifier + '_'
|
||||
return identifier
|
||||
|
||||
|
||||
def generate(events, backend):
|
||||
events = [e for e in events
|
||||
if "disable" not in e.properties]
|
||||
@ -45,9 +52,7 @@ def generate(events, backend):
|
||||
i = 1
|
||||
if len(e.args) > 0:
|
||||
for name in e.args.names():
|
||||
# Append underscore to reserved keywords
|
||||
if name in RESERVED_WORDS:
|
||||
name += '_'
|
||||
name = stap_escape(name)
|
||||
out(' %s = $arg%d;' % (name, i))
|
||||
i += 1
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user