From nobody Mon Sep 16 19:46:16 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) client-ip=66.175.222.108; envelope-from=bounce+27952+101729+1787277+3901457@groups.io; helo=mail02.groups.io; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+101729+1787277+3901457@groups.io; dmarc=fail(p=none dis=none) header.from=intel.com ARC-Seal: i=1; a=rsa-sha256; t=1679637642; cv=none; d=zohomail.com; s=zohoarc; b=N2NSbvTaa29Ar74+0xsIpjgadmlezsFe8XlL+q5wfpbM0XEE4NRZI+pGMLyBkiOUjHPUGUj+G9BpR0+CrQLBaDlPopvYx0Oni4AAZjDNGaLYP8Fk8kdimtc0IUU4g5jk9b0BkDF2gP8miwLde6hcYrqjWtsy+/vj5QkgMlblyCA= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1679637642; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:References:Sender:Subject:To; bh=inrirUoagfOUhvh0xBkuD3xZf5O635FGUCx1o093tu8=; b=S+AebMzYzDRA0KhmTO7IZO3qgVGpEj41nBjm+7XFVRgDSk9ymMvs1h7I7k3MTZCrQ+HzKnGZuCSMxfHy8Gbs5KSm0AFODMhr7bjvCpHxeYKDsjrBi8sBfC42Rge8tSS5/t+In7BegkKpMj/HTyeffVVnf06g/BmSuw+v2QnVuBM= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+101729+1787277+3901457@groups.io; dmarc=fail header.from= (p=none dis=none) Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1679637642404266.2799170423831; Thu, 23 Mar 2023 23:00:42 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id Owa9YY1788612xguCaUfKSGA; Thu, 23 Mar 2023 23:00:42 -0700 X-Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by mx.groups.io with SMTP id smtpd.web10.95186.1679637639945874708 for ; Thu, 23 Mar 2023 23:00:39 -0700 X-IronPort-AV: E=McAfee;i="6600,9927,10658"; a="320093851" X-IronPort-AV: E=Sophos;i="5.98,286,1673942400"; d="scan'208";a="320093851" X-Received: from fmsmga005.fm.intel.com ([10.253.24.32]) by fmsmga107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 23 Mar 2023 23:00:35 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10658"; a="1012122022" X-IronPort-AV: E=Sophos;i="5.98,286,1673942400"; d="scan'208";a="1012122022" X-Received: from shwdeopenlab702.ccr.corp.intel.com ([10.239.55.92]) by fmsmga005-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 23 Mar 2023 23:00:33 -0700 From: "duntan" To: devel@edk2.groups.io Cc: Eric Dong , Ray Ni , Rahul Kumar , Gerd Hoffmann Subject: [edk2-devel] [Patch V5 02/22] UefiCpuPkg/CpuPageTableLib: Add check for input Length Date: Fri, 24 Mar 2023 14:00:00 +0800 Message-Id: <20230324060020.940-3-dun.tan@intel.com> In-Reply-To: <20230324060020.940-1-dun.tan@intel.com> References: <20230324060020.940-1-dun.tan@intel.com> MIME-Version: 1.0 Precedence: Bulk List-Unsubscribe: List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,dun.tan@intel.com X-Gm-Message-State: 5OPVoSzsK8HPMSKscvVZuduex1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1679637642; bh=DZFEDfCPfobQ3S/iuQaNctJdb0wJ6Sw1Wva3/enxaV0=; h=Cc:Date:From:Reply-To:Subject:To; b=oD0Q0i5DuVhI2IXK0BaMeCGFxmDPr9E+Y7L1GWN8ayoqIQokTWhUkw0GvoXKrMkrRvl wxqeOM3aGw9NtXNfyEsG10+27J0ulGiDLI5+Ep3A5sTGf6yHY+F9rYaTVd9GnWf+tNxE6 eOk7mt+xQe3v08BUeq/TyvBB56THLxjz78I= X-ZohoMail-DKIM: pass (identity @groups.io) X-ZM-MESSAGEID: 1679637643834100019 Content-Type: text/plain; charset="utf-8" Add check for input Length in PageTableMap (). Return RETURN_SUCCESS when input Length is 0. Signed-off-by: Dun Tan Cc: Eric Dong Reviewed-by: Ray Ni Cc: Rahul Kumar Tested-by: Gerd Hoffmann Acked-by: Gerd Hoffmann --- UefiCpuPkg/Include/Library/CpuPageTableLib.h | 4 ++-- UefiCpuPkg/Library/CpuPageTableLib/CpuPageTableMap.c | 6 +++++- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/UefiCpuPkg/Include/Library/CpuPageTableLib.h b/UefiCpuPkg/Incl= ude/Library/CpuPageTableLib.h index 2dc9b7d18e..5f44ece548 100644 --- a/UefiCpuPkg/Include/Library/CpuPageTableLib.h +++ b/UefiCpuPkg/Include/Library/CpuPageTableLib.h @@ -1,7 +1,7 @@ /** @file Public include file for PageTableLib library. =20 - Copyright (c) 2022, Intel Corporation. All rights reserved.
+ Copyright (c) 2022 - 2023, Intel Corporation. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent =20 **/ @@ -81,7 +81,7 @@ typedef enum { @retval RETURN_BUFFER_TOO_SMALL The buffer is too small for page table= creation/updating. BufferSize is updated to indicate the = expected buffer size. Caller may still get RETURN_BUFFER_TOO= _SMALL with the new BufferSize. - @retval RETURN_SUCCESS PageTable is created/updated successfu= lly. + @retval RETURN_SUCCESS PageTable is created/updated successfu= lly or the input Length is 0. **/ RETURN_STATUS EFIAPI diff --git a/UefiCpuPkg/Library/CpuPageTableLib/CpuPageTableMap.c b/UefiCpu= Pkg/Library/CpuPageTableLib/CpuPageTableMap.c index 52535e5a8d..218068a3e1 100644 --- a/UefiCpuPkg/Library/CpuPageTableLib/CpuPageTableMap.c +++ b/UefiCpuPkg/Library/CpuPageTableLib/CpuPageTableMap.c @@ -544,7 +544,7 @@ PageTableLibMapInLevel ( @retval RETURN_BUFFER_TOO_SMALL The buffer is too small for page table= creation/updating. BufferSize is updated to indicate the = expected buffer size. Caller may still get RETURN_BUFFER_TOO= _SMALL with the new BufferSize. - @retval RETURN_SUCCESS PageTable is created/updated successfu= lly. + @retval RETURN_SUCCESS PageTable is created/updated successfu= lly or the input Length is 0. **/ RETURN_STATUS EFIAPI @@ -567,6 +567,10 @@ PageTableMap ( IA32_PAGE_LEVEL MaxLeafLevel; IA32_MAP_ATTRIBUTE ParentAttribute; =20 + if (Length =3D=3D 0) { + return RETURN_SUCCESS; + } + if ((PagingMode =3D=3D Paging32bit) || (PagingMode =3D=3D PagingPae) || = (PagingMode >=3D PagingModeMax)) { // // 32bit paging is never supported. --=20 2.31.1.windows.1 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#101729): https://edk2.groups.io/g/devel/message/101729 Mute This Topic: https://groups.io/mt/97818224/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-