From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from NAM11-BN8-obe.outbound.protection.outlook.com (NAM11-BN8-obe.outbound.protection.outlook.com [40.107.236.73]) by mx.groups.io with SMTP id smtpd.web10.8176.1652448763268339973 for ; Fri, 13 May 2022 06:32:43 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@amd.com header.s=selector1 header.b=obm9GPFt; spf=permerror, err=parse error for token &{10 18 %{i}._ip.%{h}._ehlo.%{d}._spf.vali.email}: invalid domain name (domain: amd.com, ip: 40.107.236.73, mailfrom: thomas.lendacky@amd.com) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=oF/J/aOeTGlLcAjUzCLv1ULfMCmaw9vWF9NJQeOl9JblHKTgudfRwMfpFFA8jYBGCpoRhiBGYtABQCuGAV6AZiRRgZTJjbrQ/Ry82nlr4f6Peldz2UsExpo/WTyD0QcrdFnGc94Ry4oxpoNxF6GqhiHeXQCRv0RTA4BoPQ2L/ZfEuE14hiybv3DtaVOGvHQeXnELsKG+9I0Lzb8TsF9NzxaxiUzgI5g9PbO/uhSnowMEyMISU265q9dPGs1fBIcchdxQYkcKAfyfQ87AONTm6TqZVbpme60pPt3ySMbv79uGubZWkiztEqJsAIc4Qfe2AV4m6mQ6jtu/msahZ0VG4Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=EtlU/H+h1JzvyMafFgbgDx+obuP+zDVVXWYLMXIw69s=; b=e8BmbIK6rVsv87xD3xKFog4SVlQedkKu85bnWBOO8nE6aC/8RRs5AkpRGLqKs6PJ5VMucpi6P3qAr9teoPQJt/13vEtjEwgsYVfErRvTVewB2jRhuMxwOSJP6M+nCCqs9GOEbu3vvdqpYdRepEkFyiGwkp+bIekDcWYQnl97sXEu2wPm17pQORpyxnE7+umf/aHdmBsoz4gCsTdd2yOvFUx5lPzXd4UKO6KlgoEdc8j81Ytp8zUogowrxIUqXnhtab4uQ2z6LuC+LknFosCstHbgkIFY9W+oVPFFQjrr/kzfjRb5zWrol/cV2eagA6mL+CYl82KwQLAA1xJW5pC/sg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=EtlU/H+h1JzvyMafFgbgDx+obuP+zDVVXWYLMXIw69s=; b=obm9GPFtx+NcmLDwM6oE/wQvOmiSyGS6AJe6jowfsCEIjSd/X7DsdWw/I23sKSGTAXy1LSAD+JB3iTpK+25wj7lNQkJnxJ2hG5maCTW1F7q21EYJW/7r1m6aoXMOYW5IStpLGIBBaY4HnY8R1FXFC2I5ykCBxtrpLBSTg2rqCYQ= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com; Received: from DM4PR12MB5229.namprd12.prod.outlook.com (2603:10b6:5:398::12) by DM6PR12MB3163.namprd12.prod.outlook.com (2603:10b6:5:15e::26) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5227.23; Fri, 13 May 2022 13:32:40 +0000 Received: from DM4PR12MB5229.namprd12.prod.outlook.com ([fe80::db8:5b23:acf0:6f9a]) by DM4PR12MB5229.namprd12.prod.outlook.com ([fe80::db8:5b23:acf0:6f9a%4]) with mapi id 15.20.5250.016; Fri, 13 May 2022 13:32:40 +0000 Message-ID: <14a3ed39-163c-d7a4-d4c4-04afa522f742@amd.com> Date: Fri, 13 May 2022 08:32:38 -0500 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.5.0 Subject: Re: [PATCH] OvmfPkg/AmdSevDxe: Update ConfidentialComputing blob struct definition To: Michael Roth , devel@edk2.groups.io References: <20220513132224.397601-1-michael.roth@amd.com> From: "Lendacky, Thomas" In-Reply-To: <20220513132224.397601-1-michael.roth@amd.com> X-ClientProxiedBy: SA0PR11CA0146.namprd11.prod.outlook.com (2603:10b6:806:131::31) To DM4PR12MB5229.namprd12.prod.outlook.com (2603:10b6:5:398::12) Return-Path: Thomas.Lendacky@amd.com MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 4ff0ab7b-29bd-4f81-d645-08da34e50d88 X-MS-TrafficTypeDiagnostic: DM6PR12MB3163:EE_ X-Microsoft-Antispam-PRVS: X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: lkhwfi2rVRGD3qiSr8cXVIJOW36aZLwKc+boD0RykqJ5sUBodOkfan7qF3blkxelXZIV+He23GsoN+UvJyorfcp5ytnDAahXbEqbx1YbMEu6odpS5sOifjiUqPiwaWaC369kY1v3/YrqMcIuNCumua23UWtw80jmQbNFbDcUvNc+kt3z2cofFdHlOb11hMm1kmwwt4zbfyu76fZX4g6eIHOjLMyD73mgQOM24ftOlYKaWgU4CXGqhJTmqMvISg9R+rRfgsdQ/Eqfl2u+G5d24WQTbttkpmjsD/TPL/1bNcRqoXtACBaCQcRBXMpG7BbG/oVZ+GqhsyJkaHusNqkP3vPkyRF3DLOjNARx/AjxKM57f7PCu+rd1F/Q5dm7jnvg8sp7Gq79SymfHT/VnZYYMAANxT28teAxLsOcxH0diaprAafmcQGg1bD7fja1NZHkrxqEwZA9fPIr7twsBD260NMQpDAk96E4daEG0gkVLpC0Dzk3Su4tgKmbUfhLD+1zdMex8GPeRkJFz7+IJhg/3P24zMlr74rNiROB+g262viBLr5wdsfos7jUKTIt3uP2OCpfHpL7N7mzQ3TLtoqy8miKY2SIWma48cjqafwSStFh3oFNkYYy0Rxchd2nMBXWsvjDrcFpe5Mc2WaF2t4C+FGLug4fqqxSdDvTA6plaNpd6ol5xO9H3+RUuQV9i9kiz0YA1B6U6M3mOhOFFVNG07NKLtxdVleztqIk/rXNz48= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM4PR12MB5229.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230001)(4636009)(366004)(83380400001)(8676002)(66476007)(2616005)(186003)(66946007)(508600001)(26005)(6486002)(8936002)(86362001)(6512007)(316002)(6506007)(53546011)(66556008)(31686004)(31696002)(15650500001)(36756003)(2906002)(5660300002)(38100700002)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?NWNtWjBXbzRFWlMvR2lNOVNCN2dLdk44VlVHeWtoU08wQU51Y3VYa3pGREVZ?= =?utf-8?B?eHJiMFpvUzlueUtTZ29nZkRoY0NRS0FWNzcvVEEzZ25SVGI0MStIc3JweTNh?= =?utf-8?B?MVNHa3RlRDd0MEJiWDZ1VnZPeUQyZXA3VWdLcGNra29jekozUWl1bzBLT0Jk?= =?utf-8?B?V1FjQ1NFQW4wa3Z0QW85blJJa1NQZXRmQ0hwVXVTS0JHSllVWnp6aUVaSVBP?= =?utf-8?B?SzVVL21QUXVlcm9NK01MT3A0NnNqa3RDd3BqMDl2NXhHTXp0anBGN2hPZk9P?= =?utf-8?B?U0JueVFXUHIzY1JwNW1LK05nRVBjYktaeDBnTVlIelhDUHdqN1NjTVRDNzY4?= =?utf-8?B?WG5mZmMydDBsOHBvbkVlSXdJVGdHc2RWUXZMMVIyZ3JNdmlxalR4cFJEODJi?= =?utf-8?B?OTFpMk1OM1dKRHB4SXZGMHZMZ2JIamFkYkM1cmpMeUd3S3poZlJMeTFiN1dx?= =?utf-8?B?emQ2aU9Qck9xM1dFbFY2SnNkVE5rK0htSTY2ZDRmc2pMZ1pWUFRERHNZUDA3?= =?utf-8?B?dkhETmUxd3VWdGhpOGxGNmZhSUpTUllsVjJNVWU2SmNjVXlWN2padGJzZnQy?= =?utf-8?B?NTVMZHo2Ym4rTThmSUJsWXI0RTJmcG9yeGRyelNxNjZPRXFwMjFabWJlQmNr?= =?utf-8?B?WjQvYTFBcUFMeGtMQU1BQkhYeGVIcjVaSHJkS2pmL2tpMXNwMzBVUGFsV0Rn?= =?utf-8?B?TEtOb2xZMUEycWdURnRIRWlZZEtqS1FZVk1YNXFicGdDTUpXam1WcDBMRlQ4?= =?utf-8?B?SVYvclA0bnJuRDV3NkN6NEQvR1RoT2RqZWdNY0ozcnk0OCtDS3BOYTA1elhK?= =?utf-8?B?YUFWZk9iV3JDTTltQnR4V3RBdW04YitFZjdKS3NPbERXc0NxOW9lZVVYWjN5?= =?utf-8?B?NmZ6ZGtvbTlHdGJEREswVGY2WlhWYndrTnh2eVkrRFpXMC9JQkd0dzFDbU91?= =?utf-8?B?V2hQdGp1d0dWTG8wdWVxSUF4Ym01elJhazgxMU9VMGFzTE9QejkyTWdIQjFn?= =?utf-8?B?bWh0YVNNREpTT3dWWWpCQWZjcDFmbGRiTjh3NEsvQXB1b1g0T1ZiRm1uQ3Jw?= =?utf-8?B?UFZXZkhvbi80NkVXdmpkUUYvQk1hN1Ivd1ZOR2VvTTRtQjZjWkNQMXZ5L1Zm?= =?utf-8?B?U01IbFJ3Rzd1YXhTVkd0OWpGOHBqQmdvU2dielhhMEVQRDRtSzByYjhxU2hi?= =?utf-8?B?LzBSaUFtc2FKSGNKcWt4VGI3ZVh3TVVMSG1zUUFXTU94L3JqOU1DaUpkZGtB?= =?utf-8?B?Y0hNTXR1ZUYrMERMdVZqcTk4VGtKdW45N2VOdDZ2dU8xR2dEQUtOdjRMb2Vu?= =?utf-8?B?c1hUZktiVFFKL0lvbmtFelM2TkoyNXV4UG8yL3ZHeEJVSnROaUtCczMxQmVw?= =?utf-8?B?RjZEcVZZRzNjOFRoSnhTZGFMQ0xSUnVDRlpBWW9JWmVrR3Mrc0d0L2ozNG96?= =?utf-8?B?R2U5a28yWEZsbmdPdGVLOHVuUXQ5YVNRK051QVRHa1EweVBXNkhIc0F1bUdO?= =?utf-8?B?ZjN1cDVYWEVLQWFEQkZsZWg5YytCRW00VVRxbDgxdFR0dXhoTWdkV1QwZmpV?= =?utf-8?B?VUpxUnFkTEovU2dOTmQxeUNLVjZweDZSNnppcnowQ1I3UXY3azE5NDBhdU0z?= =?utf-8?B?N2NNQjRsVm9HcGoxampMRURlMDJyaCtUNEFRcks5ZE4vOHFOdzdQcHlMS1Fm?= =?utf-8?B?Ni9DY2diV2hRRUptRkY0dDZORWJYZ282N1lWL1p4a0lxWTNMTDIyMUdwY3Zx?= =?utf-8?B?cWJQU3V1OFRmeTJZRUkzYklYbEhSWCswaTg0RzljaityYldGL3pxRS9YQkNP?= =?utf-8?B?SkNWaHhLejVJakpiOWZKalNCcEMwMURpRXUxNEUxSTFray84R21SclhGbU1z?= =?utf-8?B?KzVoMHh6ZStOSTBTTGhZRGRIR2xWdVoybnBIUHBoVHRRK2lIRWVvNHdEUHFk?= =?utf-8?B?UWFBSllrSnl3MWJwSW4rcUkvVlEwN3AzbkRPKy9VczN4c0ZreFhxbkNnZDk3?= =?utf-8?B?enVkOXBDSlRhdHVJa090aDZEWU5Ebk9sQjl4RGg4NzlTVmVha2p4Y2U0dkl6?= =?utf-8?B?SVNLVytQRkpqalh6MVNCNGlyYTFiWHFicTdzTWE1TFRkaThWcFRhN1BkRzlR?= =?utf-8?B?QTlaWnhpa0VXQmFMbkltSGVwZ2IxaFdiTGx5TWQ2dW1EK2dmVGh6cDdJU1dk?= =?utf-8?B?dzMyaVYzMVl6TFVUL0NSdVgxOWIzMVltT1Bzc2NSZkVTbVJzRTFiU05vMjRJ?= =?utf-8?B?ZGdHRk96VkRxWFhmNDdvUTFMb3g3Wk5TZ0RPbmFLUm5nd1lJVlFQNHhuWE9w?= =?utf-8?B?ckNYbmF0WWZzK2xobkJzYWpaSWw0QndnZHlhNTcvaE9VUXN3YXRUUT09?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4ff0ab7b-29bd-4f81-d645-08da34e50d88 X-MS-Exchange-CrossTenant-AuthSource: DM4PR12MB5229.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 May 2022 13:32:40.7291 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: oN5ltPGKJ22fUPN0tj//H0/Bl+5bZwOv0rGsmOi43BdmfprBJkNP4Rwk8BTMd9tm/gfSKT5OLA+42gUDNo4VPQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR12MB3163 Content-Language: en-US Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 5/13/22 08:22, Michael Roth wrote: > The Confidential Computing blob defined here is intended to match the > definition defined by linux guest kernel. Previously, both definitions > relied on natural alignment, but that relies on both OVMF and kernel > being compiled as 64-bit. While there aren't currently any plans to > enable SNP support for 32-bit compilations, the kernel definition has > since been updated to use explicit padding/reserved fields to avoid > this dependency. Update OVMF to match that definition. > > No functional changes (for currently-supported environments, at least). > > Signed-off-by: Michael Roth Minor nit comment below that can be ignored if desired. Reviewed-by: Tom Lendacky > --- > OvmfPkg/AmdSevDxe/AmdSevDxe.c | 2 ++ > OvmfPkg/Include/Guid/ConfidentialComputingSevSnpBlob.h | 6 ++++-- > 2 files changed, 6 insertions(+), 2 deletions(-) > > diff --git a/OvmfPkg/AmdSevDxe/AmdSevDxe.c b/OvmfPkg/AmdSevDxe/AmdSevDxe.c > index 662d3c4ccb..ee6d2528d9 100644 > --- a/OvmfPkg/AmdSevDxe/AmdSevDxe.c > +++ b/OvmfPkg/AmdSevDxe/AmdSevDxe.c > @@ -27,8 +27,10 @@ STATIC CONFIDENTIAL_COMPUTING_SNP_BLOB_LOCATION mSnpBootDxeTable = { > 0, > (UINT64)(UINTN)FixedPcdGet32 (PcdOvmfSnpSecretsBase), > FixedPcdGet32 (PcdOvmfSnpSecretsSize), > + 0, > (UINT64)(UINTN)FixedPcdGet32 (PcdOvmfCpuidBase), > FixedPcdGet32 (PcdOvmfCpuidSize), > + 0, > }; > > EFI_STATUS > diff --git a/OvmfPkg/Include/Guid/ConfidentialComputingSevSnpBlob.h b/OvmfPkg/Include/Guid/ConfidentialComputingSevSnpBlob.h > index b328310fd0..83620e31b8 100644 > --- a/OvmfPkg/Include/Guid/ConfidentialComputingSevSnpBlob.h > +++ b/OvmfPkg/Include/Guid/ConfidentialComputingSevSnpBlob.h > @@ -18,14 +18,16 @@ > { 0x85, 0x54, 0x93, 0xd7, 0x77, 0x91, 0x2d, 0x42 }, \ > } > > -typedef struct { > +typedef PACKED struct { > UINT32 Header; > UINT16 Version; > - UINT16 Reserved1; > + UINT16 Reserved; Not to be picky, but I would have left this as Reserved1 and then made the below entries Reserved2 and Reserved3. Thanks, Tom > UINT64 SecretsPhysicalAddress; > UINT32 SecretsSize; > + UINT32 Reserved1; > UINT64 CpuidPhysicalAddress; > UINT32 CpuidLSize; > + UINT32 Reserved2; > } CONFIDENTIAL_COMPUTING_SNP_BLOB_LOCATION; > > extern EFI_GUID gConfidentialComputingSevSnpBlobGuid;