public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: "Gao, Zhichao" <zhichao.gao@intel.com>
To: "Justen, Jordan L" <jordan.l.justen@intel.com>,
	"Gao, Liming" <liming.gao@intel.com>,
	Andrew Fish <afish@apple.com>,
	"Andrew Fish via edk2-devel" <edk2-devel@lists.01.org>,
	"Kinney, Michael D" <michael.d.kinney@intel.com>
Cc: "Wu, Hao A" <hao.a.wu@intel.com>,
	edk2-devel <edk2-devel@lists.01.org>,
	Bret Barkelew <Bret.Barkelew@microsoft.com>,
	Michael Turner <Michael.Turner@microsoft.com>,
	"Zeng, Star" <star.zeng@intel.com>,
	"Ard Biesheuvel" <ard.biesheuvel@linaro.org>,
	Laszlo Ersek <lersek@redhat.com>
Subject: Re: [PATCH V2 17/17] MdeModulePkg: Add PEIM and lib to dsc file
Date: Mon, 1 Apr 2019 06:37:51 +0000	[thread overview]
Message-ID: <3CE959C139B4C44DBEA1810E3AA6F9000B7BD017@SHSMSX101.ccr.corp.intel.com> (raw)
In-Reply-To: <155410040881.23262.16879145141824426653@jljusten-skl>

Thanks for your clear check. I didn't reply all the comments.
The patch set is update to V7 base on the comments from the community.

Thanks,
Zhichao

