All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jon Lange <jlange@microsoft.com>
To: Christophe de Dinechin Dupont de Dinechin <cdupontd@redhat.com>,
	Tom Lendacky <thomas.lendacky@amd.com>
Cc: "linux-coco@lists.linux.dev" <linux-coco@lists.linux.dev>,
	"amd-sev-snp@lists.suse.com" <amd-sev-snp@lists.suse.com>
Subject: RE: [EXTERNAL] Re: SVSM Attestation and vTPM specification additions - v0.60
Date: Thu, 26 Jan 2023 17:33:54 +0000	[thread overview]
Message-ID: <MN0PR21MB3072B01C5A138EA849D88BE4CACF9@MN0PR21MB3072.namprd21.prod.outlook.com> (raw)
In-Reply-To: <749A53E5-4C6E-4D89-AF9B-E9F5EA273E1B@redhat.com>

One of the design goals of SVSM was to maximize the compatibility between all guest OSes and all SVSM implementations.  The idea that there are SVSM-specific protocols seems, in general, to be directly contradictory to this goal.  Why would it be desirable for a guest to have a conversation with its SVSM that is specific to the architecture of that SVSM?  I would think it far superior to define every sort of interaction as a generic contract that could be supported by every SVSM implementation to maximize compatibility in accordance with the stated goal.

Put another way, seeing any upstream implementation that provides functionality that is complete with SVSM A but which cannot be achieved with SVSM B should not be viewed as a desirable feature of the protocol. 

Attestation itself is a generic concept that should be applicable to every SVSM.  Why would anything related to attestation be implemented as specific to a single SVSM architecture?

-Jon

-----Original Message-----
From: AMD-SEV-SNP <amd-sev-snp-bounces+jlange=microsoft.com@lists.suse.com> On Behalf Of Christophe de Dinechin Dupont de Dinechin
Sent: Thursday, January 26, 2023 8:49 AM
To: Tom Lendacky <thomas.lendacky@amd.com>
Cc: linux-coco@lists.linux.dev; amd-sev-snp@lists.suse.com
Subject: [EXTERNAL] Re: SVSM Attestation and vTPM specification additions - v0.60



> On 26 Jan 2023, at 15:51, Tom Lendacky <thomas.lendacky@amd.com> wrote:
> 
> On 1/24/23 03:45, Jörg Rödel wrote:
>> On Tue, Jan 10, 2023 at 12:54:27PM -0600, Tom Lendacky wrote:
>>> Attached is an updated draft version of the SVSM specification with 
>>> added support for an attestation protocol and a vTPM protocol as 
>>> well as other miscellaneous changes (all identified by change bar). 
>>> Please take a look and reply with any feedback you may have.
>> Another addition I'd like to propose:
>> It would be nice to have a protocol number reserved for 
>> implementation specific requests. The protocol number only defines 
>> one standardized request to identify the specific SVSM implemenation 
>> in use. Other requests are implementation specific and can be used to 
>> manage the SVSM from the guest.
> 
> Would returning an implementation GUID as part of SVSM_CORE_QUERY_PROTCOL or adding a SVSM_CORE_GET_IMPLEMENTATION call to the core protocol be better? Then we could reserve a range of protocols for use SVSM implementation specific protocols as opposed to just one. Since the protocol ID is 32-bits, maybe make 0x8000_0000 to 0x8FFF_FFFF be SVSM implementation specific.
> 
> Which would folks prefer? A new protocol to retrieve the implementation, modify SVSM_CORE_QUERY_PROTCOL or add SVSM_CORE_GET_IMPLEMENTATION to the core protocol?
> 
> Or any strong feelings about why this wouldn't be good?

Intuitively, I have a slight preference for the reserved range. It is the simplest to understand, has a larger potential for an implementation encoding some info in the protocol, and also means that testing for it can be static (on both sides).

> 
> Thanks,
> Tom
> 
>> One use-case would be, for example, to read the SVSM log buffer from 
>> the guest side, but depending on the implementation there could be 
>> more requests defined.
>> Regards,



  reply	other threads:[~2023-01-26 17:33 UTC|newest]

Thread overview: 48+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-01-10 18:54 SVSM Attestation and vTPM specification additions - v0.60 Tom Lendacky
2023-01-10 19:37 ` Tom Lendacky
2023-01-10 19:40 ` Dionna Amalie Glaze
2023-01-10 21:03   ` Tom Lendacky
2023-01-10 22:14     ` James Bottomley
2023-01-10 22:45       ` Tom Lendacky
2023-01-10 23:52         ` James Bottomley
2023-01-11  9:15           ` Christophe de Dinechin Dupont de Dinechin
2023-01-10 20:29 ` James Bottomley
2023-01-10 20:37   ` James Bottomley
2023-01-10 21:33     ` Tom Lendacky
2023-01-10 21:32   ` Tom Lendacky
2023-01-10 21:47     ` James Bottomley
2023-01-10 23:00       ` Tom Lendacky
2023-01-10 23:09         ` James Bottomley
2023-01-11 14:49           ` Tom Lendacky
2023-01-11 14:56             ` James Bottomley
2023-01-10 23:14         ` James Bottomley
2023-01-11 16:39 ` Christophe de Dinechin
2023-01-11 23:00   ` Tom Lendacky
2023-01-12  1:27     ` [EXTERNAL] " Jon Lange
2023-01-13 16:10       ` Tom Lendacky
2023-01-12 13:57   ` James Bottomley
2023-01-12 15:13     ` Tom Lendacky
2023-01-12 15:24       ` James Bottomley
2023-01-13 16:12         ` Tom Lendacky
2023-01-12  8:19 ` Dov Murik
2023-01-12 12:18   ` James Bottomley
2023-01-13 16:16   ` Tom Lendacky
2023-01-13 11:50 ` Nicolai Stange
2023-01-13 17:20   ` Tom Lendacky
2023-01-24  9:35 ` Jörg Rödel
2023-01-26 14:36   ` Tom Lendacky
2023-01-26 16:45     ` Christophe de Dinechin Dupont de Dinechin
2023-02-01 10:50   ` Jörg Rödel
2023-02-20 15:10     ` Tom Lendacky
2023-01-24  9:45 ` Jörg Rödel
2023-01-26 14:51   ` Tom Lendacky
2023-01-26 16:49     ` Christophe de Dinechin Dupont de Dinechin
2023-01-26 17:33       ` Jon Lange [this message]
2023-01-27  8:35         ` [EXTERNAL] " Jörg Rödel
2023-01-27 16:11           ` Jon Lange
2023-01-30 11:29             ` Jörg Rödel
2023-01-31  4:44               ` Jon Lange
2023-01-31 15:06                 ` Tom Lendacky
2023-01-31 15:34                   ` Jon Lange
2023-02-01 15:20                 ` [EXTERNAL] " Christophe de Dinechin Dupont de Dinechin
2023-02-02  6:04                   ` Jon Lange

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=MN0PR21MB3072B01C5A138EA849D88BE4CACF9@MN0PR21MB3072.namprd21.prod.outlook.com \
    --to=jlange@microsoft.com \
    --cc=amd-sev-snp@lists.suse.com \
    --cc=cdupontd@redhat.com \
    --cc=linux-coco@lists.linux.dev \
    --cc=thomas.lendacky@amd.com \
    /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.