diff mbox

klog.json: Update the klog database with more kernel patterns

Message ID 20161216111939.25523-1-colin.king@canonical.com
State Rejected
Headers show

Commit Message

Colin Ian King Dec. 16, 2016, 11:19 a.m. UTC
From: Colin Ian King <colin.king@canonical.com>

Another update to the on-going sync with the 4.9 kernel

Signed-off-by: Colin Ian King <colin.king@canonical.com>
---
 data/klog.json | 834 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 834 insertions(+)

Comments

Colin Ian King Dec. 16, 2016, 11:30 a.m. UTC | #1
Ignore this, I botched it up.

NAK!

On 16/12/16 11:19, Colin King wrote:
> From: Colin Ian King <colin.king@canonical.com>
> 
> Another update to the on-going sync with the 4.9 kernel
> 
> Signed-off-by: Colin Ian King <colin.king@canonical.com>
> ---
>  data/klog.json | 834 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
>  1 file changed, 834 insertions(+)
> 
> diff --git a/data/klog.json b/data/klog.json
> index 2ef5d1a..06f4f40 100644
> --- a/data/klog.json
> +++ b/data/klog.json
> @@ -3,6 +3,840 @@
>   [ 
>    {
>     "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "iort node pointer overflows, bad table",
> +   "advice": "ACPI ARM64 IORT driver detected an IORT node that is outside the ACPI IORT table. The table as been deemed to be broken and has been ignored",
> +   "label": "KlogAcpiIortNodeOutsideTable"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "could not register gsi hwirq",
> +   "advice": "ACPI ARM64 IORT driver failed to register the GSI IRQ",
> +   "label": "KlogAcpiIortIrqRegisterFailed"
> +  },
> +  {
> +   "compare_mode": "regex",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "requested ITS ID index .* is greater than available",
> +   "advice": "ACPI ARM64 IORT driver failed to find a device by an ITS ID but the provided ID index is greater than the available ITS count, driver returned -ENXIO",
> +   "label": "KlogAcpiIortBadItsIdIndex"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "ID map has NULL parent reference",
> +   "advice": "ACPI ARM64 IORT driver failed to get an IORT node ID, the map parent reference was NULL which is indicative of a firmware bug in the ACPI I/O Remapping Table",
> +   "label": "KlogAcpiIortIdMapNull"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "Failed to create AML debugger thread",
> +   "advice": "The ACPI driver debugger failed to create a kernel thread to allow ACPI debugging, debugger failed to start",
> +   "label": "KlogAcpiAmlDebugThreadFailed"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "amba_device_add() failed",
> +   "advice": "ACPI AMBA device ARMH0061 (an ARM PL061 GPIO device) device add failed",
> +   "label": "KlogAcpiAmbaDevAddFailed"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "amba_device_alloc() failed",
> +   "advice": "ACPI AMBA device ARMH0061 (an ARM PL061 GPIO device) device allocate failed",
> +   "label": "KlogAcpiAmbaDevAllocFailed"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "add_memory failed",
> +   "advice": "ACPI memory hot-plug failed to enable a memory device",
> +   "label": "KlogAcpiMemHotPlugAddMemFailed"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_LOW",
> +   "pattern": "Limiting number of LPI states to max",
> +   "advice": "The ACPI C States (_CST) object contains more LPI states than the kernel has configired, so this has been limited to the maximum states allowed by the driver",
> +   "label": "KlogAcpiLpiLimited"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_MEDIUM",
> +   "pattern": "failed to register spa range",
> +   "advice": "The ACPI NFIT driver was unable to register a memory region because of an invalid System Physical Address (SPA)",
> +   "label": "KlogAcpiNfitInvalidSPA"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": ": notification registration failed",
> +   "advice": "The ACPI NFIT driver was unable to install a notify handler for an NFIT NVDIMM device, device was marked as not available",
> +   "label": "KlogAcpiNfitNVDIMM"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_MEDIUM",
> +   "pattern": "Failed to set state by _FSL",
> +   "advice": "The ACPI fan driver could not set the fan speed because the Fan Set Level (_FSL) control failed",
> +   "label": "KlogAcpiFanFslSetFailed"
> +  },
> +  {
> +   "compare_mode": "regex",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "\\[.*:.*\\] Invalid zero length",
> +   "advice": "An ACPI MADT subtable has been found with an invalid zero length. MADT parsing was aborted.",
> +   "label": "KlogAcpiMadtZeroLengthSubTable"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_MEDIUM",
> +   "pattern": "BIOS bug: multiple APIC/MADT found, using",
> +   "advice": "The BIOS is supposed to supply just one APIC/MADT, however, more than one has been found. One can use acpi_apic_instance=N to specify the Nth ACPI/MADT to use as an override if required.",
> +   "label": "KlogAcpiMultipleMadt"
> +  },
> +  {
> +   "compare_mode": "regex",
> +   "log_level": "LOG_LEVEL_LOW",
> +   "pattern": "Override \\[.*\\], this is unsafe: tainting kernel",
> +   "advice": "One or more ACPI tables have been overridden with replacement tables, this sets a taint bit in the kernel since this is an unsafe operation.",
> +   "label": "KlogAcpiKernelTainted"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "ACPI OVERRIDE: Table smaller than ACPI header",
> +   "advice": "An override ACPI table from kernel/firmware/acpi has an invalid ACPI table header size and will be ignored.",
> +   "label": "KlogAcpiInvalidOverrideTable"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "ACPI OVERRIDE: Unknown signature",
> +   "advice": "An override ACPI table has an unknown ACPI table signature and will be ignored.",
> +   "label": "KlogAcpiInvalidOverrideTableSig"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "ACPI OVERRIDE: File length does not match table length",
> +   "advice": "An override ACPI table has an invalid length and will be ignored.",
> +   "label": "KlogAcpiInvalidOverrideTableLength"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "ACPI OVERRIDE: Bad table checksum",
> +   "advice": "An override ACPI table has an invalid checksum and will be ignored.",
> +   "label": "KlogAcpiInvalidOverrideTableChecksum"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_LOW",
> +   "pattern": "Shall use APIC/MADT table",
> +   "advice": "The BIOS is supposed to supply just one APIC/MADT, however, more than one has been found.  Using a specific MADT table.",
> +   "label": "KlogAcpiMadtSelected"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "IRQ method execution failed",
> +   "advice": "The ACPI Generic Eventi Device (GED) Driver failed to execute an _EVT method when handling a GE interrupt in a kernel thread. Note: this error is reported only once, but may be occurring multiple times.",
> +   "label": "KlogAcpiGedIrqExecFailed"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "unable to parse IRQ resource",
> +   "advice": "The ACPI Generic Event Device (GED) Driver failed to get IRQ resources for a GED, the evaluation of an ACPI _CRS object associated with it failed. The device will not be enabled.",
> +   "label": "KlogAcpiGedIrqCrsFailed"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "cannot locate _EVT method",
> +   "advice": "The ACPI Generic Event Device (GED) Driver failed to find the _EVT method associated with the GED. The device will not be enabled.",
> +   "label": "KlogAcpiGedEvtNotAvailable"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "failed to setup event handler for irq",
> +   "advice": "The ACPI Generic Event Device (GED) Driver failed to start a kernel thread to handle the GED events. The device will not be enabled.",
> +   "label": "KlogAcpiGedHandlerFailed"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_MEDIUM",
> +   "pattern": "unable to parse the _CRS record",
> +   "advice": "The ACPI Generic Event Device (GED) Driver failed to parse the _CRS object associated with a GED and hence could not determine the interrupt resources for the device.  he device will not be enabled.",
> +   "label": "KlogAcpiGedCrsFailed"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_LOW",
> +   "pattern": "Misaligned resource pointer (get):",
> +   "advice": "The ACPI driver detected a resource pointer that is not naturally aligned to a 32 bit boundary. This has been automatically fixed and should not cause any issues.",
> +   "label": "KlogAcpiResourceDescriptorError"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_MEDIUM",
> +   "pattern": "Invalid interrupt polarity/trigger in resource list",
> +   "advice": "The ACPI driver detected invalid interrupt polarity/trigger settings in a resource list. Only active high / edge_sensitive and active_low / level_senstive are allowed, so IRQ flags 0x00 and 0x09 are invalid.",
> +   "label": "KlogAcpiResourceDescriptorError"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_MEDIUM",
> +   "pattern": "Invalid DMA.Transfer preference",
> +   "advice": "The ACPI driver detected invalid DMA Transfer preference in a resource list. DMA Transfer preference 0x03 is invalid.",
> +   "label": "KlogAcpiResourceDescriptorError"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_LOW",
> +   "pattern": "Failure in evaluating _TTS object",
> +   "advice": "The APCI Transition To State (_TTS) control failed to be evaluated. This control is executated by the OS when a sleep transition occurs, however, failure to execute this generally is not an issue because firmware generally does not include it and not having it will not break transitioning to sleep states.",
> +   "label": "KlogAcpiSleepEvalTts"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_MEDIUM",
> +   "pattern": "Failure in evaluating _PTS object",
> +   "advice": "The APCI Prepare To State (_PTS) control failed to be evaluated. This control is executated by the OS when a sleep transition occurs, however, failure to execute this generally is not an issue and will not break the transitioning to sleep.",
> +   "label": "KlogAcpiSleepEvalPts"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "ACPI does not support sleep state S",
> +   "advice": "The ACPI driver could not put the machine into the desired sleep state because the sleep state is not suppoted.",
> +   "label": "KlogAcpiSleepStateNoSupport"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "Hardware changed while hibernated, success doubtful",
> +   "advice": "The FACS hardware signature does not match the saved hardware signature. The kernel detected a change in the hardware so the resume from hibernate may not work or be possibly broken.",
> +   "label": "KlogAcpiHibernateHwChange"
> +  },
> +  {
> +   "compare_mode": "regex",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "detected - limiting to C.* max_cstate",
> +   "advice": "The maximum C state has been limited by the ACPI processor idle driver because of a known bug on this platform, for instance, going to a deeper C state can hang the machine. This can be overridden using the kernel parameter processor.max_cstate to set to a deeper C state if required.",
> +   "label": "KlogAcpiIdleMaxCStateLimited"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "ACPI: processor limited to max C-state",
> +   "advice": "The maximum C state is less than the maxium allowed processor C states, so the CPU cannot go into a deep idle C state which means it is not optimally configured for power saving.",
> +   "label": "KlogAcpiIdleMaxCStateLimited"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_MEDIUM",
> +   "pattern": "battery: (dis)charge rate invalid",
> +   "advice": "The ACPI Battery Status (_BST) object is returning an invalid dischar or charge rate.  This can be either a negative 16 bit value or reporing 0 as 65536 because of an invalid calculation in the DSDT. The Linux ACPI battery driver has detected this firmware bug and attempted to work around it.",
> +   "label": "KlogAcpiBstInvalidRate"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "Err sending PCC mbox message. cmd",
> +   "advice": "The ACPI CPPC (Collaborative Processor Performance Control) driver attempted to send a command via the PCC mailbox but it failed to be sent. If this persists then the CPU freq drivers cannot control CPU performance using the _CPC ACPI tables.",
> +   "label": "KlogAcpiCppcSendError"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "Failed to find PCC communication channel",
> +   "advice": "The ACPI CPPC (Collaborative Processor Performance Control) driver could not find the requested PCC communication channel and so the CPU freq driver cannot control CPU performance via the _CPC ACPI tables.  This error occurs because the requested PCC communication channel is not defined in the ACPI Platform Communications Channel Table (PCCT).",
> +   "label": "KlogAcpiPccFailure"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "No PCC subspace found for CPPC",
> +   "advice": "The PCC mailbox controller could not parse the ACPI Pl
> +atform Communications Channel Table (PCCT) and find the PCC subspace communication region. The CPU freq driver cannot control CPU performance via the _CPC ACPI tables.",
> +   "label": "KlogAcpiPccNoSubspace"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "Failed to ioremap PCC comm region mem",
> +   "advice": "The ACPI CPPC driver could not map the PCC subspace communication region, so the CPU freq driver cannot control CPU performance via the _CPC ACPI tables.",
> +   "label": "KlogAcpiCppcIomapFailed"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_CRITICAL",
> +   "pattern": "Failed to parse MCFG",
> +   "advice": "The ACPI MCFG (PCI Express memory mapped configuration space base address Description Table) cannot be parsed (due to an error in the table) and so PCIe memory mapped configuration has failed - expect PCIe devices not to function",
> +   "label": "KlogAcpiMcfgParseFailed"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_LOW",
> +   "pattern": "no secondary bus range in _CRS",
> +   "advice": "ACPI evaluated a _CRS (Current Resource Setting) object to determine the start and end of of a PCI downsteam bus range and did not find the end address, so an end address of 0xff is being assumed",
> +   "label": "KlogAcpiPciCrsNoEndAddr"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_MEDIUM",
> +   "pattern": "failed to parse _CRS method, error code",
> +   "advice": "ACPI tried to evaluateda _CRS (Current Resource Setting) object to determine PCI root resources, but the _CRS object could not be parsed.",
> +   "label": "KlogAcpiPciCrsParseError"
> +  },
> +  {
> +   "compare_mode": "regex",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "found a zero length table .* parsing nfit",
> +   "advice": "An ACPI NVDIMM Firmware Interface Table (NFIT) header indicates a NFIT table has an invalid zero size and has been ignored. This will lead to a NVDIMM not being recognised by the system",
> +   "label": "KlogAcpiNfitZereSize"
> +  },
> +  {
> +   "compare_mode": "regex",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "SPA .* missing DCR",
> +   "advice": "An ACPI NVDIMM Firmware Interface Table (NFIT) Control Region Structure (DCR) is missing a System Physical Address (SPA), NFIT table is incorrect.",
> +   "label": "KlogAcpiNfitDcrSpaError"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "Error installing CMOS-RTC region handler",
> +   "advice": "The ACPI CMOS Real Time Clock (RTC) driver could not install a CMOS address space region handler (this allows CMOS read/writes). This failure has caused the ACPI CMOS RTC functionality to fail",
> +   "label": "KlogAcpiCmosRtcHandler"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "Error removing CMOS-RTC region handler",
> +   "advice": "The ACPI CMOS Real Time Clock (RTC) driver could not remove a CMOS address space region handler",
> +   "label": "KlogAcpiCmosRtcHandler"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "SRAT: SRAT not used",
> +   "advice": "The NUMA affinity configuration could not be determined because of errors in the ACPI SRAT table",
> +   "label": "KlogAcpiSratNotUsed"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_MEDIUM",
> +   "pattern": "SRAT: Failed to mark hotplug range",
> +   "advice": "A hotpluggable memory range failed to be marked as hotpluggable. This generally occurs because the memory range is invalid and may overlap other memory regions.",
> +   "label": "KlogAcpiSratNotUsed"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "SRAT: Unexpected header length",
> +   "advice": "The NUMA affinity configuration could not be determined because the ACPI SRAT table header was the incorrect size.",
> +   "label": "KlogAcpiSratBadHeader"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "SRAT: Too many proximity domains",
> +   "advice": "The NUMA affinity configuration failed because the number of NUMA nodes is greater than the system defined hard limit of 1 << CONFIG_NODES_SHIFT.  The kernel config value for CONFIG_NODES_SHIFT needs to be increased.",
> +   "label": "KlogAcpiSratTooManyNodes"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "SRAT: Failed to add memblk to node",
> +   "advice": "The per-architecture NUMA implementation was unable to add a NUMA memory block to the memory information data structures. This may occur if the node id is more than the maximum system configured number of NUMA nodes or all the allowed memory block ranges are used.",
> +   "label": "KlogAcpiSratMemBlkAddFailed"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "SLIT table looks invalid. Not used",
> +   "advice": "The ACPI SLIT (System Locality Distance Information) is not parsable or looks suspect, NUMA affinity cannot be configured.",
> +   "label": "KlogAcpiSratMemBlkAddFailed"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_LOW",
> +   "pattern": "stale EC events cleared",
> +   "advice": "The ACPI Embedded Controller (EC) driver has cleared the maximum number of pending ACPI _Q events that have accumulated in the EC before giving up. There may be more events pending that have not been cleared.",
> +   "label": "KlogAcpiEcStaleEvents"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_MEDIUM",
> +   "pattern": "failed to remove space handler",
> +   "advice": "The ACPI Embedded Controller (EC) driver failed to remove the EC address space handler.",
> +   "label": "KlogAcpiEcHandlerRemoveFailed"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_MEDIUM",
> +   "pattern": "failed to remove gpe handler",
> +   "advice": "The ACPI Embedded Controller (EC) driver failed to remove the EC General Purpose Events (GPE) handler.",
> +   "label": "KlogAcpiEcHandlerRemoveFailed"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_MEDIUM",
> +   "pattern": "While parsing/handling command line",
> +   "advice": "The ACPI debugger failed to parse the debug command",
> +   "label": "KlogAcpiDbgParseError"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_MEDIUM",
> +   "pattern": "Invalid Reference Class 0x",
> +   "advice": "An ACPI error occurred getting an ACPI object reference. The reference class was not LOCAL, ARG or DEBUG.",
> +   "label": "KlogAcpiRefClassInvalid"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "error while performing ARS to find poison:",
> +   "advice": "The ACPI NFIT (NVDIMM Firmware Interface Table) driver encountered an error while performing Address Range Scrub, so aborting initialization. ARS should never fail.",
> +   "label": "KlogAcpiNfitArsPoison"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_MEDIUM",
> +   "pattern": "Failed to set initial power state",
> +   "advice": "The ACPI fan driver was unable to update the fan device power state",
> +   "label": "KlogAcpiFanPowerState"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_MEDIUM",
> +   "pattern": "Could not start debugger thread",
> +   "advice": "The ACPI debugger could not start a kernel thread to execute a debug command, most probably a kernel resource issue.",
> +   "label": "KlogAcpiDbgThreadErr"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_MEDIUM",
> +   "pattern": "Possible overflow of internal debugger buffer",
> +   "advice": "The ACPI debugger detected a error when evaluating an ACPI object or method, possibly a buffer overflow bug in the ACPI debugger.",
> +   "label": "KlogAcpiDbgBufOverflow"
> +  },
> +  {
> +   "compare_mode": "regex",
> +   "log_level": "LOG_LEVEL_MEDIUM",
> +   "pattern": "while executing .* from debugger",
> +   "advice": "The ACPI debugger detected a error when evaluating an ACPI object or method.",
> +   "label": "KlogAcpiDbgErr"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_LOW",
> +   "pattern": "While parsing method arguments",
> +   "advice": "The ACPI debugger could not parse the debugger command line (incorrect method arguments), most probably a user error.",
> +   "label": "KlogAcpiDbgCmdLine"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_LOW",
> +   "pattern": "While parsing command line",
> +   "advice": "The ACPI debugger could not parse the debugger command line, most probably a user error.",
> +   "label": "KlogAcpiDbgCmdLine"
> +  },
> +  {
> +   "compare_mode": "regex",
> +   "log_level": "LOG_LEVEL_MEDIUM",
> +   "pattern": "(.*): Object must be a control method",
> +   "advice": "An error occurred disassembling an ACPI method, the namespace node was not an ACPI method.",
> +   "label": "KlogAcpiObjNotControlMethod"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_MEDIUM",
> +   "pattern": "Target must be [Buffer/Integer/String/Reference]",
> +   "advice": "An error occurred storing an ACPI object that was not the expected object type of ACPU buffer, integer, string or reference.",
> +   "label": "KlogAcpiObjStoreInvalidSrcType"
> +  },
> +  {
> +   "compare_mode": "regex",
> +   "log_level": "LOG_LEVEL_MEDIUM",
> +   "pattern": "Cannot assign type .* to .*source must be type Pkg",
> +   "advice": "An error occurred storing an ACPI object that was not an ACPI package to a named object that was an ACPI package, this is not allowed.",
> +   "label": "KlogAcpiObjStoreInvalidSrcType"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_MEDIUM",
> +   "pattern": "Invalid _FIT",
> +   "advice": "ACPI _FIT (Firmware Interface Table) method returned an object that was not the expected ACPI buffer object type.",
> +   "label": "KlogAcpiInvalidFitObject"
> +  },
> +  {
> +   "compare_mode": "regex",
> +   "log_level": "LOG_LEVEL_MEDIUM",
> +   "pattern": "Target is not of type .*Package.*BufferField",
> +   "advice": "ACPI execution engine failed to store a value in an ACPI buffer or Package Element because the destination type was incorrect. The AML code in the firmware has a bug.",
> +   "label": "KlogAcpiInvalidDestinationType"
> +  },
> +  {
> +   "compare_mode": "regex",
> +   "log_level": "LOG_LEVEL_MEDIUM",
> +   "pattern": "Source must be type .*Integer.*Buffer.*String.*, found",
> +   "advice": "ACPI execution engine failed to store a value in an ACPI buffer or Package Element because the source type was incorrect. The AML code in the firmware has a bug.",
> +   "label": "KlogAcpiInvalidSourceType"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_MEDIUM",
> +   "pattern": "During invocation of sleep state",
> +   "advice": "Invoking one of the ACPI sleep states (S0 through to S5) failed to complete, either when trying to transition to the sleep state or returning from it.",
> +   "label": "KlogAcpiSleepError"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_MEDIUM",
> +   "pattern": "No IRQ available for",
> +   "advice": "The ACPI driver failed to allocate an IRQ to a PCI link, possibly because of prevous IRQ allocations that have precedence. A workaround is to use kernel parameter pci=noacpi or acpi=off",
> +   "label": "KlogAcpiPciLinkIrq"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_MEDIUM",
> +   "pattern": "ACPI: Invalid data",
> +   "advice": "ACPI _BCL method (Query List of Brightness Control Levels Supported) returned a package that did not contain integer brightness levels",
> +   "label": "KlogAcpiBclInvalidData"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "failed to merge updated NFIT",
> +   "advice": "ACPI NFIT driver failed to merge the new NFIT from the _FIT object and resorted to using the previous (old) one instead",
> +   "label": "KlogAcpiNfitMergeError"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "failed to evaluate _FIT",
> +   "advice": "ACPI NFIT driver failed to evaluate the _FIT (Firmware Interface Table) object and no buffer was returned causing the NFIT notify event to fail",
> +   "label": "KlogAcpiFitEvalError"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "error initializing acpi_desc:",
> +   "advice": "ACPI NFIT driver failed to initialize, either because it was out of memory (unlikely) or the NVDIMM bus failed to register",
> +   "label": "KlogAcpiNfitInitFail"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "new nfit deletes entries",
> +   "advice": "ACPI NFIT driver could not delete NFIT structure entries, this is funcionality is not currently supported by the ACPI NFIT driver",
> +   "label": "KlogAcpiNfitDeleteNoSupport"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "failed to find NFIT",
> +   "advice": "ACPI NFIT driver could not find an ACPI NFIT table",
> +   "label": "KlogAcpiNfitNoTable"
> +  },
> +  {
> +   "compare_mode": "regex",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "spa.* exceeds max mappings",
> +   "advice": "ACPI NFIT driver failed to make a NFIT DIMM mapping, exceeded the configured maximum allowed",
> +   "label": "KlogAcpiNfitMappingsExceeded"
> +  },
> +  {
> +   "compare_mode": "regex",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "spa.* dimm: .* not found",
> +   "advice": "ACPI NFIT driver could not map a NFIT DIMM, device is not enabled.",
> +   "label": "KlogAcpiNfitDimmNotFound"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "failed to find DCR",
> +   "advice": "ACPI NFIT driver could not find a Device Control Region for a DIMM, device is not enabled.",
> +   "label": "KlogAcpiNfitNoDcr"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_MEDIUM",
> +   "pattern": "duplicate DCR detected:",
> +   "advice": "ACPI NFIT driver found multiple Device Control Regions for a DIMM, the first one found was selected.",
> +   "label": "KlogAcpiNfitDuplicateDcr"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "failed to retrieve_STA, disabling...",
> +   "advice": "ACPI NFIT driver could not evaluate the _STA object for an NFIT device, so it was not enabled",
> +   "label": "KlogAcpiNfitNoAddr"
> +  },
> +  {
> +   "compare_mode": "regex",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "no ACPI.NFIT device with _ADR .*, disabling...",
> +   "advice": "ACPI NFIT driver could not find a child device with a specific address, so it was not enabled",
> +   "label": "KlogAcpiNfitNoAddr"
> +  },
> +  {
> +   "compare_mode": "regex",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "unknown table .* parsing nfit",
> +   "advice": "ACPI NFIT driver found an unknown NFIT structure type and cannot parse this particular NFIT structure",
> +   "label": "KlogAcpiNfitInvalidType"
> +  },
> +  {
> +   "compare_mode": "regex",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "underrun cmd: .* buf_len: .* out_len:",
> +   "advice": "ACPI NFIT driver could not send a control message, output buffer overran",
> +   "label": "KlogAcpiNfit"
> +  },
> +  {
> +   "compare_mode": "regex",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "ACPI Table .* OEM:.* not found in RSDT/XSDT",
> +   "advice": "ACPI could not found a specified ACPI table while evaluating table region operands. The table does not exist in the RSDT or XSDT table pointers",
> +   "label": "KlogAcpiTableNotFound"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "[DSDT] table load failed",
> +   "advice": "ACPI was unable to load the DSDT, system will be missing AML from the Differentiated System Description Table",
> +   "label": "KlogAcpiDSDTLoadFailed"
> +  },
> +  {
> +   "compare_mode": "regex",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "(.*:.*) while loading table",
> +   "advice": "ACPI was unable to load an ACPI table, an ACPI exception occurred trying to load it",
> +   "label": "KlogAcpiTableLoadFailed"
> +  },
> +  {
> +   "compare_mode": "regex",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": ".* table load failures, .* successful",
> +   "advice": "ACPI was unable to load one or more ACPI tables",
> +   "label": "KlogAcpiTableLoadFailed"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "Node is unresolved or uninitialized",
> +   "advice": "Internal ACPI error while trying to resolve an ACPI object node",
> +   "label": "KlogAcpiNodeError"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "fan state failed",
> +   "advice": "ACPI could not evaluate the fan state via the _FST object, perhaps this object does not exist or the object fails to evaluate correctly.",
> +   "label": "KlogAcpiGetFanState"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "Invalid _FST data",
> +   "advice": "ACPI could not evaluate the fan state via the _FST object, one of the elements in the package may be an incorrect ACPI type.",
> +   "label": "KlogAcpiGetFanStateBadData"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "Invalid _FIF data",
> +   "advice": "ACPI could not evaluate the fan device information via the _FIF object, the returned object was not an ACPI package as expected.",
> +   "label": "KlogAcpiGetFanInfo"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "Invalid _FIF element",
> +   "advice": "ACPI could not evaluate the fan device information via the _FIF object, the returned package contained an element that was not of the correct ACPI type.",
> +   "label": "KlogAcpiGetFanInfoBadData"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "Invalid _FPS data",
> +   "advice": "ACPI could not evaluate the fan device information via the _FPS object, the returned object was not an ACPI package as expected.",
> +   "label": "KlogAcpiGetFanDevInfo"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "Invalid _FPS element",
> +   "advice": "ACPI could not evaluate the fan device information via the _FPS object, the returned package contained an element that was not of the correct ACPI type.",
> +   "label": "KlogAcpiGetFanDevInfoBadData"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "No memory for fan",
> +   "advice": "ACPI failed to create an ACPI fan device, there was not enough memory to allocate the device.",
> +   "label": "KlogAcpiFanNoMem"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "Invalid _FIF element",
> +   "advice": "ACPI could not evaluate the fan state via the _FST object, one of the elements in the package may be an incorrect ACPI type.",
> +   "label": "KlogAcpiGetFanStateBadData"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "Could not acquire table length at",
> +   "advice": "ACPI could not determine the length of an ACPI table. This can occur, for example, if the table cannot be mapped into memory or the header is corrupted or non-standard.",
> +   "label": "KlogAcpiTableLength"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "Attempted table install failed",
> +   "advice": "An ACPI table could not be installed because the checksum was invalid.",
> +   "label": "KlogAcpiTableInstall"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "Evaluating _STA",
> +   "advice": "The ACPI method _STA (Status) failed to evaluate. This may cause some device drivers to not function as expected, for example, this error is reported when the ACPI battery status cannot be evaluated and so the battery updates will not function.",
> +   "label": "KlogAcpiSTAEval"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "Circular handler list in region object",
> +   "advice": "Internal corruption to the ACPI region handler list has occurred and ACPI has detected this issue while detaching a region and aborted an infinite loop while attempting to traverse the list. This has been known to occur with some firmware tripping a possible internal ACPI bug.",
> +   "label": "KlogAcpiCircularList"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "Circular region list in address handler object",
> +   "advice": "Internal corruption to the ACPI region handler list has occurred and ACPI has detected this issue during deletion of a region object and aborted an infinite loop while attempting to traverse the list. This has been known to occur with some firmware tripping a possible internal ACPI bug.",
> +   "label": "KlogAcpiCircularList"
> +  },
> +  {
> +   "compare_mode": "regex",
> +   "log_level": "LOG_LEVEL_MEDIUM",
> +   "pattern": "Path has too many parent prefixes.*reached beyond root node",
> +   "advice": "The firmware specified an ACPI path using too many parent ^ prefixes and reached a point where thare are no parent nodes in the hierarchy and so the referenced object could not be found.  The kernel cannot find the named object because of this bug in the firmware and this may lead to broken or misbehaving behaviour.",
> +   "label": "KlogAcpiPathTooManyParentPrefixes"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_LOW",
> +   "pattern": "mem=nopentium ignored! (only supported on x86_32)",
> +   "advice": "The kernel parameter mem=nopentium (to disable 4MB pages) was ignored as it only applies to 32 bit x86 systems.",
> +   "label": "KlogE8320BiosKernelParameter"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_LOW",
> +   "pattern": "apm: Could not register misc device",
> +   "advice": "APM misc device could not be registered. However, the driver can work without this, but userspace cannot control it.",
> +   "label": "KlogBiosApmMiscDevice"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_LOW",
> +   "pattern": "Could not allocate an object descriptor",
> +   "advice": "The ACPI driver was unable to allocate an object descriptor from the ACPI global operand cache, see acpi_ut_allocate_object_desc_dbg().",
> +   "label": "KlogAcpiAllocObjDescriptor"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "Oops, ACPI handle corrupt in",
> +   "advice": "An error occurred attempting to get an ACPI handle from a kernel device structure.  The handle appears to be corrupt and invalid, so the unbinding of links to the device could not be actioned. See acpi_unbind_one(). This could be due to an ACPI kernel bug or a genenal memory corruption issue.",
> +   "label": "KlogAcpiHandleCorrupt"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_MEDIUM",
> +   "pattern": "Failed to create link",
> +   "advice": "The ACPI driver failed to create a sysfs link on a firmware node.  Depending on the firmware node this may impede userspace from interfacing with the firmware.  See acpi_bind_one().",
> +   "label": "KlogAcpiSysfsCreateLinkFailed"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "No memory for resources",
> +   "advice": "An out of memory error occurred attempting to allocate resources while creating a platform device for an ACPI device node.",
> +   "label": "KlogAcpiPlatformDeviceNoMemory"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_MEDIUM",
> +   "pattern": "kset create error",
> +   "advice": "The ACPI initialization failed to create the acpi_kobj kobject and so it won't appear in /sys/firmware. This may cause some user space applications difficulties if this is not created and populated. See acpi_init().",
> +   "label": "KlogAcpiSysfsFirmwareNotCreated"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_MEDIUM",
> +   "pattern": "Error creating sysfs interface for device ",
> +   "advice": "An error occurred when adding a new ACPI device and the sysfs interface could not be created.",
> +   "label": "KlogAcpiSysfsDeviceInterfaceFailed"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "Error registering device",
> +   "advice": "An error occurred when adding a new ACPI device, the device registration failed. See acpi_device_add().",
> +   "label": "KlogAcpi"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "Failed to initialize debugger",
> +   "advice": "The ACPI driver debugger failed to initialize, debugger failed to start",
> +   "label": "KlogAcpiAmlDebugInitFiled"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "Failed to create AML debugger thread",
> +   "advice": "The ACPI driver debugger failed to create a kernel thread to allow ACPI debugging, debugger failed to start",
> +   "label": "KlogAcpiAmlDebugThreadFailed"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "amba_device_add() failed",
> +   "advice": "ACPI AMBA device ARMH0061 (an ARM PL061 GPIO device) device add failed",
> +   "label": "KlogAcpiAmbaDevAddFailed"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "amba_device_alloc() failed",
> +   "advice": "ACPI AMBA device ARMH0061 (an ARM PL061 GPIO device) device allocate failed",
> +   "label": "KlogAcpiAmbaDevAllocFailed"
> +  },
> +  {
> +   "compare_mode": "string",
> +   "log_level": "LOG_LEVEL_HIGH",
> +   "pattern": "add_memory failed",
> +   "advice": "ACPI memory hot-plug failed to enable a memory device",
> +   "label": "KlogAcpiMemHotPlugAddMemFailed"
> +  },
> +  {
> +   "compare_mode": "string",
>     "log_level": "LOG_LEVEL_LOW",
>     "pattern": "Limiting number of LPI states to max",
>     "advice": "The ACPI C States (_CST) object contains more LPI states than the kernel has configired, so this has been limited to the maximum states allowed by the driver",
>
diff mbox

Patch

diff --git a/data/klog.json b/data/klog.json
index 2ef5d1a..06f4f40 100644
--- a/data/klog.json
+++ b/data/klog.json
@@ -3,6 +3,840 @@ 
  [ 
   {
    "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "iort node pointer overflows, bad table",
+   "advice": "ACPI ARM64 IORT driver detected an IORT node that is outside the ACPI IORT table. The table as been deemed to be broken and has been ignored",
+   "label": "KlogAcpiIortNodeOutsideTable"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "could not register gsi hwirq",
+   "advice": "ACPI ARM64 IORT driver failed to register the GSI IRQ",
+   "label": "KlogAcpiIortIrqRegisterFailed"
+  },
+  {
+   "compare_mode": "regex",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "requested ITS ID index .* is greater than available",
+   "advice": "ACPI ARM64 IORT driver failed to find a device by an ITS ID but the provided ID index is greater than the available ITS count, driver returned -ENXIO",
+   "label": "KlogAcpiIortBadItsIdIndex"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "ID map has NULL parent reference",
+   "advice": "ACPI ARM64 IORT driver failed to get an IORT node ID, the map parent reference was NULL which is indicative of a firmware bug in the ACPI I/O Remapping Table",
+   "label": "KlogAcpiIortIdMapNull"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "Failed to create AML debugger thread",
+   "advice": "The ACPI driver debugger failed to create a kernel thread to allow ACPI debugging, debugger failed to start",
+   "label": "KlogAcpiAmlDebugThreadFailed"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "amba_device_add() failed",
+   "advice": "ACPI AMBA device ARMH0061 (an ARM PL061 GPIO device) device add failed",
+   "label": "KlogAcpiAmbaDevAddFailed"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "amba_device_alloc() failed",
+   "advice": "ACPI AMBA device ARMH0061 (an ARM PL061 GPIO device) device allocate failed",
+   "label": "KlogAcpiAmbaDevAllocFailed"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "add_memory failed",
+   "advice": "ACPI memory hot-plug failed to enable a memory device",
+   "label": "KlogAcpiMemHotPlugAddMemFailed"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_LOW",
+   "pattern": "Limiting number of LPI states to max",
+   "advice": "The ACPI C States (_CST) object contains more LPI states than the kernel has configired, so this has been limited to the maximum states allowed by the driver",
+   "label": "KlogAcpiLpiLimited"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_MEDIUM",
+   "pattern": "failed to register spa range",
+   "advice": "The ACPI NFIT driver was unable to register a memory region because of an invalid System Physical Address (SPA)",
+   "label": "KlogAcpiNfitInvalidSPA"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": ": notification registration failed",
+   "advice": "The ACPI NFIT driver was unable to install a notify handler for an NFIT NVDIMM device, device was marked as not available",
+   "label": "KlogAcpiNfitNVDIMM"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_MEDIUM",
+   "pattern": "Failed to set state by _FSL",
+   "advice": "The ACPI fan driver could not set the fan speed because the Fan Set Level (_FSL) control failed",
+   "label": "KlogAcpiFanFslSetFailed"
+  },
+  {
+   "compare_mode": "regex",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "\\[.*:.*\\] Invalid zero length",
+   "advice": "An ACPI MADT subtable has been found with an invalid zero length. MADT parsing was aborted.",
+   "label": "KlogAcpiMadtZeroLengthSubTable"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_MEDIUM",
+   "pattern": "BIOS bug: multiple APIC/MADT found, using",
+   "advice": "The BIOS is supposed to supply just one APIC/MADT, however, more than one has been found. One can use acpi_apic_instance=N to specify the Nth ACPI/MADT to use as an override if required.",
+   "label": "KlogAcpiMultipleMadt"
+  },
+  {
+   "compare_mode": "regex",
+   "log_level": "LOG_LEVEL_LOW",
+   "pattern": "Override \\[.*\\], this is unsafe: tainting kernel",
+   "advice": "One or more ACPI tables have been overridden with replacement tables, this sets a taint bit in the kernel since this is an unsafe operation.",
+   "label": "KlogAcpiKernelTainted"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "ACPI OVERRIDE: Table smaller than ACPI header",
+   "advice": "An override ACPI table from kernel/firmware/acpi has an invalid ACPI table header size and will be ignored.",
+   "label": "KlogAcpiInvalidOverrideTable"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "ACPI OVERRIDE: Unknown signature",
+   "advice": "An override ACPI table has an unknown ACPI table signature and will be ignored.",
+   "label": "KlogAcpiInvalidOverrideTableSig"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "ACPI OVERRIDE: File length does not match table length",
+   "advice": "An override ACPI table has an invalid length and will be ignored.",
+   "label": "KlogAcpiInvalidOverrideTableLength"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "ACPI OVERRIDE: Bad table checksum",
+   "advice": "An override ACPI table has an invalid checksum and will be ignored.",
+   "label": "KlogAcpiInvalidOverrideTableChecksum"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_LOW",
+   "pattern": "Shall use APIC/MADT table",
+   "advice": "The BIOS is supposed to supply just one APIC/MADT, however, more than one has been found.  Using a specific MADT table.",
+   "label": "KlogAcpiMadtSelected"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "IRQ method execution failed",
+   "advice": "The ACPI Generic Eventi Device (GED) Driver failed to execute an _EVT method when handling a GE interrupt in a kernel thread. Note: this error is reported only once, but may be occurring multiple times.",
+   "label": "KlogAcpiGedIrqExecFailed"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "unable to parse IRQ resource",
+   "advice": "The ACPI Generic Event Device (GED) Driver failed to get IRQ resources for a GED, the evaluation of an ACPI _CRS object associated with it failed. The device will not be enabled.",
+   "label": "KlogAcpiGedIrqCrsFailed"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "cannot locate _EVT method",
+   "advice": "The ACPI Generic Event Device (GED) Driver failed to find the _EVT method associated with the GED. The device will not be enabled.",
+   "label": "KlogAcpiGedEvtNotAvailable"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "failed to setup event handler for irq",
+   "advice": "The ACPI Generic Event Device (GED) Driver failed to start a kernel thread to handle the GED events. The device will not be enabled.",
+   "label": "KlogAcpiGedHandlerFailed"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_MEDIUM",
+   "pattern": "unable to parse the _CRS record",
+   "advice": "The ACPI Generic Event Device (GED) Driver failed to parse the _CRS object associated with a GED and hence could not determine the interrupt resources for the device.  he device will not be enabled.",
+   "label": "KlogAcpiGedCrsFailed"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_LOW",
+   "pattern": "Misaligned resource pointer (get):",
+   "advice": "The ACPI driver detected a resource pointer that is not naturally aligned to a 32 bit boundary. This has been automatically fixed and should not cause any issues.",
+   "label": "KlogAcpiResourceDescriptorError"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_MEDIUM",
+   "pattern": "Invalid interrupt polarity/trigger in resource list",
+   "advice": "The ACPI driver detected invalid interrupt polarity/trigger settings in a resource list. Only active high / edge_sensitive and active_low / level_senstive are allowed, so IRQ flags 0x00 and 0x09 are invalid.",
+   "label": "KlogAcpiResourceDescriptorError"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_MEDIUM",
+   "pattern": "Invalid DMA.Transfer preference",
+   "advice": "The ACPI driver detected invalid DMA Transfer preference in a resource list. DMA Transfer preference 0x03 is invalid.",
+   "label": "KlogAcpiResourceDescriptorError"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_LOW",
+   "pattern": "Failure in evaluating _TTS object",
+   "advice": "The APCI Transition To State (_TTS) control failed to be evaluated. This control is executated by the OS when a sleep transition occurs, however, failure to execute this generally is not an issue because firmware generally does not include it and not having it will not break transitioning to sleep states.",
+   "label": "KlogAcpiSleepEvalTts"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_MEDIUM",
+   "pattern": "Failure in evaluating _PTS object",
+   "advice": "The APCI Prepare To State (_PTS) control failed to be evaluated. This control is executated by the OS when a sleep transition occurs, however, failure to execute this generally is not an issue and will not break the transitioning to sleep.",
+   "label": "KlogAcpiSleepEvalPts"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "ACPI does not support sleep state S",
+   "advice": "The ACPI driver could not put the machine into the desired sleep state because the sleep state is not suppoted.",
+   "label": "KlogAcpiSleepStateNoSupport"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "Hardware changed while hibernated, success doubtful",
+   "advice": "The FACS hardware signature does not match the saved hardware signature. The kernel detected a change in the hardware so the resume from hibernate may not work or be possibly broken.",
+   "label": "KlogAcpiHibernateHwChange"
+  },
+  {
+   "compare_mode": "regex",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "detected - limiting to C.* max_cstate",
+   "advice": "The maximum C state has been limited by the ACPI processor idle driver because of a known bug on this platform, for instance, going to a deeper C state can hang the machine. This can be overridden using the kernel parameter processor.max_cstate to set to a deeper C state if required.",
+   "label": "KlogAcpiIdleMaxCStateLimited"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "ACPI: processor limited to max C-state",
+   "advice": "The maximum C state is less than the maxium allowed processor C states, so the CPU cannot go into a deep idle C state which means it is not optimally configured for power saving.",
+   "label": "KlogAcpiIdleMaxCStateLimited"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_MEDIUM",
+   "pattern": "battery: (dis)charge rate invalid",
+   "advice": "The ACPI Battery Status (_BST) object is returning an invalid dischar or charge rate.  This can be either a negative 16 bit value or reporing 0 as 65536 because of an invalid calculation in the DSDT. The Linux ACPI battery driver has detected this firmware bug and attempted to work around it.",
+   "label": "KlogAcpiBstInvalidRate"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "Err sending PCC mbox message. cmd",
+   "advice": "The ACPI CPPC (Collaborative Processor Performance Control) driver attempted to send a command via the PCC mailbox but it failed to be sent. If this persists then the CPU freq drivers cannot control CPU performance using the _CPC ACPI tables.",
+   "label": "KlogAcpiCppcSendError"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "Failed to find PCC communication channel",
+   "advice": "The ACPI CPPC (Collaborative Processor Performance Control) driver could not find the requested PCC communication channel and so the CPU freq driver cannot control CPU performance via the _CPC ACPI tables.  This error occurs because the requested PCC communication channel is not defined in the ACPI Platform Communications Channel Table (PCCT).",
+   "label": "KlogAcpiPccFailure"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "No PCC subspace found for CPPC",
+   "advice": "The PCC mailbox controller could not parse the ACPI Pl
+atform Communications Channel Table (PCCT) and find the PCC subspace communication region. The CPU freq driver cannot control CPU performance via the _CPC ACPI tables.",
+   "label": "KlogAcpiPccNoSubspace"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "Failed to ioremap PCC comm region mem",
+   "advice": "The ACPI CPPC driver could not map the PCC subspace communication region, so the CPU freq driver cannot control CPU performance via the _CPC ACPI tables.",
+   "label": "KlogAcpiCppcIomapFailed"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_CRITICAL",
+   "pattern": "Failed to parse MCFG",
+   "advice": "The ACPI MCFG (PCI Express memory mapped configuration space base address Description Table) cannot be parsed (due to an error in the table) and so PCIe memory mapped configuration has failed - expect PCIe devices not to function",
+   "label": "KlogAcpiMcfgParseFailed"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_LOW",
+   "pattern": "no secondary bus range in _CRS",
+   "advice": "ACPI evaluated a _CRS (Current Resource Setting) object to determine the start and end of of a PCI downsteam bus range and did not find the end address, so an end address of 0xff is being assumed",
+   "label": "KlogAcpiPciCrsNoEndAddr"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_MEDIUM",
+   "pattern": "failed to parse _CRS method, error code",
+   "advice": "ACPI tried to evaluateda _CRS (Current Resource Setting) object to determine PCI root resources, but the _CRS object could not be parsed.",
+   "label": "KlogAcpiPciCrsParseError"
+  },
+  {
+   "compare_mode": "regex",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "found a zero length table .* parsing nfit",
+   "advice": "An ACPI NVDIMM Firmware Interface Table (NFIT) header indicates a NFIT table has an invalid zero size and has been ignored. This will lead to a NVDIMM not being recognised by the system",
+   "label": "KlogAcpiNfitZereSize"
+  },
+  {
+   "compare_mode": "regex",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "SPA .* missing DCR",
+   "advice": "An ACPI NVDIMM Firmware Interface Table (NFIT) Control Region Structure (DCR) is missing a System Physical Address (SPA), NFIT table is incorrect.",
+   "label": "KlogAcpiNfitDcrSpaError"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "Error installing CMOS-RTC region handler",
+   "advice": "The ACPI CMOS Real Time Clock (RTC) driver could not install a CMOS address space region handler (this allows CMOS read/writes). This failure has caused the ACPI CMOS RTC functionality to fail",
+   "label": "KlogAcpiCmosRtcHandler"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "Error removing CMOS-RTC region handler",
+   "advice": "The ACPI CMOS Real Time Clock (RTC) driver could not remove a CMOS address space region handler",
+   "label": "KlogAcpiCmosRtcHandler"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "SRAT: SRAT not used",
+   "advice": "The NUMA affinity configuration could not be determined because of errors in the ACPI SRAT table",
+   "label": "KlogAcpiSratNotUsed"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_MEDIUM",
+   "pattern": "SRAT: Failed to mark hotplug range",
+   "advice": "A hotpluggable memory range failed to be marked as hotpluggable. This generally occurs because the memory range is invalid and may overlap other memory regions.",
+   "label": "KlogAcpiSratNotUsed"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "SRAT: Unexpected header length",
+   "advice": "The NUMA affinity configuration could not be determined because the ACPI SRAT table header was the incorrect size.",
+   "label": "KlogAcpiSratBadHeader"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "SRAT: Too many proximity domains",
+   "advice": "The NUMA affinity configuration failed because the number of NUMA nodes is greater than the system defined hard limit of 1 << CONFIG_NODES_SHIFT.  The kernel config value for CONFIG_NODES_SHIFT needs to be increased.",
+   "label": "KlogAcpiSratTooManyNodes"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "SRAT: Failed to add memblk to node",
+   "advice": "The per-architecture NUMA implementation was unable to add a NUMA memory block to the memory information data structures. This may occur if the node id is more than the maximum system configured number of NUMA nodes or all the allowed memory block ranges are used.",
+   "label": "KlogAcpiSratMemBlkAddFailed"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "SLIT table looks invalid. Not used",
+   "advice": "The ACPI SLIT (System Locality Distance Information) is not parsable or looks suspect, NUMA affinity cannot be configured.",
+   "label": "KlogAcpiSratMemBlkAddFailed"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_LOW",
+   "pattern": "stale EC events cleared",
+   "advice": "The ACPI Embedded Controller (EC) driver has cleared the maximum number of pending ACPI _Q events that have accumulated in the EC before giving up. There may be more events pending that have not been cleared.",
+   "label": "KlogAcpiEcStaleEvents"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_MEDIUM",
+   "pattern": "failed to remove space handler",
+   "advice": "The ACPI Embedded Controller (EC) driver failed to remove the EC address space handler.",
+   "label": "KlogAcpiEcHandlerRemoveFailed"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_MEDIUM",
+   "pattern": "failed to remove gpe handler",
+   "advice": "The ACPI Embedded Controller (EC) driver failed to remove the EC General Purpose Events (GPE) handler.",
+   "label": "KlogAcpiEcHandlerRemoveFailed"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_MEDIUM",
+   "pattern": "While parsing/handling command line",
+   "advice": "The ACPI debugger failed to parse the debug command",
+   "label": "KlogAcpiDbgParseError"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_MEDIUM",
+   "pattern": "Invalid Reference Class 0x",
+   "advice": "An ACPI error occurred getting an ACPI object reference. The reference class was not LOCAL, ARG or DEBUG.",
+   "label": "KlogAcpiRefClassInvalid"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "error while performing ARS to find poison:",
+   "advice": "The ACPI NFIT (NVDIMM Firmware Interface Table) driver encountered an error while performing Address Range Scrub, so aborting initialization. ARS should never fail.",
+   "label": "KlogAcpiNfitArsPoison"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_MEDIUM",
+   "pattern": "Failed to set initial power state",
+   "advice": "The ACPI fan driver was unable to update the fan device power state",
+   "label": "KlogAcpiFanPowerState"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_MEDIUM",
+   "pattern": "Could not start debugger thread",
+   "advice": "The ACPI debugger could not start a kernel thread to execute a debug command, most probably a kernel resource issue.",
+   "label": "KlogAcpiDbgThreadErr"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_MEDIUM",
+   "pattern": "Possible overflow of internal debugger buffer",
+   "advice": "The ACPI debugger detected a error when evaluating an ACPI object or method, possibly a buffer overflow bug in the ACPI debugger.",
+   "label": "KlogAcpiDbgBufOverflow"
+  },
+  {
+   "compare_mode": "regex",
+   "log_level": "LOG_LEVEL_MEDIUM",
+   "pattern": "while executing .* from debugger",
+   "advice": "The ACPI debugger detected a error when evaluating an ACPI object or method.",
+   "label": "KlogAcpiDbgErr"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_LOW",
+   "pattern": "While parsing method arguments",
+   "advice": "The ACPI debugger could not parse the debugger command line (incorrect method arguments), most probably a user error.",
+   "label": "KlogAcpiDbgCmdLine"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_LOW",
+   "pattern": "While parsing command line",
+   "advice": "The ACPI debugger could not parse the debugger command line, most probably a user error.",
+   "label": "KlogAcpiDbgCmdLine"
+  },
+  {
+   "compare_mode": "regex",
+   "log_level": "LOG_LEVEL_MEDIUM",
+   "pattern": "(.*): Object must be a control method",
+   "advice": "An error occurred disassembling an ACPI method, the namespace node was not an ACPI method.",
+   "label": "KlogAcpiObjNotControlMethod"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_MEDIUM",
+   "pattern": "Target must be [Buffer/Integer/String/Reference]",
+   "advice": "An error occurred storing an ACPI object that was not the expected object type of ACPU buffer, integer, string or reference.",
+   "label": "KlogAcpiObjStoreInvalidSrcType"
+  },
+  {
+   "compare_mode": "regex",
+   "log_level": "LOG_LEVEL_MEDIUM",
+   "pattern": "Cannot assign type .* to .*source must be type Pkg",
+   "advice": "An error occurred storing an ACPI object that was not an ACPI package to a named object that was an ACPI package, this is not allowed.",
+   "label": "KlogAcpiObjStoreInvalidSrcType"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_MEDIUM",
+   "pattern": "Invalid _FIT",
+   "advice": "ACPI _FIT (Firmware Interface Table) method returned an object that was not the expected ACPI buffer object type.",
+   "label": "KlogAcpiInvalidFitObject"
+  },
+  {
+   "compare_mode": "regex",
+   "log_level": "LOG_LEVEL_MEDIUM",
+   "pattern": "Target is not of type .*Package.*BufferField",
+   "advice": "ACPI execution engine failed to store a value in an ACPI buffer or Package Element because the destination type was incorrect. The AML code in the firmware has a bug.",
+   "label": "KlogAcpiInvalidDestinationType"
+  },
+  {
+   "compare_mode": "regex",
+   "log_level": "LOG_LEVEL_MEDIUM",
+   "pattern": "Source must be type .*Integer.*Buffer.*String.*, found",
+   "advice": "ACPI execution engine failed to store a value in an ACPI buffer or Package Element because the source type was incorrect. The AML code in the firmware has a bug.",
+   "label": "KlogAcpiInvalidSourceType"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_MEDIUM",
+   "pattern": "During invocation of sleep state",
+   "advice": "Invoking one of the ACPI sleep states (S0 through to S5) failed to complete, either when trying to transition to the sleep state or returning from it.",
+   "label": "KlogAcpiSleepError"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_MEDIUM",
+   "pattern": "No IRQ available for",
+   "advice": "The ACPI driver failed to allocate an IRQ to a PCI link, possibly because of prevous IRQ allocations that have precedence. A workaround is to use kernel parameter pci=noacpi or acpi=off",
+   "label": "KlogAcpiPciLinkIrq"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_MEDIUM",
+   "pattern": "ACPI: Invalid data",
+   "advice": "ACPI _BCL method (Query List of Brightness Control Levels Supported) returned a package that did not contain integer brightness levels",
+   "label": "KlogAcpiBclInvalidData"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "failed to merge updated NFIT",
+   "advice": "ACPI NFIT driver failed to merge the new NFIT from the _FIT object and resorted to using the previous (old) one instead",
+   "label": "KlogAcpiNfitMergeError"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "failed to evaluate _FIT",
+   "advice": "ACPI NFIT driver failed to evaluate the _FIT (Firmware Interface Table) object and no buffer was returned causing the NFIT notify event to fail",
+   "label": "KlogAcpiFitEvalError"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "error initializing acpi_desc:",
+   "advice": "ACPI NFIT driver failed to initialize, either because it was out of memory (unlikely) or the NVDIMM bus failed to register",
+   "label": "KlogAcpiNfitInitFail"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "new nfit deletes entries",
+   "advice": "ACPI NFIT driver could not delete NFIT structure entries, this is funcionality is not currently supported by the ACPI NFIT driver",
+   "label": "KlogAcpiNfitDeleteNoSupport"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "failed to find NFIT",
+   "advice": "ACPI NFIT driver could not find an ACPI NFIT table",
+   "label": "KlogAcpiNfitNoTable"
+  },
+  {
+   "compare_mode": "regex",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "spa.* exceeds max mappings",
+   "advice": "ACPI NFIT driver failed to make a NFIT DIMM mapping, exceeded the configured maximum allowed",
+   "label": "KlogAcpiNfitMappingsExceeded"
+  },
+  {
+   "compare_mode": "regex",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "spa.* dimm: .* not found",
+   "advice": "ACPI NFIT driver could not map a NFIT DIMM, device is not enabled.",
+   "label": "KlogAcpiNfitDimmNotFound"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "failed to find DCR",
+   "advice": "ACPI NFIT driver could not find a Device Control Region for a DIMM, device is not enabled.",
+   "label": "KlogAcpiNfitNoDcr"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_MEDIUM",
+   "pattern": "duplicate DCR detected:",
+   "advice": "ACPI NFIT driver found multiple Device Control Regions for a DIMM, the first one found was selected.",
+   "label": "KlogAcpiNfitDuplicateDcr"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "failed to retrieve_STA, disabling...",
+   "advice": "ACPI NFIT driver could not evaluate the _STA object for an NFIT device, so it was not enabled",
+   "label": "KlogAcpiNfitNoAddr"
+  },
+  {
+   "compare_mode": "regex",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "no ACPI.NFIT device with _ADR .*, disabling...",
+   "advice": "ACPI NFIT driver could not find a child device with a specific address, so it was not enabled",
+   "label": "KlogAcpiNfitNoAddr"
+  },
+  {
+   "compare_mode": "regex",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "unknown table .* parsing nfit",
+   "advice": "ACPI NFIT driver found an unknown NFIT structure type and cannot parse this particular NFIT structure",
+   "label": "KlogAcpiNfitInvalidType"
+  },
+  {
+   "compare_mode": "regex",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "underrun cmd: .* buf_len: .* out_len:",
+   "advice": "ACPI NFIT driver could not send a control message, output buffer overran",
+   "label": "KlogAcpiNfit"
+  },
+  {
+   "compare_mode": "regex",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "ACPI Table .* OEM:.* not found in RSDT/XSDT",
+   "advice": "ACPI could not found a specified ACPI table while evaluating table region operands. The table does not exist in the RSDT or XSDT table pointers",
+   "label": "KlogAcpiTableNotFound"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "[DSDT] table load failed",
+   "advice": "ACPI was unable to load the DSDT, system will be missing AML from the Differentiated System Description Table",
+   "label": "KlogAcpiDSDTLoadFailed"
+  },
+  {
+   "compare_mode": "regex",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "(.*:.*) while loading table",
+   "advice": "ACPI was unable to load an ACPI table, an ACPI exception occurred trying to load it",
+   "label": "KlogAcpiTableLoadFailed"
+  },
+  {
+   "compare_mode": "regex",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": ".* table load failures, .* successful",
+   "advice": "ACPI was unable to load one or more ACPI tables",
+   "label": "KlogAcpiTableLoadFailed"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "Node is unresolved or uninitialized",
+   "advice": "Internal ACPI error while trying to resolve an ACPI object node",
+   "label": "KlogAcpiNodeError"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "fan state failed",
+   "advice": "ACPI could not evaluate the fan state via the _FST object, perhaps this object does not exist or the object fails to evaluate correctly.",
+   "label": "KlogAcpiGetFanState"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "Invalid _FST data",
+   "advice": "ACPI could not evaluate the fan state via the _FST object, one of the elements in the package may be an incorrect ACPI type.",
+   "label": "KlogAcpiGetFanStateBadData"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "Invalid _FIF data",
+   "advice": "ACPI could not evaluate the fan device information via the _FIF object, the returned object was not an ACPI package as expected.",
+   "label": "KlogAcpiGetFanInfo"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "Invalid _FIF element",
+   "advice": "ACPI could not evaluate the fan device information via the _FIF object, the returned package contained an element that was not of the correct ACPI type.",
+   "label": "KlogAcpiGetFanInfoBadData"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "Invalid _FPS data",
+   "advice": "ACPI could not evaluate the fan device information via the _FPS object, the returned object was not an ACPI package as expected.",
+   "label": "KlogAcpiGetFanDevInfo"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "Invalid _FPS element",
+   "advice": "ACPI could not evaluate the fan device information via the _FPS object, the returned package contained an element that was not of the correct ACPI type.",
+   "label": "KlogAcpiGetFanDevInfoBadData"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "No memory for fan",
+   "advice": "ACPI failed to create an ACPI fan device, there was not enough memory to allocate the device.",
+   "label": "KlogAcpiFanNoMem"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "Invalid _FIF element",
+   "advice": "ACPI could not evaluate the fan state via the _FST object, one of the elements in the package may be an incorrect ACPI type.",
+   "label": "KlogAcpiGetFanStateBadData"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "Could not acquire table length at",
+   "advice": "ACPI could not determine the length of an ACPI table. This can occur, for example, if the table cannot be mapped into memory or the header is corrupted or non-standard.",
+   "label": "KlogAcpiTableLength"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "Attempted table install failed",
+   "advice": "An ACPI table could not be installed because the checksum was invalid.",
+   "label": "KlogAcpiTableInstall"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "Evaluating _STA",
+   "advice": "The ACPI method _STA (Status) failed to evaluate. This may cause some device drivers to not function as expected, for example, this error is reported when the ACPI battery status cannot be evaluated and so the battery updates will not function.",
+   "label": "KlogAcpiSTAEval"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "Circular handler list in region object",
+   "advice": "Internal corruption to the ACPI region handler list has occurred and ACPI has detected this issue while detaching a region and aborted an infinite loop while attempting to traverse the list. This has been known to occur with some firmware tripping a possible internal ACPI bug.",
+   "label": "KlogAcpiCircularList"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "Circular region list in address handler object",
+   "advice": "Internal corruption to the ACPI region handler list has occurred and ACPI has detected this issue during deletion of a region object and aborted an infinite loop while attempting to traverse the list. This has been known to occur with some firmware tripping a possible internal ACPI bug.",
+   "label": "KlogAcpiCircularList"
+  },
+  {
+   "compare_mode": "regex",
+   "log_level": "LOG_LEVEL_MEDIUM",
+   "pattern": "Path has too many parent prefixes.*reached beyond root node",
+   "advice": "The firmware specified an ACPI path using too many parent ^ prefixes and reached a point where thare are no parent nodes in the hierarchy and so the referenced object could not be found.  The kernel cannot find the named object because of this bug in the firmware and this may lead to broken or misbehaving behaviour.",
+   "label": "KlogAcpiPathTooManyParentPrefixes"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_LOW",
+   "pattern": "mem=nopentium ignored! (only supported on x86_32)",
+   "advice": "The kernel parameter mem=nopentium (to disable 4MB pages) was ignored as it only applies to 32 bit x86 systems.",
+   "label": "KlogE8320BiosKernelParameter"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_LOW",
+   "pattern": "apm: Could not register misc device",
+   "advice": "APM misc device could not be registered. However, the driver can work without this, but userspace cannot control it.",
+   "label": "KlogBiosApmMiscDevice"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_LOW",
+   "pattern": "Could not allocate an object descriptor",
+   "advice": "The ACPI driver was unable to allocate an object descriptor from the ACPI global operand cache, see acpi_ut_allocate_object_desc_dbg().",
+   "label": "KlogAcpiAllocObjDescriptor"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "Oops, ACPI handle corrupt in",
+   "advice": "An error occurred attempting to get an ACPI handle from a kernel device structure.  The handle appears to be corrupt and invalid, so the unbinding of links to the device could not be actioned. See acpi_unbind_one(). This could be due to an ACPI kernel bug or a genenal memory corruption issue.",
+   "label": "KlogAcpiHandleCorrupt"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_MEDIUM",
+   "pattern": "Failed to create link",
+   "advice": "The ACPI driver failed to create a sysfs link on a firmware node.  Depending on the firmware node this may impede userspace from interfacing with the firmware.  See acpi_bind_one().",
+   "label": "KlogAcpiSysfsCreateLinkFailed"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "No memory for resources",
+   "advice": "An out of memory error occurred attempting to allocate resources while creating a platform device for an ACPI device node.",
+   "label": "KlogAcpiPlatformDeviceNoMemory"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_MEDIUM",
+   "pattern": "kset create error",
+   "advice": "The ACPI initialization failed to create the acpi_kobj kobject and so it won't appear in /sys/firmware. This may cause some user space applications difficulties if this is not created and populated. See acpi_init().",
+   "label": "KlogAcpiSysfsFirmwareNotCreated"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_MEDIUM",
+   "pattern": "Error creating sysfs interface for device ",
+   "advice": "An error occurred when adding a new ACPI device and the sysfs interface could not be created.",
+   "label": "KlogAcpiSysfsDeviceInterfaceFailed"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "Error registering device",
+   "advice": "An error occurred when adding a new ACPI device, the device registration failed. See acpi_device_add().",
+   "label": "KlogAcpi"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "Failed to initialize debugger",
+   "advice": "The ACPI driver debugger failed to initialize, debugger failed to start",
+   "label": "KlogAcpiAmlDebugInitFiled"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "Failed to create AML debugger thread",
+   "advice": "The ACPI driver debugger failed to create a kernel thread to allow ACPI debugging, debugger failed to start",
+   "label": "KlogAcpiAmlDebugThreadFailed"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "amba_device_add() failed",
+   "advice": "ACPI AMBA device ARMH0061 (an ARM PL061 GPIO device) device add failed",
+   "label": "KlogAcpiAmbaDevAddFailed"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "amba_device_alloc() failed",
+   "advice": "ACPI AMBA device ARMH0061 (an ARM PL061 GPIO device) device allocate failed",
+   "label": "KlogAcpiAmbaDevAllocFailed"
+  },
+  {
+   "compare_mode": "string",
+   "log_level": "LOG_LEVEL_HIGH",
+   "pattern": "add_memory failed",
+   "advice": "ACPI memory hot-plug failed to enable a memory device",
+   "label": "KlogAcpiMemHotPlugAddMemFailed"
+  },
+  {
+   "compare_mode": "string",
    "log_level": "LOG_LEVEL_LOW",
    "pattern": "Limiting number of LPI states to max",
    "advice": "The ACPI C States (_CST) object contains more LPI states than the kernel has configired, so this has been limited to the maximum states allowed by the driver",