Re: [Update][PATCH 3/6] ACPI / hotplug: Fixhandle_root_bridge_removal()

From: Toshi Kani
Date: Wed Nov 06 2013 - 18:25:52 EST


On Mon, 2013-11-04 at 14:33 +0100, Rafael J. Wysocki wrote:
> From: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>
>
> It is required to do get_device() on the struct acpi_device in
> question before passing it to acpi_bus_hot_remove_device() through
> acpi_os_hotplug_execute(), because acpi_bus_hot_remove_device()
> calls acpi_scan_hot_remove() that does put_device() on that
> object.
>
> The ACPI PCI root removal routine, handle_root_bridge_removal(),
> doesn't do that, which may lead to premature freeing of the
> device object or to executing put_device() on an object that
> has been freed already.
>
> Fix this problem by making handle_root_bridge_removal() use
> get_device() as appropriate.
>
> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

Acked-by: Toshi Kani <toshi.kani@xxxxxx>

Thanks,
-Toshi

--
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/