]> git.baikalelectronics.ru Git - kernel.git/commit
ACPI, Add RAM mapping support to ACPI atomic IO support
authorHuang Ying <ying.huang@intel.com>
Thu, 8 Dec 2011 03:25:46 +0000 (11:25 +0800)
committerLen Brown <len.brown@intel.com>
Tue, 17 Jan 2012 08:54:34 +0000 (03:54 -0500)
commitfbbd76abbeac4205fdbaeba4356ce85171443a88
tree7f75db3ab117f25bc1a66a0a3353c4cac9157acd
parent4bf31fa6ce24a53a6ef57036cfab043a79970365
ACPI, Add RAM mapping support to ACPI atomic IO support

On one of our testing machine, the following EINJ command lines:

  # echo 0x10000000 > param1
  # echo 0xfffffffffffff000 > param2
  # echo 0x8 > error_type
  # echo 1 > error_inject

Will get:

  echo: write error: Input/output error

The EIO comes from:

    rc = apei_exec_pre_map_gars(&trigger_ctx);

The root cause is as follow.  Normally, ACPI atomic IO support is used
to access IO memory.  But in EINJ of that machine, it is used to
access RAM to trigger the injected error.  And the ioremap() called by
apei_exec_pre_map_gars() can not map the RAM.

This patch add RAM mapping support to ACPI atomic IO support to
satisfy EINJ requirement.

Signed-off-by: Huang Ying <ying.huang@intel.com>
Tested-by: Tony Luck <tony.luck@intel.com>
Signed-off-by: Len Brown <len.brown@intel.com>
drivers/acpi/atomicio.c