Commit a76ccf3c authored by Stefan Hajnoczi's avatar Stefan Hajnoczi
Browse files

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: default avatarStefan Hajnoczi <stefanha@redhat.com>
parent 2d591ce2
Loading
Loading
Loading
Loading
+8 −3
Original line number Diff line number Diff line
@@ -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