public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: "Laszlo Ersek" <lersek@redhat.com>
To: "Gao, Liming" <liming.gao@intel.com>,
	"Gao, Zhichao" <zhichao.gao@intel.com>
Cc: "devel@edk2.groups.io" <devel@edk2.groups.io>,
	"Kinney, Michael D" <michael.d.kinney@intel.com>,
	"Marvin Häuser" <mhaeuser@outlook.de>,
	"Philippe Mathieu-Daudé" <philmd@redhat.com>
Subject: Re: [edk2-devel] [PATCH 2/3] MdePkg/BaseLib: rewrite Base64Decode()
Date: Mon, 15 Jul 2019 23:56:20 +0200	[thread overview]
Message-ID: <a1c7d67b-43c7-14e5-c518-400a22c83c2f@redhat.com> (raw)
In-Reply-To: <4A89E2EF3DFEDB4C8BFDE51014F606A14E4A8656@SHSMSX104.ccr.corp.intel.com>

On 07/15/19 17:22, Gao, Liming wrote:
> Laszlo:
> 
>> -----Original Message-----
>> From: devel@edk2.groups.io [mailto:devel@edk2.groups.io] On Behalf Of Laszlo Ersek
>> Sent: Saturday, July 13, 2019 3:31 AM
>> To: Gao, Zhichao <zhichao.gao@intel.com>; devel@edk2.groups.io; Gao, Liming <liming.gao@intel.com>; Kinney, Michael D
>> <michael.d.kinney@intel.com>
>> Cc: Marvin Häuser <mhaeuser@outlook.de>; Philippe Mathieu-Daudé <philmd@redhat.com>
>> Subject: Re: [edk2-devel] [PATCH 2/3] MdePkg/BaseLib: rewrite Base64Decode()
>>
>> On 07/12/19 04:31, Gao, Zhichao wrote:
>>> Sorry for late respond.
>>> The whole code is OK for me. And I write a tiny test for it without the memory address check. See
>> https://github.com/ZhichaoGao/edk2/commit/615356ba32d3147957d215debd844e7709f06849 . It is tested in Emulator environment. If
>> it is OK, I think you can take my Tested-by for this patch. If there are some missing, please let me know.
>>
>> Thanks for writing that test app. It seems to have pretty good coverage.
>> I like that it covers the exit points systematically.
>>
>> Mike, Liming: I intend to pick up Zhichao's T-b, from above. If you are
>> aware of another test suite (perhaps used in conjunction with the
>> originally contributed Base64Decode() impl), please let me know.
> 
> OK to me.
> 
>>
>>> Base64Decode parameter Source is indicate as OPTIONAL. Although it is OK to be NULL, and return DestinationSize to be zero with
>> success status to indicate no decode occurred . I don't know if it is meaningful to report the result as that. In my opinion, NULL Source is
>> an invalid input. Just my opinion, if the maintainer is OK with that, I am OK too.
> 
> Yes. Source is NULL, SourceSize is zero. Code does nothing. I am fine with it. 
> 
> I have no other comments for the code logic. Reviewed-by: Liming Gao <liming.gao@intel.com>

Thank you!

A few questions:


(1) Liming, does your R-b apply to the first patch in the series as
well? (That patch too is for MdePkg.)

Here are two links to patch#1 in the series, for your convenience:

http://mid.mail-archive.com/20190702102836.27589-2-lersek@redhat.com
https://edk2.groups.io/g/devel/message/43162


(2) Zhichao, you made a good remark about block-scoped variables, and
the CCS. You also gave your Tested-by for the present version. So, we
have the following two options:

(2a)

- I push the present patch as-is, including your Tested-by. (Together
with Liming's R-b -- he is OK with the present version.)

- Subsequently, I post a separate (incremental) patch for moving the
variables from the inner block scope to the outer function block scope.
This incremental patch needs another MdePkg maintainer review, but it
doesn't need additional testing from you.

(2b) Alternatively:

- I post v2 of this series, which incorporates the movement of the
variables from the inner block scope to the outermost function block scope.

- I keep Liming's R-b. (The variable definition movement is
straight-forward and I don't think it invalidates Liming's R-b).

- I drop your Tested-by, because the variable movement technically
changes code that your testing exercised, and a Tested-by tag should
only be applied to the *exact* code that was exercised by the testing.

- Therefore, for preserving your testing work in the git history, you
would have to redo the testing, please.


Zhichao, do you prefer (2a) or (2b)?

Personally, I prefer (2a), because (2a) is safe -- importantly, the v1
code is *valid* C --, and it is less work for the community (for you,
Liming and myself, together).

Thanks!
Laszlo

  reply	other threads:[~2019-07-15 21:56 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-07-02 10:28 [PATCH 0/3] MdePkg, OvmfPkg: rewrite Base64Decode(), clean up call site Laszlo Ersek
2019-07-02 10:28 ` [PATCH 1/3] MdePkg/BaseLib: re-specify Base64Decode(), and add temporary stub impl Laszlo Ersek
2019-07-16  8:38   ` Philippe Mathieu-Daudé
2019-07-16  9:41     ` Philippe Mathieu-Daudé
2019-07-16 14:14       ` Laszlo Ersek
2019-07-16 14:59         ` Philippe Mathieu-Daudé
2019-07-16 18:53           ` [edk2-devel] " Laszlo Ersek
2019-07-16 10:49   ` Laszlo Ersek
2019-07-16 14:56     ` Liming Gao
2019-07-16 17:15       ` Laszlo Ersek
2019-07-02 10:28 ` [PATCH 2/3] MdePkg/BaseLib: rewrite Base64Decode() Laszlo Ersek
2019-07-12  2:31   ` [edk2-devel] " Gao, Zhichao
2019-07-12 19:31     ` Laszlo Ersek
2019-07-15 15:22       ` Liming Gao
2019-07-15 21:56         ` Laszlo Ersek [this message]
2019-07-16  1:18           ` Gao, Zhichao
2019-07-16 10:48             ` Laszlo Ersek
2019-07-15 18:44   ` mhaeuser
2019-07-16  0:45     ` Laszlo Ersek
2019-07-16 10:05   ` Philippe Mathieu-Daudé
2019-07-16 14:17     ` Laszlo Ersek
2019-07-02 10:28 ` [PATCH 3/3] OvmfPkg/EnrollDefaultKeys: clean up Base64Decode() retval handling Laszlo Ersek
2019-07-15 21:58   ` [edk2-devel] " Laszlo Ersek
2019-07-16  8:36     ` Philippe Mathieu-Daudé
2019-07-10  9:20 ` [edk2-devel] [PATCH 0/3] MdePkg, OvmfPkg: rewrite Base64Decode(), clean up call site Laszlo Ersek
2019-07-16 22:02 ` 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=a1c7d67b-43c7-14e5-c518-400a22c83c2f@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