From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by spool.mail.gandi.net (Postfix) with ESMTPS id 6AD11AC0BC4 for ; Fri, 9 Feb 2024 10:08:43 +0000 (UTC) DKIM-Signature: a=rsa-sha256; bh=ve/GUvM066MkEc9HgvdfOXeZfo5gqvHrro1C9RKOnxY=; c=relaxed/simple; d=groups.io; h=From:To:Cc:Subject:Date:Message-Id:MIME-Version:Precedence:List-Subscribe:List-Help:Sender:List-Id:Mailing-List:Delivered-To:Reply-To:List-Unsubscribe-Post:List-Unsubscribe:Content-Transfer-Encoding; s=20140610; t=1707473322; v=1; b=u52ni/smLtkfbrf577Wcq/OkQg1GWLl2J+cs112USvQqSuCaEYlRnrR+7/5cxa6cW7XpoVFx Act66C8HgpIWQiaE8Dr3+WGi8JofT+YQNDpJtjKoaqMbY/1TnJU3jduM+FwotZbKMtnGZut/+84 l7jb2lDx7JKCd8OiVocGDjvI= X-Received: by 127.0.0.2 with SMTP id WjJMYY7687511xx96MBRT3sY; Fri, 09 Feb 2024 02:08:42 -0800 X-Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.16]) by mx.groups.io with SMTP id smtpd.web11.9210.1707358804904182524 for ; Wed, 07 Feb 2024 18:20:05 -0800 X-IronPort-AV: E=McAfee;i="6600,9927,10977"; a="1284662" X-IronPort-AV: E=Sophos;i="6.05,252,1701158400"; d="scan'208";a="1284662" X-Received: from fmviesa003.fm.intel.com ([10.60.135.143]) by orvoesa108.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 07 Feb 2024 18:20:04 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.05,252,1701158400"; d="scan'208";a="6133183" X-Received: from zhouji3x-z238.sh.intel.com (HELO zj3-desktop.ccr.corp.intel.com) ([10.239.152.99]) by fmviesa003.fm.intel.com with ESMTP; 07 Feb 2024 18:20:02 -0800 From: Zhou Jianfeng To: devel@edk2.groups.io Cc: Zhou Jianfeng , Ray Ni , Laszlo Ersek , Rahul Kumar , Gerd Hoffmann Subject: [edk2-devel] [PATCH] UefiCpuPkg: code refine Date: Thu, 8 Feb 2024 10:19:57 +0800 Message-Id: <20240208021957.15302-1-jianfeng.zhou@intel.com> MIME-Version: 1.0 Precedence: Bulk 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,jianfeng.zhou@intel.com List-Unsubscribe-Post: List-Unsubscribe=One-Click List-Unsubscribe: X-Gm-Message-State: PfdFlNIDCSFbXNMZv5paBClzx7686176AA= Content-Transfer-Encoding: quoted-printable X-GND-Status: LEGIT Authentication-Results: spool.mail.gandi.net; dkim=pass header.d=groups.io header.s=20140610 header.b="u52ni/sm"; dmarc=fail reason="SPF not aligned (relaxed), DKIM not aligned (relaxed)" header.from=intel.com (policy=none); spf=pass (spool.mail.gandi.net: domain of bounce@groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce@groups.io Changes: 1) add volatile to 64bit variable to avoid being tore by compiler. 2) add OUT for parameter that might be changed. Signed-off-by: Zhou Jianfeng Cc: Ray Ni Cc: Laszlo Ersek Cc: Rahul Kumar Cc: Gerd Hoffmann --- .../Library/CpuPageTableLib/CpuPageTableMap.c | 38 +++++++++---------- 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/UefiCpuPkg/Library/CpuPageTableLib/CpuPageTableMap.c b/UefiCpu= Pkg/Library/CpuPageTableLib/CpuPageTableMap.c index ae4caf8dfe..d96ea5984c 100644 --- a/UefiCpuPkg/Library/CpuPageTableLib/CpuPageTableMap.c +++ b/UefiCpuPkg/Library/CpuPageTableLib/CpuPageTableMap.c @@ -20,10 +20,10 @@ **/=0D VOID=0D PageTableLibSetPte4K (=0D - IN IA32_PTE_4K *Pte4K,=0D - IN UINT64 Offset,=0D - IN IA32_MAP_ATTRIBUTE *Attribute,=0D - IN IA32_MAP_ATTRIBUTE *Mask=0D + IN OUT IA32_PTE_4K *Pte4K,=0D + IN UINT64 Offset,=0D + IN IA32_MAP_ATTRIBUTE *Attribute,=0D + IN IA32_MAP_ATTRIBUTE *Mask=0D )=0D {=0D IA32_PTE_4K LocalPte4K;=0D @@ -78,7 +78,7 @@ PageTableLibSetPte4K ( }=0D =0D if (Pte4K->Uint64 !=3D LocalPte4K.Uint64) {=0D - Pte4K->Uint64 =3D LocalPte4K.Uint64;=0D + *(volatile UINT64 *)&(Pte4K->Uint64) =3D LocalPte4K.Uint64;=0D }=0D }=0D =0D @@ -94,10 +94,10 @@ PageTableLibSetPte4K ( **/=0D VOID=0D PageTableLibSetPleB (=0D - IN IA32_PAGE_LEAF_ENTRY_BIG_PAGESIZE *PleB,=0D - IN UINT64 Offset,=0D - IN IA32_MAP_ATTRIBUTE *Attribute,=0D - IN IA32_MAP_ATTRIBUTE *Mask=0D + IN OUT IA32_PAGE_LEAF_ENTRY_BIG_PAGESIZE *PleB,=0D + IN UINT64 Offset,=0D + IN IA32_MAP_ATTRIBUTE *Attribute,=0D + IN IA32_MAP_ATTRIBUTE *Mask=0D )=0D {=0D IA32_PAGE_LEAF_ENTRY_BIG_PAGESIZE LocalPleB;=0D @@ -154,7 +154,7 @@ PageTableLibSetPleB ( }=0D =0D if (PleB->Uint64 !=3D LocalPleB.Uint64) {=0D - PleB->Uint64 =3D LocalPleB.Uint64;=0D + *(volatile UINT64 *)&(PleB->Uint64) =3D LocalPleB.Uint64;=0D }=0D }=0D =0D @@ -171,11 +171,11 @@ PageTableLibSetPleB ( **/=0D VOID=0D PageTableLibSetPle (=0D - IN UINTN Level,=0D - IN IA32_PAGING_ENTRY *Ple,=0D - IN UINT64 Offset,=0D - IN IA32_MAP_ATTRIBUTE *Attribute,=0D - IN IA32_MAP_ATTRIBUTE *Mask=0D + IN UINTN Level,=0D + IN OUT IA32_PAGING_ENTRY *Ple,=0D + IN UINT64 Offset,=0D + IN IA32_MAP_ATTRIBUTE *Attribute,=0D + IN IA32_MAP_ATTRIBUTE *Mask=0D )=0D {=0D if (Level =3D=3D 1) {=0D @@ -195,9 +195,9 @@ PageTableLibSetPle ( **/=0D VOID=0D PageTableLibSetPnle (=0D - IN IA32_PAGE_NON_LEAF_ENTRY *Pnle,=0D - IN IA32_MAP_ATTRIBUTE *Attribute,=0D - IN IA32_MAP_ATTRIBUTE *Mask=0D + IN OUT IA32_PAGE_NON_LEAF_ENTRY *Pnle,=0D + IN IA32_MAP_ATTRIBUTE *Attribute,=0D + IN IA32_MAP_ATTRIBUTE *Mask=0D )=0D {=0D IA32_PAGE_NON_LEAF_ENTRY LocalPnle;=0D @@ -231,7 +231,7 @@ PageTableLibSetPnle ( LocalPnle.Bits.WriteThrough =3D 0;=0D LocalPnle.Bits.CacheDisabled =3D 0;=0D if (Pnle->Uint64 !=3D LocalPnle.Uint64) {=0D - Pnle->Uint64 =3D LocalPnle.Uint64;=0D + *(volatile UINT64 *)&(Pnle->Uint64) =3D LocalPnle.Uint64;=0D }=0D }=0D =0D -- 2.31.1.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#115296): https://edk2.groups.io/g/devel/message/115296 Mute This Topic: https://groups.io/mt/104256295/7686176 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io] -=-=-=-=-=-=-=-=-=-=-=-