public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: "Kinney, Michael D" <michael.d.kinney@intel.com>
To: Ard Biesheuvel <ard.biesheuvel@linaro.org>,
	"edk2-devel@lists.01.org" <edk2-devel@lists.01.org>,
	"Kinney, Michael D" <michael.d.kinney@intel.com>
Cc: "agraf@suse.de" <agraf@suse.de>,
	"Zimmer, Vincent" <vincent.zimmer@intel.com>,
	"Richardson, Brian" <brian.richardson@intel.com>,
	 Andrew Fish <afish@apple.com>, Laszlo Ersek <lersek@redhat.com>,
	"Leif Lindholm" <leif.lindholm@linaro.org>,
	"Zeng, Star" <star.zeng@intel.com>,
	"Dong, Eric" <eric.dong@intel.com>,
	"Ni, Ruiyu" <ruiyu.ni@intel.com>
Subject: Re: [PATCH 0/4] MdeModulePkg: add support for dispatching foreign arch PE/COFF images
Date: Wed, 12 Sep 2018 15:10:57 +0000	[thread overview]
Message-ID: <E92EE9817A31E24EB0585FDF735412F5B8AD6853@ORSMSX113.amr.corp.intel.com> (raw)
In-Reply-To: <20180912132151.4258-1-ard.biesheuvel@linaro.org>

Ard,

I think there may be a lot of assumptions in this
proposal that are not documented.  

I do not see any description of how an image is 
started or how calls between native code and emulated
code are handled.

Also, are multiple emulated CPUs supported?  It looks
like there can only be one instance of this new protocol.

Can you please provide more detailed comments for the
functions in the new protocol and document the assumptions
and known limitation in the header?

>From one perspective, EBC is an emulated instruction set.
Would it make sense to have EBC be one of the emulated 
CPU types that can be plugged in?

Thanks,

Mike

> -----Original Message-----
> From: Ard Biesheuvel [mailto:ard.biesheuvel@linaro.org]
> Sent: Wednesday, September 12, 2018 6:22 AM
> To: edk2-devel@lists.01.org
> Cc: agraf@suse.de; Ard Biesheuvel
> <ard.biesheuvel@linaro.org>; Zimmer, Vincent
> <vincent.zimmer@intel.com>; Richardson, Brian
> <brian.richardson@intel.com>; Kinney, Michael D
> <michael.d.kinney@intel.com>; Andrew Fish
> <afish@apple.com>; Laszlo Ersek <lersek@redhat.com>;
> Leif Lindholm <leif.lindholm@linaro.org>; Zeng, Star
> <star.zeng@intel.com>; Dong, Eric <eric.dong@intel.com>;
> Ni, Ruiyu <ruiyu.ni@intel.com>
> Subject: [PATCH 0/4] MdeModulePkg: add support for
> dispatching foreign arch PE/COFF images
> 
> Add the basic plumbing to DXE core, the PCI bus driver
> and the boot manager
> to allow PE/COFF images to be dispatched that target an
> architecture that is
> not native for the platform, but which is supported by
> an emulator.
> 
> One implementation of such an emulator can be found
> here:
> https://github.com/ardbiesheuvel/X86EmulatorPkg
> 
> Cc: Zimmer Vincent <vincent.zimmer@intel.com>
> Cc: Brian Richardson <brian.richardson@intel.com>
> Cc: Michael D Kinney <michael.d.kinney@intel.com>
> Cc: Andrew Fish <afish@apple.com>
> Cc: Laszlo Ersek <lersek@redhat.com>
> Cc: Leif Lindholm <leif.lindholm@linaro.org>
> Cc: Star Zeng <star.zeng@intel.com>
> Cc: Eric Dong <eric.dong@intel.com>
> Cc: Ruiyu Ni <ruiyu.ni@intel.com>
> 
> Ard Biesheuvel (4):
>   MdeModulePkg: introduce PE/COFF image emulator
> protocol
>   MdeModulePkg/DxeCore: invoke the emulator protocol for
> foreign images
>   MdeModulePkg/PciBusDxe: invoke PE/COFF emulator for
> foreign option
>     ROMs
>   MdeModulePkg/UefiBootManagerLib: allow foreign
> Driver#### images
> 
>  MdeModulePkg/Bus/Pci/PciBusDxe/PciBus.h       |  1 +
>  MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf  |  1 +
>  .../Bus/Pci/PciBusDxe/PciOptionRomSupport.c   | 16
> +++++-
>  MdeModulePkg/Core/Dxe/DxeMain.h               |  3 ++
>  MdeModulePkg/Core/Dxe/DxeMain.inf             |  1 +
>  MdeModulePkg/Core/Dxe/Image/Image.c           | 39
> +++++++++++---
>  .../Include/Protocol/PeCoffImageEmulator.h    | 51
> +++++++++++++++++++
>  .../Library/UefiBootManagerLib/BmLoadOption.c | 26
> +++++++++-
>  .../Library/UefiBootManagerLib/InternalBm.h   |  1 +
>  .../UefiBootManagerLib/UefiBootManagerLib.inf |  1 +
>  MdeModulePkg/MdeModulePkg.dec                 |  4 ++
>  11 files changed, 136 insertions(+), 8 deletions(-)
>  create mode 100644
> MdeModulePkg/Include/Protocol/PeCoffImageEmulator.h
> 
> --
> 2.17.1



  parent reply	other threads:[~2018-09-12 15:11 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-09-12 13:21 [PATCH 0/4] MdeModulePkg: add support for dispatching foreign arch PE/COFF images Ard Biesheuvel
2018-09-12 13:21 ` [PATCH 1/4] MdeModulePkg: introduce PE/COFF image emulator protocol Ard Biesheuvel
2018-09-13 10:05   ` Zeng, Star
2018-09-13 10:36     ` Ard Biesheuvel
2018-09-12 13:21 ` [PATCH 2/4] MdeModulePkg/DxeCore: invoke the emulator protocol for foreign images Ard Biesheuvel
2018-09-13 10:23   ` Zeng, Star
2018-09-13 10:37     ` Ard Biesheuvel
2018-09-12 13:21 ` [PATCH 3/4] MdeModulePkg/PciBusDxe: invoke PE/COFF emulator for foreign option ROMs Ard Biesheuvel
2018-09-13 10:24   ` Zeng, Star
2018-09-13 10:46     ` Ard Biesheuvel
2018-09-12 13:21 ` [PATCH 4/4] MdeModulePkg/UefiBootManagerLib: allow foreign Driver#### images Ard Biesheuvel
2018-09-12 14:55 ` [PATCH 0/4] MdeModulePkg: add support for dispatching foreign arch PE/COFF images Gao, Liming
2018-09-12 14:56   ` Ard Biesheuvel
2018-09-12 15:07     ` Carsey, Jaben
2018-09-12 15:11       ` Ard Biesheuvel
2018-09-12 15:10 ` Kinney, Michael D [this message]
2018-09-13 10:36   ` Ard Biesheuvel
2018-09-13 17:20     ` Kinney, Michael D
2018-09-15 13:28       ` Ard Biesheuvel
2018-09-17  4:03         ` Kinney, Michael D
2018-09-19 19:35         ` Andrew Fish
2018-09-19 20:43           ` Ard Biesheuvel
2018-09-21 18:51             ` Andrew Fish
2018-09-12 15:48 ` Carsey, Jaben
2018-09-12 18:50   ` Zimmer, Vincent
2018-09-13  0:47 ` Shi, Steven
2018-09-13  5:18   ` Ard Biesheuvel

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=E92EE9817A31E24EB0585FDF735412F5B8AD6853@ORSMSX113.amr.corp.intel.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