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 06/18] target/i386: sev: Remove redundant cbitpos and reduced_phys_bits fields
Date: Thu, 14 May 2020 16:41:08 +1000 [thread overview]
Message-ID: <20200514064120.449050-7-david@gibson.dropbear.id.au> (raw)
In-Reply-To: <20200514064120.449050-1-david@gibson.dropbear.id.au>
The SEVState structure has cbitpos and reduced_phys_bits fields which are
simply copied from the SevGuestState structure and never changed. Now that
SEVState is embedded in SevGuestState we can just access the original copy
directly.
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
---
target/i386/sev.c | 19 +++++++------------
1 file changed, 7 insertions(+), 12 deletions(-)
diff --git a/target/i386/sev.c b/target/i386/sev.c
index 5f0c38da95..c85f59d78f 100644
--- a/target/i386/sev.c
+++ b/target/i386/sev.c
@@ -41,8 +41,6 @@ struct SEVState {
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;
@@ -381,13 +379,13 @@ sev_get_me_mask(void)
uint32_t
sev_get_cbit_position(void)
{
- return sev_guest ? sev_guest->state.cbitpos : 0;
+ return sev_guest ? sev_guest->cbitpos : 0;
}
uint32_t
sev_get_reduced_phys_bits(void)
{
- return sev_guest ? sev_guest->state.reduced_phys_bits : 0;
+ return sev_guest ? sev_guest->reduced_phys_bits : 0;
}
SevInfo *
@@ -716,22 +714,19 @@ sev_guest_init(const char *id)
host_cpuid(0x8000001F, 0, NULL, &ebx, NULL, NULL);
host_cbitpos = ebx & 0x3f;
- s->cbitpos = object_property_get_int(OBJECT(sev), "cbitpos", NULL);
- if (host_cbitpos != s->cbitpos) {
+ if (host_cbitpos != sev->cbitpos) {
error_report("%s: cbitpos check failed, host '%d' requested '%d'",
- __func__, host_cbitpos, s->cbitpos);
+ __func__, host_cbitpos, sev->cbitpos);
goto err;
}
- s->reduced_phys_bits = object_property_get_int(OBJECT(sev),
- "reduced-phys-bits", NULL);
- if (s->reduced_phys_bits < 1) {
+ if (sev->reduced_phys_bits < 1) {
error_report("%s: reduced_phys_bits check failed, it should be >=1,"
- " requested '%d'", __func__, s->reduced_phys_bits);
+ " requested '%d'", __func__, sev->reduced_phys_bits);
goto err;
}
- s->me_mask = ~(1UL << s->cbitpos);
+ s->me_mask = ~(1UL << sev->cbitpos);
devname = object_property_get_str(OBJECT(sev), "sev-device", NULL);
s->sev_fd = open(devname, O_RDWR);
--
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 ` [RFC 02/18] target/i386: sev: Move local structure definitions into .c file David Gibson
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 ` David Gibson [this message]
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-7-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).