From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by spool.mail.gandi.net (Postfix) with ESMTPS id BB8FCD802F3 for ; Thu, 15 Feb 2024 10:40:44 +0000 (UTC) DKIM-Signature: a=rsa-sha256; bh=C2b9bHFA7iD/3RimqXv4XvuWtq68ltbhphpvliQ2aGM=; c=relaxed/simple; d=groups.io; h=MIME-Version:References:In-Reply-To:From:Date:Message-ID:Subject:To:Cc:Precedence:List-Subscribe:List-Help:Sender:List-Id:Mailing-List:Delivered-To:Reply-To:List-Unsubscribe-Post:List-Unsubscribe:Content-Type; s=20140610; t=1707993643; v=1; b=oItUq+hEmH4NwReDt5P5Nv7wC+Nmv+zH46HBXFKP0mvQ496K/GEkFRUQo1yLG5Acc1WuA2NX da6J6Z7GZxyAKYqxWKmeIV6X1TxmREW/BXEFhhL5OHmCxmlAn3ms2tuoXC/eawKF5Dt8ZApu/34 xJNAGjQfAOsuWe4tunbdlO6w= X-Received: by 127.0.0.2 with SMTP id RS2XYY7687511x3H4tjtj71R; Thu, 15 Feb 2024 02:40:43 -0800 X-Received: from mail-qv1-f51.google.com (mail-qv1-f51.google.com [209.85.219.51]) by mx.groups.io with SMTP id smtpd.web10.11068.1707993642483727286 for ; Thu, 15 Feb 2024 02:40:42 -0800 X-Received: by mail-qv1-f51.google.com with SMTP id 6a1803df08f44-686a92a8661so4078746d6.0 for ; Thu, 15 Feb 2024 02:40:42 -0800 (PST) X-Gm-Message-State: VVztKvzOPc9h27MZYEGcmcw4x7686176AA= X-Google-Smtp-Source: AGHT+IF+0GsUkYzR0oCb7uq0+8MX22bZyRKb+c2gG0yNU/JiQIMD6VAJcI0ZNnCMJ/2GFxd0khAP2CH2hJwSzeGVLhs= X-Received: by 2002:a05:6214:e6d:b0:68f:1aa7:12be with SMTP id jz13-20020a0562140e6d00b0068f1aa712bemr1033838qvb.23.1707993641433; Thu, 15 Feb 2024 02:40:41 -0800 (PST) MIME-Version: 1.0 References: <20240128134816.236973-1-dhaval@rivosinc.com> <20240128134816.236973-2-dhaval@rivosinc.com> <17AEFB5BFEE74D09.16647@groups.io> <01d001da5fb0$1e84e680$5b8eb380$@byosoft.com.cn> <14daf675-5076-4e64-8a24-8f30f2c44dbf@quicinc.com> In-Reply-To: <14daf675-5076-4e64-8a24-8f30f2c44dbf@quicinc.com> From: "Dhaval Sharma" Date: Thu, 15 Feb 2024 16:10:30 +0530 Message-ID: Subject: =?UTF-8?B?UmU6IFtlZGsyLWRldmVsXSDlm57lpI06IFtlZGsyLXN0YWJsZTIwMjQwMl0gW1BBVENIIHY1IDEvMV0gTWRlTW9kdWxlUGtnL0FjcGlUYWJsZUR4ZTogUHJlZmVyIHhEU0RUIG92ZXIgRFNEVCB3aGVuIGluc3RhbGxpbmcgdGFibGVz?= To: Leif Lindholm Cc: devel@edk2.groups.io, gaoliming@byosoft.com.cn, zhiguang.liu@intel.com, dandan.bi@intel.com, pedro.falcato@gmail.com, chasel.chiu@intel.com, Laszlo Ersek , Andrew Fish , michael.d.kinney@intel.com Precedence: Bulk List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,dhaval@rivosinc.com List-Unsubscribe-Post: List-Unsubscribe=One-Click List-Unsubscribe: Content-Type: multipart/alternative; boundary="00000000000046d1a4061169420d" X-GND-Status: LEGIT Authentication-Results: spool.mail.gandi.net; dkim=pass header.d=groups.io header.s=20140610 header.b=oItUq+hE; spf=pass (spool.mail.gandi.net: domain of bounce@groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce@groups.io; dmarc=none --00000000000046d1a4061169420d Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable For me it is not impacting a production system so I can wait a cycle more. @Liming Gao I will send out the PR with your rb tag. On Thu, Feb 15, 2024 at 3:26=E2=80=AFPM Leif Lindholm wrote: > Hi Liming, > > On 2024-02-15 01:41, gaoliming via groups.io wrote: > > Hi, all > > This patch was reviewed before soft feature freeze. I would like to > merge > > it for this stable tag. If you have any comments, please reply this mai= l. > > I agree this is a bugfix, but the criterion for hard freeze is supposed > to be *critical* bugfix. By definition this is a very invasive change > for systems where it has any effect. So I would feel more comfortable if > it had more time before going into a stable tag. > > Dhaval, how critical is this fix for you? Are you OK for it to go in > after stable tag? > > Regards, > > Leif > > > > Thanks > > Liming > >> -----=E9=82=AE=E4=BB=B6=E5=8E=9F=E4=BB=B6----- > >> =E5=8F=91=E4=BB=B6=E4=BA=BA: devel@edk2.groups.io =E4=BB=A3=E8=A1=A8 gaoliming via > >> groups.io > >> =E5=8F=91=E9=80=81=E6=97=B6=E9=97=B4: 2024=E5=B9=B41=E6=9C=8830=E6=97= =A5 9:21 > >> =E6=94=B6=E4=BB=B6=E4=BA=BA: devel@edk2.groups.io; dhaval@rivosinc.com > >> =E6=8A=84=E9=80=81: zhiguang.liu@intel.com; dandan.bi@intel.com; > >> pedro.falcato@gmail.com; chasel.chiu@intel.com > >> =E4=B8=BB=E9=A2=98: =E5=9B=9E=E5=A4=8D: [edk2-devel] [PATCH v5 1/1] Md= eModulePkg/AcpiTableDxe: > >> Prefer xDSDT over DSDT when installing tables > >> > >> This version is good to me. Reviewed-by: Liming Gao > >> > >> > >>> -----=E9=82=AE=E4=BB=B6=E5=8E=9F=E4=BB=B6----- > >>> =E5=8F=91=E4=BB=B6=E4=BA=BA: devel@edk2.groups.io =E4=BB=A3=E8=A1=A8 Dhaval > >>> Sharma > >>> =E5=8F=91=E9=80=81=E6=97=B6=E9=97=B4: 2024=E5=B9=B41=E6=9C=8828=E6=97= =A5 21:39 > >>> =E6=94=B6=E4=BB=B6=E4=BA=BA: devel@edk2.groups.io > >>> =E6=8A=84=E9=80=81: gaoliming@byosoft.com.cn; zhiguang.liu@intel.com; > >>> dandan.bi@intel.com; pedro.falcato@gmail.com; chasel.chiu@intel.com > >>> =E4=B8=BB=E9=A2=98: [edk2-devel] [PATCH v5 1/1] MdeModulePkg/AcpiTabl= eDxe: Prefer > >>> xDSDT over DSDT when installing tables > >>> > >>> As per ACPI Spec 6.5+ Table 5-9 if xDSDT is available, > >>> it should be used first. Handle required flow when xDSDT > >>> is absent or present. > >>> > >>> Test: Tested on RISCV64 Qemu platform with xDSDT and booted to > >>> linux kernel. > >>> > >>> Cc: Liming Gao > >>> Cc: Zhiguang Liu > >>> Cc: Dandan Bi > >>> Cc: Pedro Falcato > >>> Cc: devel@edk2.groups.io > >>> Signed-off-by: Dhaval Sharma > >>> Acked-by: Chasel Chiu > >>> --- > >>> > >>> Notes: > >>> v5: > >>> - If DSDT is not found, throw error and continue to build other > > tables > >>> v4: > >>> - Fix typos and commit message adding more clarity to patch > subject > >>> v3: > >>> - Added description of ACPI spec clarification based on which th= is > >> patch is > >>> created > >>> - Optimizing if-else flow > >>> v2: > >>> - Added proper indentation for else if > >>> > >>> MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableProtocol.c | 24 > >>> ++++++++++++++------ > >>> 1 file changed, 17 insertions(+), 7 deletions(-) > >>> > >>> diff --git > >> a/MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableProtocol.c > >>> b/MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableProtocol.c > >>> index e09bc9b704f5..3879e10b3349 100644 > >>> --- a/MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableProtocol.c > >>> +++ b/MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableProtocol.c > >>> @@ -1892,14 +1892,24 @@ InstallAcpiTableFromHob ( > >>> } > >>> } > >>> > >>> - if (((EFI_ACPI_3_0_FIXED_ACPI_DESCRIPTION_TABLE > >>> *)ChildTable)->Dsdt !=3D 0) { > >>> + // > >>> + // First check if xDSDT is available, as that is preferred a= s > > per > >>> + // ACPI Spec 6.5+ Table 5-9 X_DSDT definition > >>> + // > >>> + if (((EFI_ACPI_3_0_FIXED_ACPI_DESCRIPTION_TABLE > >>> *)ChildTable)->XDsdt !=3D 0) { > >>> + TableToInstall =3D (VOID > >>> *)(UINTN)((EFI_ACPI_3_0_FIXED_ACPI_DESCRIPTION_TABLE > >>> *)ChildTable)->XDsdt; > >>> + } else if (((EFI_ACPI_3_0_FIXED_ACPI_DESCRIPTION_TABLE > >>> *)ChildTable)->Dsdt !=3D 0) { > >>> TableToInstall =3D (VOID > >>> *)(UINTN)((EFI_ACPI_3_0_FIXED_ACPI_DESCRIPTION_TABLE > >>> *)ChildTable)->Dsdt; > >>> - Status =3D AddTableToList (AcpiTableInstance, > >>> TableToInstall, TRUE, Version, TRUE, &TableKey); > >>> - if (EFI_ERROR (Status)) { > >>> - DEBUG ((DEBUG_ERROR, "InstallAcpiTableFromHob: Fail to > >>> add ACPI table DSDT\n")); > >>> - ASSERT_EFI_ERROR (Status); > >>> - break; > >>> - } > >>> + } else { > >>> + DEBUG ((DEBUG_ERROR, "DSDT table not found\n")); > >>> + continue; > >>> + } > >>> + > >>> + Status =3D AddTableToList (AcpiTableInstance, TableToInstall= , > > TRUE, > >>> Version, TRUE, &TableKey); > >>> + if (EFI_ERROR (Status)) { > >>> + DEBUG ((DEBUG_ERROR, "InstallAcpiTableFromHob: Fail to > >> add > >>> ACPI table DSDT\n")); > >>> + ASSERT_EFI_ERROR (Status); > >>> + break; > >>> } > >>> } > >>> } > >>> -- > >>> 2.39.2 > >>> > >>> > >>> > >>> > >>> > >> > >> > >> > >> > >> > >> > >> > > > > > > > > > > > >=20 > > > > > > --=20 Thanks! =3DD -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#115518): https://edk2.groups.io/g/devel/message/115518 Mute This Topic: https://groups.io/mt/104365766/7686176 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- --00000000000046d1a4061169420d Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
For me it is not impacting a production system so I can wa= it a cycle more.=C2=A0@Liming Gao=C2= =A0I will send out the PR with your rb tag.

On Thu, Feb 15, 2024 at 3:26=E2= =80=AFPM Leif Lindholm <qui= c_llindhol@quicinc.com> wrote:
Hi Liming,

On 2024-02-15 01:41, gaoliming via groups.io wrote:
> Hi, all
>=C2=A0 =C2=A0This patch was reviewed before soft feature freeze. I woul= d like to merge
> it for this stable tag. If you have any comments, please reply this ma= il.

I agree this is a bugfix, but the criterion for hard freeze is supposed to be *critical* bugfix. By definition this is a very invasive change
for systems where it has any effect. So I would feel more comfortable if it had more time before going into a stable tag.

Dhaval, how critical is this fix for you? Are you OK for it to go in
after stable tag?

Regards,

Leif


> Thanks
> Liming
>> -----=E9=82=AE=E4=BB=B6=E5=8E=9F=E4=BB=B6-----
>> =E5=8F=91=E4=BB=B6=E4=BA=BA: devel@edk2.groups.io <devel@edk2.groups.io> =E4=BB=A3=E8= =A1=A8 gaoliming via
>> = groups.io
>> =E5=8F=91=E9=80=81=E6=97=B6=E9=97=B4: 2024=E5=B9=B41=E6=9C=8830=E6= =97=A5 9:21
>> =E6=94=B6=E4=BB=B6=E4=BA=BA: devel@edk2.groups.io; dhaval@rivosinc.com
>> =E6=8A=84=E9=80=81: zhiguang.liu@intel.com; dandan.bi@intel.com;
>> pedro= .falcato@gmail.com; chasel.chiu@intel.com
>> =E4=B8=BB=E9=A2=98: =E5=9B=9E=E5=A4=8D: [edk2-devel] [PATCH v5 1/1= ] MdeModulePkg/AcpiTableDxe:
>> Prefer xDSDT over DSDT when installing tables
>>
>> This version is good to me. Reviewed-by: Liming Gao
>> <= gaoliming@byosoft.com.cn>
>>
>>> -----=E9=82=AE=E4=BB=B6=E5=8E=9F=E4=BB=B6-----
>>> =E5=8F=91=E4=BB=B6=E4=BA=BA: devel@edk2.groups.io <devel@edk2.groups.io> =E4=BB=A3= =E8=A1=A8 Dhaval
>>> Sharma
>>> =E5=8F=91=E9=80=81=E6=97=B6=E9=97=B4: 2024=E5=B9=B41=E6=9C=882= 8=E6=97=A5 21:39
>>> =E6=94=B6=E4=BB=B6=E4=BA=BA: devel@edk2.groups.io
>>> =E6=8A=84=E9=80=81: gaoliming@byosoft.com.cn; zhiguang.liu@intel.com;
>>> danda= n.bi@intel.com; pedro.falcato@gmail.com; chasel.chiu@intel.com
>>> =E4=B8=BB=E9=A2=98: [edk2-devel] [PATCH v5 1/1] MdeModulePkg/A= cpiTableDxe: Prefer
>>> xDSDT over DSDT when installing tables
>>>
>>> As per ACPI Spec 6.5+ Table 5-9 if xDSDT is available,
>>> it should be used first. Handle required flow when xDSDT
>>> is absent or present.
>>>
>>> Test: Tested on RISCV64 Qemu platform with xDSDT and booted to=
>>> linux kernel.
>>>
>>> Cc: Liming Gao <gaoliming@...>
>>> Cc: Zhiguang Liu <zhiguang.liu@...>
>>> Cc: Dandan Bi <dandan.bi@...>
>>> Cc: Pedro Falcato <pedro.falcato@...>
>>> Cc: = devel@edk2.groups.io
>>> Signed-off-by: Dhaval Sharma <dhaval@...>
>>> Acked-by: Chasel Chiu <chasel.chiu@...>
>>> ---
>>>
>>> Notes:
>>>=C2=A0 =C2=A0 =C2=A0 v5:
>>>=C2=A0 =C2=A0 =C2=A0 - If DSDT is not found, throw error and co= ntinue to build other
> tables
>>>=C2=A0 =C2=A0 =C2=A0 v4:
>>>=C2=A0 =C2=A0 =C2=A0 - Fix typos and commit message adding more= clarity to patch subject
>>>=C2=A0 =C2=A0 =C2=A0 v3:
>>>=C2=A0 =C2=A0 =C2=A0 - Added description of ACPI spec clarifica= tion based on which this
>> patch is
>>> created
>>>=C2=A0 =C2=A0 =C2=A0 - Optimizing if-else flow
>>>=C2=A0 =C2=A0 =C2=A0 v2:
>>>=C2=A0 =C2=A0 =C2=A0 - Added proper indentation for else if
>>>
>>>=C2=A0 =C2=A0MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTable= Protocol.c | 24
>>> ++++++++++++++------
>>>=C2=A0 =C2=A01 file changed, 17 insertions(+), 7 deletions(-) >>>
>>> diff --git
>> a/MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableProtocol.c
>>> b/MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableProtocol.c=
>>> index e09bc9b704f5..3879e10b3349 100644
>>> --- a/MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableProtoc= ol.c
>>> +++ b/MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableProtoc= ol.c
>>> @@ -1892,14 +1892,24 @@ InstallAcpiTableFromHob (
>>>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0}
>>>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0}
>>>
>>> -=C2=A0 =C2=A0 =C2=A0 =C2=A0 if (((EFI_ACPI_3_0_FIXED_ACPI_DES= CRIPTION_TABLE
>>> *)ChildTable)->Dsdt !=3D 0) {
>>> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 //
>>> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 // First check if xDSDT is availa= ble, as that is preferred as
> per
>>> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 // ACPI Spec 6.5+ Table 5-9 X_DSD= T definition
>>> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 //
>>> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 if (((EFI_ACPI_3_0_FIXED_ACPI_DES= CRIPTION_TABLE
>>> *)ChildTable)->XDsdt !=3D 0) {
>>> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 TableToInstall =3D (VOID >>> *)(UINTN)((EFI_ACPI_3_0_FIXED_ACPI_DESCRIPTION_TABLE
>>> *)ChildTable)->XDsdt;
>>> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 } else if (((EFI_ACPI_3_0_FIXED_A= CPI_DESCRIPTION_TABLE
>>> *)ChildTable)->Dsdt !=3D 0) {
>>>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0TableToInstall = =3D (VOID
>>> *)(UINTN)((EFI_ACPI_3_0_FIXED_ACPI_DESCRIPTION_TABLE
>>> *)ChildTable)->Dsdt;
>>> -=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 Status=C2=A0 =C2=A0 =C2=A0= =C2=A0 =C2=A0=3D AddTableToList (AcpiTableInstance,
>>> TableToInstall, TRUE, Version, TRUE, &TableKey);
>>> -=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 if (EFI_ERROR (Status)) {<= br> >>> -=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 DEBUG ((DEBUG_ERROR= , "InstallAcpiTableFromHob: Fail to
>>> add ACPI table DSDT\n"));
>>> -=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 ASSERT_EFI_ERROR (S= tatus);
>>> -=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 break;
>>> -=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 }
>>> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 } else {
>>> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 DEBUG ((DEBUG_ERROR, "= ;DSDT table not found\n"));
>>> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 continue;
>>> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 }
>>> +
>>> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 Status =3D AddTableToList (AcpiTa= bleInstance, TableToInstall,
> TRUE,
>>> Version, TRUE, &TableKey);
>>> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 if (EFI_ERROR (Status)) {
>>> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 DEBUG ((DEBUG_ERROR, "= ;InstallAcpiTableFromHob: Fail to
>> add
>>> ACPI table DSDT\n"));
>>> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 ASSERT_EFI_ERROR (Status);=
>>> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 break;
>>>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0}
>>>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0}
>>>=C2=A0 =C2=A0 =C2=A0 =C2=A0}
>>> --
>>> 2.39.2
>>>
>>>
>>>
>>>
>>>
>>
>>
>>
>>
>>
>>
>>
>
>
>
>
>
>
>
>



--
Thanks!
=3DD
_._,_._,_

Groups.io Links:

=20 You receive all messages sent to this group. =20 =20

View/Reply Online (#115518) | =20 | Mute= This Topic | New Topic
Your Subscriptio= n | Contact Group Owner | Unsubscribe [rebecca@openfw.io]

_._,_._,_
--00000000000046d1a4061169420d--