public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: "Ni, Ray" <ray.ni@intel.com>
To: "devel@edk2.groups.io" <devel@edk2.groups.io>,
	"Wu, Jiaxin" <jiaxin.wu@intel.com>
Cc: "Dong, Eric" <eric.dong@intel.com>,
	"Zeng, Star" <star.zeng@intel.com>,
	Laszlo Ersek <lersek@redhat.com>,
	Gerd Hoffmann <kraxel@redhat.com>,
	"Kumar, Rahul R" <rahul.r.kumar@intel.com>
Subject: Re: [edk2-devel] [PATCH v4 3/5] UefiCpuPkg/PiSmmCpuDxeSmm: Consume SMM Base Hob for SmBase info
Date: Fri, 10 Feb 2023 12:34:14 +0000	[thread overview]
Message-ID: <MN6PR11MB8244FCEFD80976D01163276D8CDE9@MN6PR11MB8244.namprd11.prod.outlook.com> (raw)
In-Reply-To: <20230210060519.11100-4-jiaxin.wu@intel.com>

> +  ZeroMem (mSmmInitialized, sizeof (BOOLEAN) * mMaxNumberOfCpus);
> ...
> +  for (Index = 0; Index < mNumberOfCpus; Index++) {
> +    while (mSmmInitialized[Index] == FALSE) {
> +    }

Above code sets the BOOLEAN array to all FALSE.
Then polling on the array to be all TRUE.
We need to add "volatile" to the mSmmInitialized to tell
the compiler not to optimize the code but always check the
memory content.

A better way is to use compiler barrier but there is no
edk2 lib API to wrap it for different compilers
Let's just use "volatile" for now.

Thanks,
Ray

  parent reply	other threads:[~2023-02-10 12:34 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-02-10  6:05 [PATCH v4 0/5] Simplify SMM Relocation Process Wu, Jiaxin
2023-02-10  6:05 ` [PATCH v4 1/5] UefiCpuPkg/PiSmmCpuDxeSmm: Fix invalid InitializeMpSyncData call Wu, Jiaxin
2023-02-10  7:10   ` [edk2-devel] " Ni, Ray
2023-02-10  6:05 ` [PATCH v4 2/5] UefiCpuPkg/SmmBaseHob.h: Add SMM Base HOB Data Wu, Jiaxin
2023-02-10  7:14   ` Ni, Ray
2023-02-10  7:30     ` Wu, Jiaxin
2023-02-10  8:47     ` [edk2-devel] " Marvin Häuser
2023-02-10 11:23   ` Gerd Hoffmann
2023-02-10 11:56     ` Ni, Ray
2023-02-10 12:32       ` Gerd Hoffmann
2023-02-10 13:12         ` Ni, Ray
2023-02-13  2:37           ` Wu, Jiaxin
2023-02-10  6:05 ` [PATCH v4 3/5] UefiCpuPkg/PiSmmCpuDxeSmm: Consume SMM Base Hob for SmBase info Wu, Jiaxin
2023-02-10 10:00   ` [edk2-devel] " Marvin Häuser
2023-02-13  2:18     ` Wu, Jiaxin
2023-02-10 11:26   ` Gerd Hoffmann
2023-02-10 12:37     ` [edk2-devel] " Ni, Ray
2023-02-10 13:02       ` Gerd Hoffmann
2023-02-13  4:15         ` Wu, Jiaxin
2023-02-13  9:42           ` Ni, Ray
2023-02-10 12:34   ` Ni, Ray [this message]
2023-02-10  6:05 ` [PATCH v4 4/5] UefiCpuPkg/SmmCpuFeaturesLib: Skip SMBASE configuration Wu, Jiaxin
2023-02-10 12:39   ` Ni, Ray
2023-02-10  6:05 ` [PATCH v4 5/5] OvmfPkg/SmmCpuFeaturesLib: Check SmBase relocation supported or not Wu, Jiaxin
2023-02-10 11:28   ` Gerd Hoffmann
2023-02-10 12:56 ` [edk2-devel] [PATCH v4 0/5] Simplify SMM Relocation Process Ni, Ray
2023-02-13  2:19   ` Wu, Jiaxin

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-list 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=MN6PR11MB8244FCEFD80976D01163276D8CDE9@MN6PR11MB8244.namprd11.prod.outlook.com \
    --to=devel@edk2.groups.io \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox