Re: APEI: Can not request iomem region for GARs

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Aug 16, 2011 at 9:43 PM, Pavel Ivanov <paivanof@xxxxxxxxx> wrote:
> Ever since I switched from kernel 2.6.38 to 3.0 and later versions I
> always get the following error message on each boot:
>
> [    2.844242] APEI: Can not request iomem region
> <00000000bf7b522a-00000000bf7b522c> for GARs.
>
> If it was only in dmesg I wouldn't even notice it. But it's always
> printed on the console which is kind of annoying.
> I don't quite understand what this message is about and couldn't find
> anything on the internet. Does this message mean some error that I
> could fix? If no, is there any way I can suppress it (besides lowering
> the error level of messages printed on console, of course)?

[+cc Huang Ying, APEI author]

BIOS-e820: 00000000bf79e000 - 00000000bf7d0000 (ACPI NVS)
APEI: Can not request iomem region <00000000bf7b522a-00000000bf7b522c> for GARs.

This register is in the ACPI NVS region, which is type E820_NVS (not
E820_RESERVED), so e820_reserve_resources() reserves it as
IORESOURCE_BUSY.  My guess is that Huang tested this on machines where
the EINJ/ERST registers are in "reserved" regions, not ACPI NVS
regions.  The "reserved" regions are not marked IORESOURCE_BUSY.

Huang, when you fix this, please include something like the following
(mangled) patch so the error message is more consistent with other
resource messages.

Could you also remove the ERST/EINJ/HEST "Table is not found"
messages?  As far as I can tell, these tables are optional, and
printing the message is confusing to users, e.g.,
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/599715

Bjorn

diff --git a/drivers/acpi/apei/apei-base.c b/drivers/acpi/apei/apei-base.c
index 8041248..6f97b59 100644
--- a/drivers/acpi/apei/apei-base.c
+++ b/drivers/acpi/apei/apei-base.c
@@ -460,9 +460,9 @@ int apei_resources_request(struct apei_resources *resources,
                                       desc);
                if (!r) {
                        pr_err(APEI_PFX
-               "Can not request iomem region <%016llx-%016llx> for GARs.\n",
+               "can not request [mem %#010llx-%#010llx] for %s registers\n",
                               (unsigned long long)res->start,
-                              (unsigned long long)res->end);
+                              (unsigned long long)res->end, desc);
                        res_bak = res;
                        goto err_unmap_iomem;
                }
@@ -472,9 +472,9 @@ int apei_resources_request(struct apei_resources *resources,
                r = request_region(res->start, res->end - res->start, desc);
                if (!r) {
                        pr_err(APEI_PFX
-               "Can not request ioport region <%016llx-%016llx> for GARs.\n",
+               "can not request [io  %#06llx-%#06llx] for %s registers\n",
                               (unsigned long long)res->start,
-                              (unsigned long long)res->end);
+                              (unsigned long long)res->end, desc);
                        res_bak = res;
                        goto err_unmap_ioport;
                }
--
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux IBM ACPI]     [Linux Power Management]     [Linux Kernel]     [Linux Laptop]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]

  Powered by Linux