mirror of
https://github.com/acidanthera/audk.git
synced 2025-07-19 19:54:25 +02:00
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) Signed-off-by: Pedro Falcato <pedro.falcato@gmail.com> Reviewed-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Hao A Wu <hao.a.wu@intel.com>
This commit is contained in:
parent
5e8958472c
commit
897a2b447e
@ -358,10 +358,12 @@ SataControllerStart (
|
||||
UINTN TotalCount;
|
||||
UINT64 Supports;
|
||||
UINT8 MaxPortNumber;
|
||||
UINTN BailLogMask;
|
||||
|
||||
DEBUG ((DEBUG_INFO, "SataControllerStart start\n"));
|
||||
|
||||
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;
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user