| # -*- 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. |
| # |
| # @vcpu: Whether this is a per-vCPU event (since 2.7). |
| # |
| # Features: |
| # @deprecated: Member @vcpu is deprecated, and always ignored. |
| # |
| # Since: 2.2 |
| ## |
| { 'struct': 'TraceEventInfo', |
| 'data': {'name': 'str', 'state': 'TraceEventState', |
| 'vcpu': { 'type': 'bool', 'features': ['deprecated'] } } } |
| |
| ## |
| # @trace-event-get-state: |
| # |
| # Query the state of events. |
| # |
| # @name: Event name pattern (case-sensitive glob). |
| # |
| # @vcpu: The vCPU to query (since 2.7). |
| # |
| # Features: |
| # @deprecated: Member @vcpu is deprecated, and always ignored. |
| # |
| # Returns: a list of @TraceEventInfo for the matching events |
| # |
| # An event is returned if its name matches the @name pattern |
| # (There are no longer any per-vCPU events). |
| # |
| # Since: 2.2 |
| # |
| # 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', |
| '*vcpu': {'type': 'int', 'features': ['deprecated'] } }, |
| '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. |
| # |
| # @vcpu: The vCPU to act upon (all by default; since 2.7). |
| # |
| # Features: |
| # @deprecated: Member @vcpu is deprecated, and always ignored. |
| # |
| # An event is enabled if its name matches the @name pattern |
| # (There are no longer any per-vCPU events). |
| # |
| # Since: 2.2 |
| # |
| # 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', |
| '*vcpu': {'type': 'int', 'features': ['deprecated'] } } } |