> -----Original Message-----
> From: Justen, Jordan L
> Sent: Monday, April 1, 2019 2:33 PM
> To: Gao, Liming <liming.gao@intel.com>; Andrew Fish <afish@apple.com>;
> Andrew Fish via edk2-devel <edk2-devel@lists.01.org>; Kinney, Michael D
> <michael.d.kinney@intel.com>; Gao, Zhichao <zhichao.gao@intel.com>
> Cc: Wu, Hao A <hao.a.wu@intel.com>; edk2-devel <edk2-
> devel@lists.01.org>; Bret Barkelew <Bret.Barkelew@microsoft.com>;
> Michael Turner <Michael.Turner@microsoft.com>; Zeng, Star
> <star.zeng@intel.com>; Ard Biesheuvel <ard.biesheuvel@linaro.org>; Laszlo
> Ersek <lersek@redhat.com>
> Subject: Re: [edk2] [PATCH V2 17/17] MdeModulePkg: Add PEIM and lib to
> dsc file
> 
> Whoops. It looks like this was specifically addressed in v3 of the series. I just
> didn't see a follow up email discussion to Andrew's email.
> 
> Please disregard.
> 
> -Jordan
> 
> On 2019-03-31 23:17:12, Jordan Justen wrote:
> > On 2019-03-14 22:54:24, Andrew Fish via edk2-devel wrote:
> > > I understand the motivation for this change as I've done something
> > > much less portable that looks a lot like this to save the PEI XIP
> > > space....
> > >
> > > I seem to remember a long time ago we add a public VA_LIST to an API
> > > and we ran into an issue due to the marker format being compiler
> > > specific. You don't tend to see this on VC++ as it mostly uses a
> > > pointer to the frame, but GCC and clang can use a data structure
> > > especially not on IA32 (i386) for a VA_LIST (this is part of the
> > > reason there are so many #ifdefs in the Base.h VA_LIST section).
> > >
> > > In the past to fix this Mike Kinney added BASE_LIST. I seem to
> > > remember MdeModulePkg/Library/PeiDxeDebugLibReportStatusCode
> passes
> > > a BASE_LIST into ReportStatusCode vs. a VA_LIST for this reason. Was
> > > this VA_LIST portability concern taken into consideration for this
> > > new API?
> > >
> > > In general VA_LIST is not an issue as long as all the code is
> > > compiled with the same compiler but if binaries are in play then you
> > > can have issues. So things like FSB, Option ROMs, OS Loaders, EFI
> > > Shell, EFI Apps. are when you can see the issue.
> > >
> >
> > I didn't see a reply to Andrew's concern. Was it considered, and
> > addressed?
> >
> > I remember having several issues in the past with var-args. I haven't
> > seen it show up in quite a while.
> >
> > I know we have to make sure to consistently apply EFIAPI to such
> > function declarations.
> >
> > I did think we still considered it forbidden to use var-args across a
> > binary interface. (PPI, Protocol, Core functions)
> >
> > I'm not sure if EFIAPI is enough to make it safe as long as all code
> > is compiled by the same compiler, or if it truely makes it safe for a
> > binary compiled with one compiler to be called from a binary compiled
> > with any other compiler.
> >
> > I'll add Ard and Laszlo to the Cc, as I seem to recall they may have
> > looked at it before. (Although, I think they've been Cc'd on the
> > series, so maybe they've already considered this, and don't expect
> > there is a problem.)
> >
> > -Jordan

      reply	other threads:[~2019-04-01  6:37 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-03-15  5:17 [PATCH V2 00/17] Add a new API DebugVPrint for DebugLib Zhichao Gao
2019-03-15  5:17 ` [PATCH V2 01/17] MdePkg/DebugLib.h: Add a new api " Zhichao Gao
2019-03-15  6:15   ` Jordan Justen
2019-03-18  0:14     ` Gao, Zhichao
2019-03-18  6:20       ` Jordan Justen
2019-03-18 15:09         ` Gao, Liming
2019-03-18 18:34           ` Jordan Justen
2019-03-19 14:45             ` Gao, Liming
2019-03-19 15:44               ` stephano
2019-03-15  5:17 ` [PATCH V2 02/17] MdePkg/BaseDebugLibNull: " Zhichao Gao
2019-03-15  5:17 ` [PATCH V2 03/17] MdePkg/BaseDebugLibSerialPort: Add a new api DebugVPrint Zhichao Gao
2019-03-15  5:17 ` [PATCH V2 04/17] MdePkg/UefidebugLibConOut: " Zhichao Gao
2019-03-15  5:17 ` [PATCH V2 05/17] MdePkg/UefiDebugLibStdErr: " Zhichao Gao
2019-03-15  5:17 ` [PATCH V2 06/17] MdePkg/DxeRuntimeDebugLibSerialPort: " Zhichao Gao
2019-03-15  5:17 ` [PATCH V2 07/17] MdePkg/UefiDebuglibDebugPortProtocol: " Zhichao Gao
2019-03-15  5:17 ` [PATCH V2 08/17] ArmPkg/SemiHostingDebugLib: " Zhichao Gao
2019-03-15  5:17 ` [PATCH V2 09/17] OvmfPkg/PlatformDebugLibIoPort: " Zhichao Gao
2019-03-20 16:13   ` Laszlo Ersek
2019-03-15  5:17 ` [PATCH V2 10/17] IntelFsp2Pkg/BaseFspDebugLibSerialPort: " Zhichao Gao
2019-03-15  7:31   ` Chiu, Chasel
2019-03-15  5:17 ` [PATCH V2 11/17] IntelFspPkg/BaseFspDebugLibSerialPort: " Zhichao Gao
2019-03-15  7:32   ` Chiu, Chasel
2019-03-15  5:17 ` [PATCH V2 12/17] IntelFramworkModulePkg/PeiDxeDebugLibReportStatusCode: Add a new api Zhichao Gao
2019-03-15  5:17 ` [PATCH V2 13/17] MdeModulePkg/PeiDxeDebugLibReportStatusCode: " Zhichao Gao
2019-03-15  5:17 ` [PATCH V2 14/17] MdeModulePkg: Add definitions for EDKII DEBUG PPI Zhichao Gao
2019-03-15  5:17 ` [PATCH V2 15/17] MdeModulePkg: Add a PEIM to install Debug PPI Zhichao Gao
2019-03-15  5:17 ` [PATCH V2 16/17] MdeModulePkg/PeiDebugLibDebugPpi: Add PEI debug lib Zhichao Gao
2019-03-15  5:17 ` [PATCH V2 17/17] MdeModulePkg: Add PEIM and lib to dsc file Zhichao Gao
2019-03-15  5:54   ` Andrew Fish
2019-04-01  6:17     ` Jordan Justen
2019-04-01  6:33       ` Jordan Justen
2019-04-01  6:37         ` Gao, Zhichao [this message]

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=3CE959C139B4C44DBEA1810E3AA6F9000B7BD017@SHSMSX101.ccr.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