summaryrefslogtreecommitdiffstats
path: root/kernel/resource.c
diff options
context:
space:
mode:
authorChen Gong <gong.chen@linux.intel.com>2013-06-07 00:20:51 +0200
committerTony Luck <tony.luck@intel.com>2013-06-07 00:20:51 +0200
commitc5a130325f13b219438cb100e2da71a3e31199f3 (patch)
treea57ee8ac08e1e479078d3e773a87eea3eccae130 /kernel/resource.c
parentACPI, APEI, EINJ: Fix error return code in einj_init() (diff)
downloadlinux-c5a130325f13b219438cb100e2da71a3e31199f3.tar.xz
linux-c5a130325f13b219438cb100e2da71a3e31199f3.zip
ACPI/APEI: Add parameter check before error injection
When param1 is enabled in EINJ but not assigned with a valid value, sometimes it will cause the error like below: APEI: Can not request [mem 0x7aaa7000-0x7aaa7007] for APEI EINJ Trigger registers It is because some firmware will access target address specified in param1 to trigger the error when injecting memory error. This will cause resource conflict with regular memory. So It must be removed from trigger table resources, but incorrect param1/param2 combination will stop this action. Add extra check to avoid this kind of error. Signed-off-by: Chen Gong <gong.chen@linux.intel.com> Signed-off-by: Tony Luck <tony.luck@intel.com>
Diffstat (limited to 'kernel/resource.c')
-rw-r--r--kernel/resource.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/kernel/resource.c b/kernel/resource.c
index d7386986e10e..77bf11a86c7d 100644
--- a/kernel/resource.c
+++ b/kernel/resource.c
@@ -409,6 +409,7 @@ int __weak page_is_ram(unsigned long pfn)
{
return walk_system_ram_range(pfn, 1, NULL, __is_ram) == 1;
}
+EXPORT_SYMBOL_GPL(page_is_ram);
void __weak arch_remove_reservations(struct resource *avail)
{