Re: [PATCH 5/5] ACPI, APEI, Fix ERST MOVE_DATA instruction implementation

From: Andi Kleen
Date: Tue Sep 21 2010 - 08:47:24 EST


On Sun, Sep 19, 2010 at 11:00:35AM +0800, Huang Ying wrote:
> diff --git a/drivers/acpi/apei/erst.c b/drivers/acpi/apei/erst.c
> index 40b01c3..a103963 100644
> --- a/drivers/acpi/apei/erst.c
> +++ b/drivers/acpi/apei/erst.c
> @@ -266,13 +266,27 @@ static int erst_exec_move_data(struct apei_exec_context *ctx,
> {
> int rc;
> u64 offset;
> + void *src, *dst;
> +
> + /* ioremap does not work in interrupt context */
> + if (in_interrupt())
> + return -EBUSY;

That breaks serialization of machine checks no? If the BIOS uses MOVE_DATA
How about using kmap_atomic instead?

-Andi
--
ak@xxxxxxxxxxxxxxx -- Speaking for myself only.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/