Reviewed-by: Hao A Wu <hao.a...@intel.com>

Best Regards,
Hao Wu

> -----Original Message-----
> From: Pedro Falcato <pedro.falc...@gmail.com>
> Sent: Wednesday, May 10, 2023 12:32 AM
> To: devel@edk2.groups.io
> Cc: Laszlo Ersek <ler...@redhat.com>; Pedro Falcato
> <pedro.falc...@gmail.com>; Wang, Jian J <jian.j.w...@intel.com>; Gao,
> Liming <gaolim...@byosoft.com.cn>; Wu, Hao A <hao.a...@intel.com>; Ni,
> Ray <ray...@intel.com>
> Subject: [PATCH v2 02/12] MdeModulePkg/SataControllerDxe: Log expected
> errors at DEBUG_INFO level
> 
> When a UEFI_DRIVER attempts to open a protocol interface with BY_DRIVER
> attribute that it already has open with BY_DRIVER attribute,
> OpenProtocol() returns EFI_ALREADY_STARTED. This is not an error. The
> UEFI-2.7 spec currently says,
> 
> > EFI_ALREADY_STARTED -- Attributes is BY_DRIVER and there is an item on
> >                        the open list with an attribute of BY_DRIVER
> >                        whose agent handle is the same as AgentHandle.
> 
> Downgrade the log mask for this one condition to DEBUG_INFO, in
> SataControllerStart(). This will match the log mask of the other two
> informative messages in this function.
> 
> (ported from commit 5dfba97)
> 
> Cc: Jian J Wang <jian.j.w...@intel.com>
> Cc: Liming Gao <gaolim...@byosoft.com.cn>
> Cc: Hao A Wu <hao.a...@intel.com>
> Cc: Ray Ni <ray...@intel.com>
> Cc: Laszlo Ersek <ler...@redhat.com>
> Signed-off-by: Pedro Falcato <pedro.falc...@gmail.com>
> ---
>  .../Bus/Pci/SataControllerDxe/SataController.c    | 15 +++++++++++++--
>  1 file changed, 13 insertions(+), 2 deletions(-)
> 
> diff --git a/MdeModulePkg/Bus/Pci/SataControllerDxe/SataController.c
> b/MdeModulePkg/Bus/Pci/SataControllerDxe/SataController.c
> index d67a3e69f649..277bc6182db6 100644
> --- a/MdeModulePkg/Bus/Pci/SataControllerDxe/SataController.c
> +++ b/MdeModulePkg/Bus/Pci/SataControllerDxe/SataController.c
> @@ -358,10 +358,12 @@ SataControllerStart (
>    UINTN                             TotalCount;
>    UINT64                            Supports;
>    UINT8                             MaxPortNumber;
> +  UINTN                             BailLogMask;
> 
>    DEBUG ((DEBUG_INFO, "SataControllerStart start\n"));
> 
> -  Private = NULL;
> +  Private     = NULL;
> +  BailLogMask = DEBUG_ERROR;
> 
>    //
>    // Now test and open PCI I/O Protocol
> @@ -375,6 +377,15 @@ SataControllerStart (
>                    EFI_OPEN_PROTOCOL_BY_DRIVER
>                    );
>    if (EFI_ERROR (Status)) {
> +    if (Status == EFI_ALREADY_STARTED) {
> +      //
> +      // This is an expected condition for OpenProtocol() / BY_DRIVER, in a
> +      // DriverBindingStart() member function; degrade the log mask to
> +      // DEBUG_INFO in order to reduce log pollution.
> +      //
> +      BailLogMask = DEBUG_INFO;
> +    }
> +
>      goto Bail;
>    }
> 
> @@ -555,7 +566,7 @@ FreeSataPrivate:
>  ClosePciIo:
>    gBS->CloseProtocol (Controller, &gEfiPciIoProtocolGuid, This-
> >DriverBindingHandle, Controller);
>  Bail:
> -  DEBUG ((DEBUG_ERROR, "SataControllerStart error return status = %r\n",
> Status));
> +  DEBUG ((BailLogMask, "SataControllerStart error return status = %r\n",
> Status));
>    return Status;
>  }
> 
> --
> 2.40.1



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#104727): https://edk2.groups.io/g/devel/message/104727
Mute This Topic: https://groups.io/mt/98787855/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-


Reply via email to