# -*- Mode: Python -*- # vim: filetype=python # # SPDX-License-Identifier: GPL-2.0-or-later # This work is licensed under the terms of the GNU GPL, version 2 or later. # See the COPYING file in the top-level directory. { 'include': 'machine-common.json' } ## # @S390CpuPolarization: # # An enumeration of CPU polarization that can be assumed by a virtual # S390 CPU # # Since: 8.2 ## { 'enum': 'S390CpuPolarization', 'data': [ 'horizontal', 'vertical' ] } ## # @set-cpu-topology: # # Modify the topology by moving the CPU inside the topology tree, or # by changing a modifier attribute of a CPU. Absent values will not # be modified. # # @core-id: the vCPU ID to be moved # # @socket-id: destination socket to move the vCPU to # # @book-id: destination book to move the vCPU to # # @drawer-id: destination drawer to move the vCPU to # # @entitlement: entitlement to set # # @dedicated: whether the provisioning of real to virtual CPU is # dedicated # # Features: # # @unstable: This command is experimental. # # Since: 8.2 ## { 'command': 'set-cpu-topology', 'data': { 'core-id': 'uint16', '*socket-id': 'uint16', '*book-id': 'uint16', '*drawer-id': 'uint16', '*entitlement': 'S390CpuEntitlement', '*dedicated': 'bool' }, 'features': [ 'unstable' ] } ## # @CPU_POLARIZATION_CHANGE: # # Emitted when the guest asks to change the polarization. # # The guest can tell the host (via the PTF instruction) whether the # CPUs should be provisioned using horizontal or vertical # polarization. # # On horizontal polarization the host is expected to provision all # vCPUs equally. # # On vertical polarization the host can provision each vCPU # differently. The guest will get information on the details of the # provisioning the next time it uses the STSI(15) instruction. # # @polarization: polarization specified by the guest # # Features: # # @unstable: This event is experimental. # # Since: 8.2 # # .. qmp-example:: # # <- { "event": "CPU_POLARIZATION_CHANGE", # "data": { "polarization": "horizontal" }, # "timestamp": { "seconds": 1401385907, "microseconds": 422329 } } ## { 'event': 'CPU_POLARIZATION_CHANGE', 'data': { 'polarization': 'S390CpuPolarization' }, 'features': [ 'unstable' ] } ## # @CpuPolarizationInfo: # # The result of a CPU polarization query. # # @polarization: the CPU polarization # # Since: 8.2 ## { 'struct': 'CpuPolarizationInfo', 'data': { 'polarization': 'S390CpuPolarization' } } ## # @query-s390x-cpu-polarization: # # Features: # # @unstable: This command is experimental. # # Returns: the machine's CPU polarization # # Since: 8.2 ## { 'command': 'query-s390x-cpu-polarization', 'returns': 'CpuPolarizationInfo', 'features': [ 'unstable' ] }