From: David Gibson <david@gibson.dropbear.id.au>
To: dgilbert@redhat.com, frankja@linux.ibm.com, pair@us.redhat.com,
qemu-devel@nongnu.org, brijesh.singh@amd.com
Cc: kvm@vger.kernel.org, qemu-ppc@nongnu.org,
David Gibson <david@gibson.dropbear.id.au>,
Richard Henderson <rth@twiddle.net>,
cohuck@redhat.com, Paolo Bonzini <pbonzini@redhat.com>,
Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
"Michael S. Tsirkin" <mst@redhat.com>,
Eduardo Habkost <ehabkost@redhat.com>,
qemu-devel@nongnu.-rg, mdroth@linux.vnet.ibm.com
Subject: [RFC 02/18] target/i386: sev: Move local structure definitions into .c file
Date: Thu, 14 May 2020 16:41:04 +1000 [thread overview]
Message-ID: <20200514064120.449050-3-david@gibson.dropbear.id.au> (raw)
In-Reply-To: <20200514064120.449050-1-david@gibson.dropbear.id.au>
Neither QSevGuestInfo nor SEVState (not to be confused with SevState) is
used anywhere outside target/i386/sev.c, so they might as well live in
there rather than in a (somewhat) exposed header.
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
---
target/i386/sev.c | 44 ++++++++++++++++++++++++++++++++++++++++++
target/i386/sev_i386.h | 44 ------------------------------------------
2 files changed, 44 insertions(+), 44 deletions(-)
diff --git a/target/i386/sev.c b/target/i386/sev.c
index d73d53d558..c7a6e3f6d2 100644
--- a/target/i386/sev.c
+++ b/target/i386/sev.c
@@ -29,6 +29,50 @@
#include "trace.h"
#include "migration/blocker.h"
+#define TYPE_QSEV_GUEST_INFO "sev-guest"
+#define QSEV_GUEST_INFO(obj) \
+ OBJECT_CHECK(QSevGuestInfo, (obj), TYPE_QSEV_GUEST_INFO)
+
+typedef struct QSevGuestInfo QSevGuestInfo;
+
+/**
+ * QSevGuestInfo:
+ *
+ * The QSevGuestInfo object is used for creating a SEV guest.
+ *
+ * # $QEMU \
+ * -object sev-guest,id=sev0 \
+ * -machine ...,memory-encryption=sev0
+ */
+struct QSevGuestInfo {
+ Object parent_obj;
+
+ char *sev_device;
+ uint32_t policy;
+ uint32_t handle;
+ char *dh_cert_file;
+ char *session_file;
+ uint32_t cbitpos;
+ uint32_t reduced_phys_bits;
+};
+
+struct SEVState {
+ QSevGuestInfo *sev_info;
+ uint8_t api_major;
+ uint8_t api_minor;
+ uint8_t build_id;
+ uint32_t policy;
+ uint64_t me_mask;
+ uint32_t cbitpos;
+ uint32_t reduced_phys_bits;
+ uint32_t handle;
+ int sev_fd;
+ SevState state;
+ gchar *measurement;
+};
+
+typedef struct SEVState SEVState;
+
#define DEFAULT_GUEST_POLICY 0x1 /* disable debug */
#define DEFAULT_SEV_DEVICE "/dev/sev"
diff --git a/target/i386/sev_i386.h b/target/i386/sev_i386.h
index 4f193642ac..8eb7de1bef 100644
--- a/target/i386/sev_i386.h
+++ b/target/i386/sev_i386.h
@@ -28,10 +28,6 @@
#define SEV_POLICY_DOMAIN 0x10
#define SEV_POLICY_SEV 0x20
-#define TYPE_QSEV_GUEST_INFO "sev-guest"
-#define QSEV_GUEST_INFO(obj) \
- OBJECT_CHECK(QSevGuestInfo, (obj), TYPE_QSEV_GUEST_INFO)
-
extern bool sev_enabled(void);
extern uint64_t sev_get_me_mask(void);
extern SevInfo *sev_get_info(void);
@@ -40,44 +36,4 @@ extern uint32_t sev_get_reduced_phys_bits(void);
extern char *sev_get_launch_measurement(void);
extern SevCapability *sev_get_capabilities(void);
-typedef struct QSevGuestInfo QSevGuestInfo;
-
-/**
- * QSevGuestInfo:
- *
- * The QSevGuestInfo object is used for creating a SEV guest.
- *
- * # $QEMU \
- * -object sev-guest,id=sev0 \
- * -machine ...,memory-encryption=sev0
- */
-struct QSevGuestInfo {
- Object parent_obj;
-
- char *sev_device;
- uint32_t policy;
- uint32_t handle;
- char *dh_cert_file;
- char *session_file;
- uint32_t cbitpos;
- uint32_t reduced_phys_bits;
-};
-
-struct SEVState {
- QSevGuestInfo *sev_info;
- uint8_t api_major;
- uint8_t api_minor;
- uint8_t build_id;
- uint32_t policy;
- uint64_t me_mask;
- uint32_t cbitpos;
- uint32_t reduced_phys_bits;
- uint32_t handle;
- int sev_fd;
- SevState state;
- gchar *measurement;
-};
-
-typedef struct SEVState SEVState;
-
#endif
--
2.26.2
next prev parent reply other threads:[~2020-05-14 6:41 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-05-14 6:41 [RFC 00/18] Refactor configuration of guest memory protection David Gibson
2020-05-14 6:41 ` [RFC 01/18] target/i386: sev: Remove unused QSevGuestInfoClass David Gibson
2020-05-14 6:41 ` David Gibson [this message]
2020-05-14 6:41 ` [RFC 03/18] target/i386: sev: Rename QSevGuestInfo David Gibson
2020-05-14 6:41 ` [RFC 04/18] target/i386: sev: Embed SEVState in SevGuestState David Gibson
2020-05-14 6:41 ` [RFC 05/18] target/i386: sev: Partial cleanup to sev_state global David Gibson
2020-05-14 6:41 ` [RFC 06/18] target/i386: sev: Remove redundant cbitpos and reduced_phys_bits fields David Gibson
2020-05-14 6:41 ` [RFC 07/18] target/i386: sev: Remove redundant policy field David Gibson
2020-05-14 6:41 ` [RFC 08/18] target/i386: sev: Remove redundant handle field David Gibson
2020-05-14 6:41 ` [RFC 09/18] target/i386: sev: Unify SEVState and SevGuestState David Gibson
2020-05-14 6:41 ` [RFC 10/18] guest memory protection: Add guest memory protection interface David Gibson
2020-05-14 6:41 ` [RFC 11/18] guest memory protection: Handle memory encrption via interface David Gibson
2020-05-14 6:41 ` [RFC 12/18] guest memory protection: Perform KVM init " David Gibson
2020-05-14 6:41 ` [RFC 13/18] guest memory protection: Move side effect out of machine_set_memory_encryption() David Gibson
2020-05-14 6:41 ` [RFC 14/18] guest memory protection: Rework the "memory-encryption" property David Gibson
2020-05-14 6:41 ` [RFC 15/18] guest memory protection: Decouple kvm_memcrypt_*() helpers from KVM David Gibson
2020-05-14 6:41 ` [RFC 16/18] use errp for gmpo kvm_init David Gibson
2020-05-14 17:09 ` Dr. David Alan Gilbert
2020-05-15 0:14 ` David Gibson
2020-05-15 0:20 ` David Gibson
2020-05-14 6:41 ` [RFC 17/18] spapr: Added PEF based guest memory protection David Gibson
2020-05-14 6:41 ` [RFC 18/18] guest memory protection: Alter virtio default properties for protected guests David Gibson
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=20200514064120.449050-3-david@gibson.dropbear.id.au \
--to=david@gibson.dropbear.id.au \
--cc=brijesh.singh@amd.com \
--cc=cohuck@redhat.com \
--cc=dgilbert@redhat.com \
--cc=ehabkost@redhat.com \
--cc=frankja@linux.ibm.com \
--cc=kvm@vger.kernel.org \
--cc=marcel.apfelbaum@gmail.com \
--cc=mdroth@linux.vnet.ibm.com \
--cc=mst@redhat.com \
--cc=pair@us.redhat.com \
--cc=pbonzini@redhat.com \
--cc=qemu-devel@nongnu.-rg \
--cc=qemu-devel@nongnu.org \
--cc=qemu-ppc@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).