All of lore.kernel.org
 help / color / mirror / Atom feed
From: Liran Alon <liran.alon@oracle.com>
To: qemu-devel@nongnu.org
Cc: ehabkost@redhat.com, mst@redhat.com,
	Liran Alon <liran.alon@oracle.com>,
	Nikita Leshenko <nikita.leshchenko@oracle.com>,
	pbonzini@redhat.com, rth@twiddle.net
Subject: [PATCH 10/14] hw/i386/vmport: Add support for CMD_GET_VCPU_INFO
Date: Tue, 10 Mar 2020 01:54:07 +0200	[thread overview]
Message-ID: <20200309235411.76587-11-liran.alon@oracle.com> (raw)
In-Reply-To: <20200309235411.76587-1-liran.alon@oracle.com>

Command currently returns that it is unimplemented by setting
the reserved-bit in it's return value.

Following patches will return various useful vCPU information
to guest.

Reviewed-by: Nikita Leshenko <nikita.leshchenko@oracle.com>
Signed-off-by: Liran Alon <liran.alon@oracle.com>
---
 hw/i386/vmport.c     | 13 +++++++++++++
 include/hw/i386/pc.h |  1 +
 2 files changed, 14 insertions(+)

diff --git a/hw/i386/vmport.c b/hw/i386/vmport.c
index 26231fc9d718..b33ef9c01d65 100644
--- a/hw/i386/vmport.c
+++ b/hw/i386/vmport.c
@@ -42,6 +42,13 @@ typedef enum {
    VMX_TYPE_WORKSTATION_ENTERPRISE /* Deprecated type used for ACE 1.x */
 } VMX_Type;
 
+/* vCPU features reported by CMD_GET_VCPU_INFO */
+#define VCPU_INFO_SLC64_BIT             0
+#define VCPU_INFO_SYNC_VTSCS_BIT        1
+#define VCPU_INFO_HV_REPLAY_OK_BIT      2
+#define VCPU_INFO_LEGACY_X2APIC_BIT     3
+#define VCPU_INFO_RESERVED_BIT          31
+
 #define VMPORT(obj) OBJECT_CHECK(VMPortState, (obj), TYPE_VMPORT)
 
 typedef struct VMPortState {
@@ -173,6 +180,11 @@ static uint32_t vmport_cmd_time_full(void *opaque, uint32_t addr)
     return VMPORT_MAGIC;
 }
 
