public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: "Laszlo Ersek" <lersek@redhat.com>
To: devel@edk2.groups.io, anthony.perard@citrix.com
Cc: Jordan Justen <jordan.l.justen@intel.com>,
	Ard Biesheuvel <ard.biesheuvel@linaro.org>,
	Julien Grall <julien.grall@arm.com>,
	xen-devel@lists.xenproject.org
Subject: Re: [edk2-devel] [PATCH v2 10/31] OvmfPkg/XenPlatformPei: Detect OVMF_INFO from hvmloader
Date: Thu, 11 Apr 2019 13:47:01 +0200	[thread overview]
Message-ID: <10573b3b-dfb8-c9e3-fb0c-6ea6f07586de@redhat.com> (raw)
In-Reply-To: <20190409110844.14746-11-anthony.perard@citrix.com>

On 04/09/19 13:08, Anthony PERARD wrote:
> This struct is only useful to retrieve the E820 table. The

(1) please replace "this struct" with the name of the struct.

> mXenHvmloaderInfo isn't used yet, but will be use in a further patch to
> retrieve the E820 table.
> 
> Also remove the unused pointer from the XenInfo HOB as that information
> is only useful in the XenPlatformPei.
> 
> Contributed-under: TianoCore Contribution Agreement 1.1
> Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
> ---
>  OvmfPkg/Include/Guid/XenInfo.h |  4 ----
>  OvmfPkg/PlatformPei/Xen.c      |  3 ---
>  OvmfPkg/XenPlatformPei/Xen.c   | 23 ++++++++++++++++++--
>  3 files changed, 21 insertions(+), 9 deletions(-)
> 
> diff --git a/OvmfPkg/Include/Guid/XenInfo.h b/OvmfPkg/Include/Guid/XenInfo.h
> index d512b0b63f..5d4579f244 100644
> --- a/OvmfPkg/Include/Guid/XenInfo.h
> +++ b/OvmfPkg/Include/Guid/XenInfo.h
> @@ -24,10 +24,6 @@ typedef struct {
>    ///
>    VOID *HyperPages;
>    ///
> -  /// Location of the hvm_info page.
> -  ///
> -  VOID *HvmInfo;
> -  ///
>    /// Hypervisor major version.
>    ///
>    UINT16 VersionMajor;
> diff --git a/OvmfPkg/PlatformPei/Xen.c b/OvmfPkg/PlatformPei/Xen.c
> index ab38f97a67..75181be2fd 100644
> --- a/OvmfPkg/PlatformPei/Xen.c
> +++ b/OvmfPkg/PlatformPei/Xen.c
> @@ -104,9 +104,6 @@ XenConnect (
>    mXenInfo.VersionMajor = (UINT16)(XenVersion >> 16);
>    mXenInfo.VersionMinor = (UINT16)(XenVersion & 0xFFFF);
>  
> -  /* TBD: Locate hvm_info and reserve it away. */
> -  mXenInfo.HvmInfo = NULL;
> -
>    BuildGuidDataHob (
>      &gEfiXenInfoGuid,
>      &mXenInfo,
> diff --git a/OvmfPkg/XenPlatformPei/Xen.c b/OvmfPkg/XenPlatformPei/Xen.c
> index 7c82e5b69b..a866641b67 100644
> --- a/OvmfPkg/XenPlatformPei/Xen.c
> +++ b/OvmfPkg/XenPlatformPei/Xen.c
> @@ -39,6 +39,12 @@ STATIC UINT32 mXenLeaf = 0;
>  
>  EFI_XEN_INFO mXenInfo;
>  
> +//
> +// Location of the firmware info struct setup by hvmloader.
> +// Only the E820 table is used by OVMF.
> +//
> +EFI_XEN_OVMF_INFO *mXenHvmloaderInfo;
> +
>  /**
>    Returns E820 map provided by Xen
>  
> @@ -84,6 +90,8 @@ XenConnect (
>    UINT32 TransferReg;
>    UINT32 TransferPages;
>    UINT32 XenVersion;
> +  EFI_XEN_OVMF_INFO *Info;
> +  CHAR8 Sig[sizeof (Info->Signature) + 1];
>  
>    AsmCpuid (XenLeaf + 2, &TransferPages, &TransferReg, NULL, NULL);
>    mXenInfo.HyperPages = AllocatePages (TransferPages);
> @@ -103,8 +111,19 @@ XenConnect (
>    mXenInfo.VersionMajor = (UINT16)(XenVersion >> 16);
>    mXenInfo.VersionMinor = (UINT16)(XenVersion & 0xFFFF);
>  
> -  /* TBD: Locate hvm_info and reserve it away. */
> -  mXenInfo.HvmInfo = NULL;
> +  //
> +  // Check if there are information left by hvmloader
> +  //
> +
> +  Info = (EFI_XEN_OVMF_INFO *)(UINTN) OVMF_INFO_PHYSICAL_ADDRESS;
> +  // Copy the signature, and make it null-terminated.

(2) Please use the following style:

  //
  // Copy the signature, and make it null-terminated.
  //

> +  AsciiStrnCpyS(Sig, sizeof (Sig),
> +                (CHAR8 *) &Info->Signature, sizeof (Info->Signature));

(3) This should be indented as:

  AsciiStrnCpyS (
    Sig,
    sizeof (Sig),
    (CHAR8 *) &Info->Signature,
    sizeof (Info->Signature)
    );

or:

  AsciiStrnCpyS (Sig, sizeof (Sig), (CHAR8 *) &Info->Signature,
    sizeof (Info->Signature));

(note the whitespace before the opening paren, after the function
designator)


I'm not checking the correctness of the parameters, for now.

With (1) and (3) addressed:

Acked-by: Laszlo Ersek <lersek@redhat.com>

If you can, please verify the comment style and the indentation style in
the other patches too.

Thanks
Laszlo

> +  if (AsciiStrCmp (Sig, "XenHVMOVMF") == 0) {
> +    mXenHvmloaderInfo = Info;
> +  } else {
> +    mXenHvmloaderInfo = NULL;
> +  }
>  
>    BuildGuidDataHob (
>      &gEfiXenInfoGuid,
> 


  reply	other threads:[~2019-04-11 11:47 UTC|newest]

Thread overview: 84+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-04-09 11:08 [PATCH v2 00/31] Specific platform to run OVMF in Xen PVH and HVM guests Anthony PERARD
2019-04-09 11:08 ` [PATCH v2 01/31] OvmfPkg/ResetSystemLib: Add missing dependency on PciLib Anthony PERARD
2019-04-10  8:48   ` [edk2-devel] " Laszlo Ersek
2019-04-10  9:16     ` Jordan Justen
2019-04-09 11:08 ` [PATCH v2 02/31] OvmfPkg: Create platform XenOvmf Anthony PERARD
2019-04-10  9:32   ` [edk2-devel] " Laszlo Ersek
2019-04-15 10:53     ` Anthony PERARD
2019-04-10  9:48   ` Jordan Justen
2019-04-10 14:27     ` Laszlo Ersek
2019-04-10 16:27       ` Ard Biesheuvel
2019-04-10 18:37       ` Jordan Justen
2019-04-11  7:34         ` Laszlo Ersek
2019-04-09 11:08 ` [PATCH v2 03/31] OvmfPkg: Introduce XenResetVector Anthony PERARD
2019-04-10  9:46   ` [edk2-devel] " Laszlo Ersek
2019-04-09 11:08 ` [PATCH v2 04/31] OvmfPkg: Introduce XenPlatformPei Anthony PERARD
2019-04-10 10:37   ` [edk2-devel] " Laszlo Ersek
2019-04-09 11:08 ` [PATCH v2 05/31] OvmfPkg/XenOvmf: Creating an ELF header Anthony PERARD
2019-04-11 10:43   ` [edk2-devel] " Laszlo Ersek
2019-04-09 11:08 ` [PATCH v2 06/31] OvmfPkg/XenResetVector: Add new entry point for Xen PVH Anthony PERARD
2019-04-11 10:49   ` [edk2-devel] " Laszlo Ersek
2019-04-11 12:52   ` [Xen-devel] " Andrew Cooper
2019-04-15 11:25     ` Anthony PERARD
2019-04-15 13:28       ` Andrew Cooper
2019-04-09 11:08 ` [PATCH v2 07/31] OvmfPkg/XenResetVector: Saving start of day pointer for PVH guests Anthony PERARD
2019-04-11 11:09   ` [edk2-devel] " Laszlo Ersek
2019-04-09 11:08 ` [PATCH v2 08/31] OvmfPkg/XenResetVector: Allow to jumpstart from either hvmloader or PVH Anthony PERARD
2019-04-11 11:19   ` [edk2-devel] " Laszlo Ersek
2019-04-09 11:08 ` [PATCH v2 09/31] OvmfPkg/XenOvmf: use a TimerLib instance that depends only on the CPU Anthony PERARD
2019-04-11 11:25   ` [edk2-devel] " Laszlo Ersek
2019-04-11 11:33     ` Laszlo Ersek
2019-04-09 11:08 ` [PATCH v2 10/31] OvmfPkg/XenPlatformPei: Detect OVMF_INFO from hvmloader Anthony PERARD
2019-04-11 11:47   ` Laszlo Ersek [this message]
2019-04-11 11:47     ` [edk2-devel] " Laszlo Ersek
2019-04-09 11:08 ` [PATCH v2 11/31] OvmfPkg/XenPlatformPei: Use mXenHvmloaderInfo to get E820 Anthony PERARD
2019-04-11 11:49   ` [edk2-devel] " Laszlo Ersek
2019-04-09 11:08 ` [PATCH v2 12/31] OvmfPkg/XenPlatformPei: Grab RSDP from PVH guest start of day struct Anthony PERARD
2019-04-11 11:58   ` [edk2-devel] " Laszlo Ersek
2019-04-09 11:08 ` [PATCH v2 13/31] OvmfPkg/Library/XenPlatformLib: New library Anthony PERARD
2019-04-11 12:10   ` [edk2-devel] " Laszlo Ersek
2019-04-09 11:08 ` [PATCH v2 14/31] OvmfPkg/AcpiPlatformDxe: Use PVH RSDP if exist Anthony PERARD
2019-04-11 12:20   ` [edk2-devel] " Laszlo Ersek
2019-04-11 12:23     ` Laszlo Ersek
2019-04-11 12:31       ` Laszlo Ersek
2019-04-09 11:08 ` [PATCH v2 15/31] OvmfPkg/XenHypercallLib: Enable it in PEIM Anthony PERARD
2019-04-12  9:07   ` [edk2-devel] " Laszlo Ersek
2019-04-09 11:08 ` [PATCH v2 16/31] OvmfPkg/XenPlatformPei: Introduce XenHvmloaderDetected Anthony PERARD
2019-04-12  9:08   ` [edk2-devel] " Laszlo Ersek
2019-04-09 11:08 ` [PATCH v2 17/31] OvmfPkg/XenPlatformPei: Reserve hvmloader's memory only when it as runned Anthony PERARD
2019-04-12  9:09   ` [edk2-devel] " Laszlo Ersek
2019-04-09 11:08 ` [PATCH v2 18/31] OvmfPkg/XenPlatformPei: Setup HyperPages earlier Anthony PERARD
2019-04-12  9:17   ` [edk2-devel] " Laszlo Ersek
2019-04-09 11:08 ` [PATCH v2 19/31] OvmfPkg/XenPlatformPei: Introduce XenPvhDetected Anthony PERARD
2019-04-12  9:20   ` [edk2-devel] " Laszlo Ersek
2019-04-09 11:08 ` [PATCH v2 20/31] OvmfPkg: Import XENMEM_memory_map hypercall to Xen/memory.h Anthony PERARD
2019-04-12  9:22   ` [edk2-devel] " Laszlo Ersek
2019-04-09 11:08 ` [PATCH v2 21/31] OvmfPkg/XenPlatformPei: Get E820 table via hypercall Anthony PERARD
2019-04-12  9:33   ` [edk2-devel] " Laszlo Ersek
2019-04-12  9:45     ` [Xen-devel] " Andrew Cooper
2019-04-09 11:08 ` [PATCH v2 22/31] OvmfPkg/XenPlatformPei: Rework memory detection Anthony PERARD
2019-04-12 11:15   ` [edk2-devel] " Laszlo Ersek
2019-04-15 13:42     ` Anthony PERARD
2019-04-09 11:08 ` [PATCH v2 23/31] OvmfPkg/XenPlatformPei: Reserve VGA memory region, to boot Linux Anthony PERARD
2019-04-15 13:21   ` [edk2-devel] " Laszlo Ersek
2019-04-09 11:08 ` [PATCH v2 24/31] OvmfPkg/XenPlatformPei: Ignore missing PCI Host Bridge on Xen PVH Anthony PERARD
2019-04-15 13:29   ` [edk2-devel] " Laszlo Ersek
2019-04-15 13:33     ` Laszlo Ersek
2019-04-15 13:37   ` [Xen-devel] " Andrew Cooper
2019-04-09 11:08 ` [PATCH v2 25/31] OvmfPkg/PlatformBootManagerLib: Handle the absence of PCI bus " Anthony PERARD
2019-04-15 13:33   ` [edk2-devel] " Laszlo Ersek
2019-04-15 13:49     ` Laszlo Ersek
2019-04-15 14:40       ` Anthony PERARD
2019-04-15 17:57         ` Laszlo Ersek
2019-04-09 11:08 ` [PATCH v2 26/31] OvmfPkg/XenOvmf: Override PcdFSBClock to Xen vLAPIC timer frequency Anthony PERARD
2019-04-15 13:52   ` [edk2-devel] " Laszlo Ersek
2019-04-09 11:08 ` [PATCH v2 27/31] OvmfPkg/XenOvmf: Introduce XenTimerDxe Anthony PERARD
2019-04-15 14:07   ` [edk2-devel] " Laszlo Ersek
2019-04-09 11:08 ` [PATCH v2 28/31] OvmfPkg/PlatformBootManagerLib: Use a Xen console for ConOut/ConIn Anthony PERARD
2019-04-15 14:56   ` [edk2-devel] " Laszlo Ersek
2019-04-09 11:08 ` [PATCH v2 29/31] OvmfPkg: Introduce XenIoPvhDxe to initialize Grant Tables Anthony PERARD
2019-04-16  8:49   ` [edk2-devel] " Laszlo Ersek
2019-04-09 11:08 ` [PATCH v2 30/31] OvmfPkg: Move XenRealTimeClockLib from ArmVirtPkg Anthony PERARD
2019-04-16  8:53   ` [edk2-devel] " Laszlo Ersek
2019-04-09 11:08 ` [PATCH v2 31/31] OvmfPkg/XenOvmf: use RealTimeClockRuntimeDxe from EmbeddedPkg Anthony PERARD
2019-04-16  8:58   ` [edk2-devel] " Laszlo Ersek

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=10573b3b-dfb8-c9e3-fb0c-6ea6f07586de@redhat.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