| # -*- mode: python -*- | |
| # vim: filetype=python | |
| # | |
| # Copyright (C) 2011-2016 Lluís Vilanova <vilanova@ac.upc.edu> | |
| # | |
| # This work is licensed under the terms of the GNU GPL, version 2 or later. | |
| # See the COPYING file in the top-level directory. | |
| ## | |
| # = Tracing | |
| ## | |
| ## | |
| # @TraceEventState: | |
| # | |
| # State of a tracing event. | |
| # | |
| # @unavailable: The event is statically disabled. | |
| # | |
| # @disabled: The event is dynamically disabled. | |
| # | |
| # @enabled: The event is dynamically enabled. | |
| # | |
| # Since: 2.2 | |
| ## | |
| { 'enum': 'TraceEventState', | |
| 'data': ['unavailable', 'disabled', 'enabled'] } | |
| ## | |
| # @TraceEventInfo: | |
| # | |
| # Information of a tracing event. | |
| # | |
| # @name: Event name. | |
| # | |
| # @state: Tracing state. | |
| # | |
| # Since: 2.2 | |
| ## | |
| { 'struct': 'TraceEventInfo', | |
| 'data': {'name': 'str', 'state': 'TraceEventState' } } | |
| ## | |
| # @trace-event-get-state: | |
| # | |
| # Query the state of events. | |
| # | |
| # @name: Event name pattern (case-sensitive glob). | |
| # | |
| # Returns: a list of @TraceEventInfo for the matching events | |
| # | |
| # Since: 2.2 | |
| # | |
| # .. qmp-example:: | |
| # | |
| # -> { "execute": "trace-event-get-state", | |
| # "arguments": { "name": "qemu_memalign" } } | |
| # <- { "return": [ { "name": "qemu_memalign", "state": "disabled", "vcpu": false } ] } | |
| ## | |
| { 'command': 'trace-event-get-state', | |
| 'data': {'name': 'str' }, | |
| 'returns': ['TraceEventInfo'] } | |
| ## | |
| # @trace-event-set-state: | |
| # | |
| # Set the dynamic tracing state of events. | |
| # | |
| # @name: Event name pattern (case-sensitive glob). | |
| # | |
| # @enable: Whether to enable tracing. | |
| # | |
| # @ignore-unavailable: Do not match unavailable events with @name. | |
| # | |
| # Since: 2.2 | |
| # | |
| # .. qmp-example:: | |
| # | |
| # -> { "execute": "trace-event-set-state", | |
| # "arguments": { "name": "qemu_memalign", "enable": true } } | |
| # <- { "return": {} } | |
| ## | |
| { 'command': 'trace-event-set-state', | |
| 'data': {'name': 'str', 'enable': 'bool', '*ignore-unavailable': 'bool' } } |