|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH] ACPI/APEI: Unlock apei_iomaps_lock on error path
This causes deadlocks during early boot on hardware with broken/buggy APEI
implementations, such as a Dell Poweredge 2950 with the latest currently
available BIOS.
Signed-off-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
diff -r 7babbd46586b -r 6a952c14c4dc xen/drivers/acpi/apei/apei-io.c
--- a/xen/drivers/acpi/apei/apei-io.c
+++ b/xen/drivers/acpi/apei/apei-io.c
@@ -147,12 +147,15 @@ static void __init apei_post_unmap(paddr
spin_lock_irqsave(&apei_iomaps_lock, flags);
map = __apei_find_iomap(paddr, size);
if (!map)
- return;
+ goto err;
list_del(&map->list);
spin_unlock_irqrestore(&apei_iomaps_lock, flags);
xfree(map);
+ return;
+err:
+ spin_unlock_irqrestore(&apei_iomaps_lock, flags);
}
/* In NMI handler, should set silent = 1 */
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |