public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: "Laszlo Ersek" <lersek@redhat.com>
To: David Woodhouse <dwmw2@infradead.org>,
	"Wu, Hao A" <hao.a.wu@intel.com>,
	"devel@edk2.groups.io" <devel@edk2.groups.io>,
	"Ni, Ray" <ray.ni@intel.com>
Cc: "Justen, Jordan L" <jordan.l.justen@intel.com>,
	Ard Biesheuvel <ard.biesheuvel@linaro.org>
Subject: Re: [edk2-devel] [PATCH 11/10] OvmfPkg/Csm/LegacyBiosDxe: Correct Legacy16GetTableAddress call for E820 data
Date: Thu, 13 Jun 2019 14:45:11 +0200	[thread overview]
Message-ID: <32298b39-71f5-274a-6f53-2dcb2eda2fc5@redhat.com> (raw)
In-Reply-To: <c8b02db94bb66b81c80b659784a9d3f608f956a1.camel@infradead.org>

On 06/13/19 10:34, David Woodhouse wrote:
> On Thu, 2019-06-13 at 06:28 +0000, Wu, Hao A wrote:
>> Hello Ray,
>>
>> Do you have comment on this?
>>
>> Some inline comments below:
>>
>>> -----Original Message-----
>>> From: devel@edk2.groups.io [mailto:devel@edk2.groups.io] On Behalf Of
>>> David Woodhouse
>>> Sent: Thursday, June 13, 2019 5:43 AM
>>> To: Wu, Hao A
>>> Cc: devel@edk2.groups.io; Ni, Ray; Justen, Jordan L; Laszlo Ersek; Ard
>>> Biesheuvel
>>> Subject: [edk2-devel] [PATCH 11/10] OvmfPkg/Csm/LegacyBiosDxe: Correct
>>> Legacy16GetTableAddress call for E820 data
>>>
>>> The DX register is supposed to contain the required alignment for the
>>> allocation. It was zero, and SeaBIOS doesn't (well, didn't) cope well
>>> with that. Set it appropriately, and set BX to indicate the regions
>>> it's OK to allocate in too. That was already OK but let's make sure
>>> it's initialised properly and not just working by chance.
>>>
>>> Also actually return an error if the allocation fails. Instead of going
>>> all the way through into the CSM and just letting it have a bogus
>>> pointer to the E82o data.
>>>
>>> Signed-off-by: David Woodhouse <dwmw2@infradead.org>
>>> ---
>>> I made SeaBIOS cope with the zero too:
>>> https://mail.coreboot.org/hyperkitty/list/seabios@seabios.org/thread/4PH
>>> W3O3Y3HJFENODFV5INBGDLZMXA5KE/
>>>
>>>  OvmfPkg/Csm/LegacyBiosDxe/LegacyBootSupport.c | 3 +++
>>
>>
>> Not sure if it is the issue of my mail client, the new lines added are
>> with LF line ending on my local machine after applying the patch.
> 
> Hm, that's normal, isn't it?
> 
> We still haven't fixed the repository to store LF line endings
> internally and then let all the tools automatically do the right thing
> by checking out to LF or CRLF as appropriate for the system you're
> checking out on.
> 
> I vaguely recall that Laszlo has some scripts which mangle an email and
> make it apply with CRLF? But only vaguely... which is why I asked for a
> git tree instead of trying to run the gauntlet of trying to apply
> patches 1-10 of your series myself.
> 
> I've pushed v2 with the E82o typo fixed, and using BX==0, to 
> http://git.infradead.org/users/dwmw2/edk2.git/shortlog/refs/heads/csm
> git://http://git.infradead.org/users/dwmw2/edk2.git csm
> 
> I'll try sending that with git-send-email directly rather than with via
> my mailer, but IIRC that doesn't make any difference. CRLF conversions
> are baked into every level — even SMTP converts to send CRLF on the
> wire and often back again at the receive side. 

You may be remembering this article:

https://github.com/tianocore/tianocore.github.io/wiki/Laszlo's-unkempt-git-guide-for-edk2-contributors-and-maintainers