+static uint32_t vmport_cmd_get_vcpu_info(void *opaque, uint32_t addr)
+{
+    return (1 << VCPU_INFO_RESERVED_BIT);
+}
+
 /* vmmouse helpers */
 void vmmouse_get_data(uint32_t *data)
 {
@@ -219,6 +231,7 @@ static void vmport_realizefn(DeviceState *dev, Error **errp)
     vmport_register(VMPORT_CMD_GETRAMSIZE, vmport_cmd_ram_size, NULL);
     vmport_register(VMPORT_CMD_GETTIME, vmport_cmd_time, NULL);
     vmport_register(VMPORT_CMD_GETTIMEFULL, vmport_cmd_time_full, NULL);
+    vmport_register(VMPORT_CMD_GET_VCPU_INFO, vmport_cmd_get_vcpu_info, NULL);
 }
 
 static Property vmport_properties[] = {
diff --git a/include/hw/i386/pc.h b/include/hw/i386/pc.h
index 14d321e3cbbe..e880ca39ee3b 100644
--- a/include/hw/i386/pc.h
+++ b/include/hw/i386/pc.h
@@ -147,6 +147,7 @@ typedef enum {
     VMPORT_CMD_VMMOUSE_STATUS   = 40,
     VMPORT_CMD_VMMOUSE_COMMAND  = 41,
     VMPORT_CMD_GETTIMEFULL      = 46,
+    VMPORT_CMD_GET_VCPU_INFO    = 68,
     VMPORT_ENTRIES
 } VMPortCommand;
 
-- 
2.20.1



  parent reply	other threads:[~2020-03-09 23:53 UTC|newest]

Thread overview: 79+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-03-09 23:53 [PATCH 00/14]: hw/i386/vmport: Bug fixes and improvements Liran Alon
2020-03-09 23:53 ` [PATCH 01/14] hw/i386/vmport: Propagate IOPort read to vCPU EAX register Liran Alon
2020-03-09 23:53 ` [PATCH 02/14] hw/i386/vmport: Set EAX to -1 on failed and unsupported commands Liran Alon
2020-03-09 23:54 ` [PATCH 03/14] hw/i386/vmport: Add device properties Liran Alon
2020-03-09 23:54 ` [PATCH 04/14] hw/i386/vmport: Introduce vmx-version property Liran Alon
2020-03-10  9:32   ` Michael S. Tsirkin
2020-03-10 11:05     ` Liran Alon
2020-03-10 11:18       ` Michael S. Tsirkin
2020-03-10 11:28         ` Liran Alon
2020-03-10 11:44           ` Michael S. Tsirkin
2020-03-10 11:53             ` Liran Alon
2020-03-09 23:54 ` [PATCH 05/14] hw/i386/vmport: Report VMX type in CMD_GETVERSION Liran Alon
2020-03-10  9:20   ` Michael S. Tsirkin
2020-03-10 11:18     ` Liran Alon
2020-03-10 11:23       ` Michael S. Tsirkin
2020-03-10 11:40         ` Liran Alon
2020-03-10 11:47           ` Michael S. Tsirkin
2020-03-10 12:14   ` Michael S. Tsirkin
2020-03-10 12:25     ` Liran Alon
2020-03-10 12:35       ` Michael S. Tsirkin
2020-03-10 12:43         ` Liran Alon
2020-03-10 12:53           ` Michael S. Tsirkin
2020-03-10 13:35             ` Liran Alon
2020-03-10 14:08               ` Michael S. Tsirkin
2020-03-10 14:46                 ` Liran Alon
2020-03-10 15:10                   ` Michael S. Tsirkin
2020-03-10 16:39                     ` Liran Alon
2020-03-10 17:36                       ` Michael S. Tsirkin
2020-03-10 17:58                         ` Liran Alon
2020-03-10 21:16                   ` Michael S. Tsirkin
2020-03-10 21:34                     ` Liran Alon
2020-03-10 21:49                       ` Michael S. Tsirkin
2020-03-10 21:59                         ` Liran Alon
2020-03-10 22:04                           ` Michael S. Tsirkin
2020-03-09 23:54 ` [PATCH 06/14] hw/i386/vmport: Define enum for all commands Liran Alon
2020-03-10  9:28   ` Michael S. Tsirkin
2020-03-10 11:16     ` Liran Alon
2020-03-10 11:23       ` Michael S. Tsirkin
2020-03-10 11:37         ` Liran Alon
2020-03-10 11:46           ` Michael S. Tsirkin
2020-03-10 11:54             ` Liran Alon
2020-03-09 23:54 ` [PATCH 07/14] hw/i386/vmport: Add support for CMD_GETBIOSUUID Liran Alon
2020-03-10  9:22   ` Michael S. Tsirkin
2020-03-10 11:44     ` Liran Alon
2020-03-10 12:01       ` Michael S. Tsirkin
2020-03-10 12:37         ` Liran Alon
2020-03-10 13:01           ` Michael S. Tsirkin
2020-03-10  9:34   ` Michael S. Tsirkin
2020-03-10 11:13     ` Liran Alon
2020-03-10 11:22       ` Michael S. Tsirkin
2020-03-10 11:35         ` Liran Alon
2020-03-10 14:24         ` Liran Alon
2020-03-10 14:39           ` Michael S. Tsirkin
2020-03-10 14:56             ` Liran Alon
2020-03-09 23:54 ` [PATCH 08/14] hw/i386/vmport: Add support for CMD_GETTIME Liran Alon
2020-03-09 23:54 ` [PATCH 09/14] hw/i386/vmport: Add support for CMD_GETTIMEFULL Liran Alon
2020-03-09 23:54 ` Liran Alon [this message]
2020-03-09 23:54 ` [PATCH 11/14] hw/i386/vmport: Allow x2apic without IR Liran Alon
2020-03-09 23:54 ` [PATCH 12/14] i386/cpu: Store LAPIC bus frequency in CPU structure Liran Alon
2020-03-10  9:29   ` Michael S. Tsirkin
2020-03-10 10:53     ` Liran Alon
2020-03-10 12:27       ` Michael S. Tsirkin
2020-03-10 12:29         ` Liran Alon
2020-03-09 23:54 ` [PATCH 13/14] hw/i386/vmport: Add support for CMD_GETHZ Liran Alon
2020-03-09 23:54 ` [PATCH 14/14] hw/i386/vmport: Assert vmport initialized before registering commands Liran Alon
2020-03-10  9:30   ` Michael S. Tsirkin
2020-03-10 10:57     ` Liran Alon
2020-03-10  0:13 ` [PATCH 00/14]: hw/i386/vmport: Bug fixes and improvements no-reply
2020-03-10  0:16   ` Liran Alon
2020-03-10  0:53 ` no-reply
2020-03-10  0:54 ` no-reply
2020-03-10  0:57   ` Liran Alon
2020-03-10  1:10 ` no-reply
2020-03-10  1:49 ` no-reply
2020-03-10  1:50 ` no-reply
2020-03-10  2:04 ` no-reply
2020-03-10  2:22 ` no-reply
2020-03-10  2:56 ` no-reply
2020-03-10  2:56 ` no-reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200309235411.76587-11-liran.alon@oracle.com \
    --to=liran.alon@oracle.com \
    --cc=ehabkost@redhat.com \
    --cc=mst@redhat.com \
    --cc=nikita.leshchenko@oracle.com \
    --cc=pbonzini@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=rth@twiddle.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.