)]}'
{
  "log": [
    {
      "commit": "15651291a2f8c11e7e6a42d8bfde7a213ff13262",
      "tree": "0bbb96e22231e2b4da4ce9b264dfce8c54a52efc",
      "parents": [
        "e40152ee1e1c7a63f4777791863215e3faa37a86"
      ],
      "author": {
        "name": "Huang Ying",
        "email": "ying.huang@intel.com",
        "time": "Tue May 18 14:35:11 2010 +0800"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed May 19 11:40:03 2010 -0400"
      },
      "message": "ACPI, IO memory pre-mapping and atomic accessing\n\nSome ACPI IO accessing need to be done in atomic context. For example,\nAPEI ERST operations may be used for permanent storage in hardware\nerror handler. That is, it may be called in atomic contexts such as\nIRQ or NMI, etc. And, ERST/EINJ implement their operations via IO\nmemory/port accessing.  But the IO memory accessing method provided by\nACPI (acpi_read/acpi_write) maps the IO memory during it is accessed,\nso it can not be used in atomic context. To solve the issue, the IO\nmemory should be pre-mapped during EINJ/ERST initializing. A linked\nlist is used to record which memory area has been mapped, when memory\nis accessed in hardware error handler, search the linked list for the\nmapped virtual address from the given physical address.\n\nSigned-off-by: Huang Ying \u003cying.huang@intel.com\u003e\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    }
  ]
}
