From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pl1-f181.google.com (mail-pl1-f181.google.com [209.85.214.181]) by mx.groups.io with SMTP id smtpd.web10.14107.1677231565183837807 for ; Fri, 24 Feb 2023 01:39:25 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@ventanamicro.com header.s=google header.b=SeyNYe+J; spf=pass (domain: ventanamicro.com, ip: 209.85.214.181, mailfrom: sunilvl@ventanamicro.com) Received: by mail-pl1-f181.google.com with SMTP id z2so16246738plf.12 for ; Fri, 24 Feb 2023 01:39:25 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ventanamicro.com; s=google; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=Ap3zcyM9zBC4fvP63x7AWwKicOtxqTuJyOMcTqqBPQI=; b=SeyNYe+J5FXKyNNuMWKWpfd2XzFJd/U7HxaI8whAUWXMBwXgkSCWcDXoXDVFSuFFbs gVFTOpoO1H+8IopMoekCJ/XNbKknKjt2GtM821V0bV64sSIDw7ks26QN071nSCiaWVPU G+D5TMggHkjcwDsVosWHhI1rhJPBruoCfuZddk4ZkowqGonOUfXlT/uHqeIAgqDeitai fwrdMHgpAyh7CKGNX0Z+IQPWnzgm9pIHPJEjVOK03J/xaZ+2tBN1AbWNEGZimnr2s9KU UAXudINu3TBCz2+1zNgcYeBwNZIzLFVahmrXj7mSnPk1CvC22pwFTxJU3HbIECMn0llf Ki3Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=Ap3zcyM9zBC4fvP63x7AWwKicOtxqTuJyOMcTqqBPQI=; b=4PMxVBPty8fwqTNZJdE7kX4u2Frvone9N4LDmBHCvIRUBwAp4z8UBa8BqJjHrPHaIY 8p+yL4Hevnny3GPUvOmZCnkFqY1CTjAzCBTAazXl5r77nCF/OlYM8QFusDRWW8Ss6WnD qS4z+Ody978VnYP8+UrVrXRxSFyFb+5Zlp2ahjOZ907SOHuGNRowaZY5ddSqKFMn01NH rio2+UWP0udEmSeXy+NEaxfOO2G2b2L1ymJzy4b2uJQaTa6+IfRbLcu4NW73o9+N5eQO WlzMEr04+JSWlmheeRGba62bExevElKxak3zOlhh7R1y8zD0zvEEWGQXJ0cBIa/EuDUN CssQ== X-Gm-Message-State: AO0yUKVVGKvKIfhM/SZ+js8HPCcXmmDpFcLKCNZH1Vm18DI3Ql319eux R0mwwu85Wkem95RGZJKFxDOsOQGtCxgbxjp2 X-Google-Smtp-Source: AK7set+KFed8lUc4udUyI3u65YWtgYg2TtDy7uS7A8nomDk+6Ll638H24ueR1uCHYFEg0Jyf5xnZKQ== X-Received: by 2002:a17:902:cece:b0:19a:973b:b615 with SMTP id d14-20020a170902cece00b0019a973bb615mr20589732plg.36.1677231564346; Fri, 24 Feb 2023 01:39:24 -0800 (PST) Return-Path: Received: from kerodi.Dlink ([49.206.14.226]) by smtp.gmail.com with ESMTPSA id y14-20020a170902b48e00b00199536fbc6fsm5933145plr.280.2023.02.24.01.39.22 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 24 Feb 2023 01:39:24 -0800 (PST) From: "Sunil V L" To: devel@edk2.groups.io Cc: Andrei Warkentin , Ard Biesheuvel , Jiewen Yao , Jordan Justen , Gerd Hoffmann Subject: [PATCH 1/1] OvmfPkg/RiscVVirt: Add Stack HOB Date: Fri, 24 Feb 2023 15:09:20 +0530 Message-Id: <20230224093920.2753375-1-sunilvl@ventanamicro.com> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Currently, stack HOB is not created for the stack memory. This causes stack memory to be treated as free memory and any memory allocation which happens at this address causes random memory corruption. Fix this by creating the stack HOB which marks the memory as BS data. Cc: Andrei Warkentin Cc: Ard Biesheuvel Cc: Jiewen Yao Cc: Jordan Justen Cc: Gerd Hoffmann Signed-off-by: Sunil V L --- OvmfPkg/RiscVVirt/Sec/SecMain.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/OvmfPkg/RiscVVirt/Sec/SecMain.c b/OvmfPkg/RiscVVirt/Sec/SecMain.c index 73b9b21a67ba..adf73f2eb66c 100644 --- a/OvmfPkg/RiscVVirt/Sec/SecMain.c +++ b/OvmfPkg/RiscVVirt/Sec/SecMain.c @@ -55,6 +55,7 @@ SecStartup ( EFI_STATUS Status; UINT64 UefiMemoryBase; UINT64 StackBase; + UINT32 StackSize; // // Report Status Code to indicate entering SEC core @@ -71,9 +72,9 @@ SecStartup ( FirmwareContext.FlattenedDeviceTree = (UINT64)DeviceTreeAddress; SetFirmwareContextPointer (&FirmwareContext); - StackBase = (UINT64)FixedPcdGet32 (PcdOvmfSecPeiTempRamBase) + - FixedPcdGet32 (PcdOvmfSecPeiTempRamSize); - UefiMemoryBase = StackBase - SIZE_32MB; + StackBase = (UINT64)FixedPcdGet32 (PcdOvmfSecPeiTempRamBase); + StackSize = FixedPcdGet32 (PcdOvmfSecPeiTempRamSize); + UefiMemoryBase = StackBase + StackSize - SIZE_32MB; // Declare the PI/UEFI memory region HobList = HobConstructor ( @@ -86,6 +87,8 @@ SecStartup ( SecInitializePlatform (); + BuildStackHob (StackBase, StackSize); + // // Process all libraries constructor function linked to SecMain. // -- 2.34.1