I think Hao may have missed "--keep-cr" with git-am (or "git config
am.keepcr true" for a permanent setting).

Leif recently implemented a python script that configures one's git
clone the way we suggest:

1 5b3e695d8ac5 BaseTools: add centralized location for git config files
2 4eb0acb1e2be BaseTools: add script to configure local git options


The conversion of the repo's internal representation to LF has not been
forgotten (nor abandoned); it's just that I've personally learned to
cope with CRLF, and everyone's got to pick their fights. I support the
conversion but I have no capacity for working on it.

Thanks,
Laszlo

>>
>>>  1 file changed, 3 insertions(+)
>>>
>>> diff --git a/OvmfPkg/Csm/LegacyBiosDxe/LegacyBootSupport.c
>>> b/OvmfPkg/Csm/LegacyBiosDxe/LegacyBootSupport.c
>>> index 211750c012..e7766eb2b1 100644
>>> --- a/OvmfPkg/Csm/LegacyBiosDxe/LegacyBootSupport.c
>>> +++ b/OvmfPkg/Csm/LegacyBiosDxe/LegacyBootSupport.c
>>> @@ -928,7 +928,9 @@ GenericLegacyBoot (
>>>    if (CopySize > Private->Legacy16Table->E820Length) {
>>>      ZeroMem (&Regs, sizeof (EFI_IA32_REGISTER_SET));
>>>      Regs.X.AX = Legacy16GetTableAddress;
>>> +    Regs.X.BX = (UINT16) 0x3; // Region
>>
>>
>> According to the spec:
>>
>> '''
>> BX = Allocation region
>> 00 = Allocate from either 0xE0000 or 0xF0000 64 KB blocks.
>> Bit 0 = 1 Allocate from 0xF0000 64 KB block
>> Bit 1 = 1 Allocate from 0xE0000 64 KB block
>> '''
>>
>> I think the value 0 for BX is fine which indicates the allocation can
>> happen in either ranges. Not sure if setting BX to 0x11 is a valid
>> operation.
> 
> Note, I may have lied in my reply to Jordan when I said that 0x11 is
> what was already happening. The way SeaBIOS copes with zero is by
> setting it to 3... *before* the debug print showing what it was set to.
> 
>> With the above comments handled:
>> Reviewed-by: Hao A Wu <hao.a.wu@intel.com>
> 
> Thanks.
> 


  reply	other threads:[~2019-06-13 12:45 UTC|newest]

Thread overview: 35+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-05-27  3:03 [PATCH v2 00/10] Duplicate required CSM components for OVMF Wu, Hao A
2019-05-27  3:03 ` [PATCH v2 01/10] Maintainers.txt: Add maintainer for CSM components in OvmfPkg Wu, Hao A
2019-06-13 13:26   ` [edk2-devel] " Laszlo Ersek
2019-05-27  3:03 ` [PATCH v2 02/10] OvmfPkg: Copy the required CSM components from framework packages Wu, Hao A
2019-06-13 13:40   ` [edk2-devel] " Laszlo Ersek
2019-05-27  3:03 ` [PATCH v2 03/10] OvmfPkg/OvmfPkg.dec: Add definitions for CSM-related Guid & Protocol Wu, Hao A
2019-06-13 13:49   ` [edk2-devel] " Laszlo Ersek
2019-05-27  3:03 ` [PATCH v2 04/10] OvmfPkg/OvmfPkg.dec: Add the new include folder for CSM header files Wu, Hao A
2019-06-13 13:49   ` [edk2-devel] " Laszlo Ersek
2019-05-27  3:03 ` [PATCH v2 05/10] OvmfPkg/OvmfPkg.dec: Add PCD definitions used by copied CSM modules Wu, Hao A
2019-06-13 14:09   ` [edk2-devel] " Laszlo Ersek
2019-05-27  3:03 ` [PATCH v2 06/10] OvmfPkg/Csm/VideoDxe: Update to make it build for OVMF Wu, Hao A
2019-06-13 14:10   ` [edk2-devel] " Laszlo Ersek
2019-05-27  3:03 ` [PATCH v2 07/10] OvmfPkg/Csm/LegacyBiosDxe: " Wu, Hao A
2019-06-13 14:15   ` [edk2-devel] " Laszlo Ersek
2019-05-27  3:03 ` [PATCH v2 08/10] OvmfPkg/Csm/LegacyBootMaintUiLib: " Wu, Hao A
2019-06-13 14:16   ` [edk2-devel] " Laszlo Ersek
2019-05-27  3:03 ` [PATCH v2 09/10] OvmfPkg/Csm/LegacyBootManagerLib: " Wu, Hao A
2019-06-13 14:17   ` [edk2-devel] " Laszlo Ersek
2019-05-27  3:03 ` [PATCH v2 10/10] OvmfPkg: Update DSC/FDF files to consume CSM components in OvmfPkg Wu, Hao A
2019-06-13 14:22   ` [edk2-devel] " Laszlo Ersek
2019-05-28 11:48 ` [edk2-devel] [PATCH v2 00/10] Duplicate required CSM components for OVMF Laszlo Ersek
2019-05-29  1:12   ` Wu, Hao A
2019-06-03  9:29     ` Laszlo Ersek
2019-06-12 21:40 ` David Woodhouse
2019-06-14  5:08   ` [edk2-devel] " Wu, Hao A
2019-06-12 21:43 ` [PATCH 11/10] OvmfPkg/Csm/LegacyBiosDxe: Correct Legacy16GetTableAddress call for E820 data David Woodhouse
2019-06-13  6:28   ` [edk2-devel] " Wu, Hao A
2019-06-13  7:10     ` Ni, Ray
2019-06-13  7:40     ` Jordan Justen
2019-06-13  8:00       ` David Woodhouse
2019-06-13  8:34     ` David Woodhouse
2019-06-13 12:45       ` Laszlo Ersek [this message]
2019-06-13  8:40   ` [PATCH v2 11/10] OvmfPkg/Csm/LegacyBiosDxe: Fix " David Woodhouse
2019-06-13 14:23     ` [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=32298b39-71f5-274a-6f53-2dcb2eda2fc5@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