[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <1351668471-31436-1-git-send-email-tangchen@cn.fujitsu.com>
Date: Wed, 31 Oct 2012 15:27:48 +0800
From: Tang Chen <tangchen@...fujitsu.com>
To: yinghai@...nel.org, bhelgaas@...gle.com, lenb@...nel.org,
jiang.liu@...wei.com, izumi.taku@...fujitsu.com,
isimatu.yasuaki@...fujitsu.com, linux-acpi@...r.kernel.org,
linux-pci@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: [PATCH v3 0/3] ACPI: container hot remove support.
Hi,
The container hotplug handler container_notify_cb() didn't implement
the hot-remove functionality. So, these 3 patches implement it like
the following way:
patch 1. Do not use kacpid_wq/kacpid_notify_wq to handle container hotplug event,
use kacpi_hotplug_wq instead to avoid deadlock.
Doing this is to reuse acpi_bus_hot_remove_device() in container
hot-remove handling.
patch 2. Introduce a new function container_device_remove() to handle
ACPI_NOTIFY_EJECT_REQUEST event for container.
change log v2 -> v3:
1. Add 1 patch(patch1). As Toshi Kan mentioned, acpi_os_hotplug_execute() is already
kernel. So use it instead of alloc_acpi_hp_work() to add hotplug job onto kacpi_hotplug_wq.
2. In patch3: Print caller's function name when container_device_remove() fails to help to debug.
3. In patch3: Add commit message to describ why we need to call acpi_bus_trim() twice when
removing devices.
change log v1 -> v2:
1. In patch1: Based on the lastest for-pci-split-pci-root-hp-2 branch from Lu Yinghai,
use alloc_acpi_hp_work() to add container hotplug work into kacpi_hotplug_wq.
2. In patch2: Allocate ej_event after container is stopped, so that we don't need to
kfree the ej_event if stopping container failed.
This is based on Lu Yinghai's job.
git://git.kernel.org/pub/scm/linux/kernel/git/yinghai/linux-yinghai.git for-pci-split-pci-root-hp-2
Tang Chen (3):
Use acpi_os_hotplug_execute() instead of alloc_acpi_hp_work().
Use kacpi_hotplug_wq to handle container hotplug event.
Improve container_notify_cb() to support container hot-remove.
drivers/acpi/container.c | 95 +++++++++++++++++++++++++++++++-----
drivers/acpi/osl.c | 28 +++++-----
drivers/acpi/pci_root_hp.c | 25 ++++++---
drivers/pci/hotplug/acpiphp_glue.c | 39 ++++++++-------
include/acpi/acpiosxf.h | 7 +--
5 files changed, 137 insertions(+), 57 deletions(-)
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists