Reduce severity of predefined repair messages, Warning to Info.

Since the object was successfully repaired, a Warning is too severe.
Reduced to Info for now. We may eventually change these messages
to debug-only. ACPICA BZ 812.
This commit is contained in:
Robert Moore 2009-10-14 13:32:06 -07:00
parent af0711d385
commit e16dcbba87
4 changed files with 63 additions and 4 deletions

View File

@ -276,14 +276,14 @@ AcpiNsRepairObject (
ReturnObject->Common.ReferenceCount--;
}
ACPI_WARN_PREDEFINED ((AE_INFO, Data->Pathname, Data->NodeFlags,
ACPI_INFO_PREDEFINED ((AE_INFO, Data->Pathname, Data->NodeFlags,
"Converted %s to expected %s at index %u",
AcpiUtGetObjectTypeName (ReturnObject),
AcpiUtGetObjectTypeName (NewObject), PackageIndex));
}
else
{
ACPI_WARN_PREDEFINED ((AE_INFO, Data->Pathname, Data->NodeFlags,
ACPI_INFO_PREDEFINED ((AE_INFO, Data->Pathname, Data->NodeFlags,
"Converted %s to expected %s",
AcpiUtGetObjectTypeName (ReturnObject),
AcpiUtGetObjectTypeName (NewObject)));
@ -347,8 +347,8 @@ AcpiNsRepairPackageList (
*ObjDescPtr = PkgObjDesc;
Data->Flags |= ACPI_OBJECT_REPAIRED;
ACPI_WARN_PREDEFINED ((AE_INFO, Data->Pathname, Data->NodeFlags,
"Incorrectly formed Package, attempting repair"));
ACPI_INFO_PREDEFINED ((AE_INFO, Data->Pathname, Data->NodeFlags,
"Repaired Incorrectly formed Package"));
return (AE_OK);
}

View File

@ -1435,3 +1435,51 @@ AcpiUtPredefinedWarning (
ACPI_COMMON_MSG_SUFFIX;
va_end (args);
}
/*******************************************************************************
*
* FUNCTION: AcpiUtPredefinedInfo
*
* PARAMETERS: ModuleName - Caller's module name (for error output)
* LineNumber - Caller's line number (for error output)
* Pathname - Full pathname to the node
* NodeFlags - From Namespace node for the method/object
* Format - Printf format string + additional args
*
* RETURN: None
*
* DESCRIPTION: Info messages for the predefined validation module. Messages
* are only emitted the first time a problem with a particular
* method/object is detected. This prevents a flood of
* messages for methods that are repeatedly evaluated.
*
******************************************************************************/
void ACPI_INTERNAL_VAR_XFACE
AcpiUtPredefinedInfo (
const char *ModuleName,
UINT32 LineNumber,
char *Pathname,
UINT8 NodeFlags,
const char *Format,
...)
{
va_list args;
/*
* Warning messages for this method/object will be disabled after the
* first time a validation fails or an object is successfully repaired.
*/
if (NodeFlags & ANOBJ_EVALUATED)
{
return;
}
AcpiOsPrintf ("ACPI Info for %s: ", Pathname);
va_start (args, Format);
AcpiOsVprintf (Format, args);
ACPI_COMMON_MSG_SUFFIX;
va_end (args);
}

View File

@ -403,6 +403,7 @@
#define ACPI_ERROR_NAMESPACE(s, e) AcpiNsReportError (AE_INFO, s, e);
#define ACPI_ERROR_METHOD(s, n, p, e) AcpiNsReportMethodError (AE_INFO, s, n, p, e);
#define ACPI_WARN_PREDEFINED(plist) AcpiUtPredefinedWarning plist
#define ACPI_INFO_PREDEFINED(plist) AcpiUtPredefinedInfo plist
#else
@ -411,6 +412,7 @@
#define ACPI_ERROR_NAMESPACE(s, e)
#define ACPI_ERROR_METHOD(s, n, p, e)
#define ACPI_WARN_PREDEFINED(plist)
#define ACPI_INFO_PREDEFINED(plist)
#endif /* ACPI_NO_ERROR_MESSAGES */

View File

@ -795,6 +795,15 @@ AcpiUtPredefinedWarning (
const char *Format,
...);
void ACPI_INTERNAL_VAR_XFACE
AcpiUtPredefinedInfo (
const char *ModuleName,
UINT32 LineNumber,
char *Pathname,
UINT8 NodeFlags,
const char *Format,
...);
/* Values for Base above (16=Hex, 10=Decimal) */
#define ACPI_ANY_BASE 0