On 2012/11/26 14:06, Tang Chen wrote: > On 11/26/2012 01:42 PM, Hanjun Guo wrote: >> >> Hi all, >> I think Yasuaki mentioned the key point for the container device remove, >> that is dependency. >> >> Currently, container, processor, and memory hotpulg are managed by different ACPI >> hotplug drivers, the driver works when handle device hotplug individually, but they >> have no idea for each other. >> >> This may introduce some issues, such as Yasuaki mentioned above, that is to say, we >> should remove its child before remove the device itself, and hot add its parent before >> the device itself. >> >> According to the ACPI namespace, we can resolve most of dependency issues. On a typical >> two processor sockets system, the namespace is like this: >> >> /_SB ---container device, with HID ACPI0004 >> |_SCK0 ---container device, with HID ACPI0004 >> |_CPU0 ---processor device, with HID ACPI0009 or LNXCPU >> |_... >> |_CPUx >> |_MEM0 ---Memory device, with HID PNP0C80 >> |_SCK1 >> |_CPU0 >> |_... >> |_CPUx >> |_MEM1 >> |_PCI0 ---Host bridge, with HID PNP0A03 or PNP0A08 >> >> If hot remove the container device, such as SCK0, we can easily know the dependency list >> is CPU0~CPUx and MEM0, but I think the ACPI hotplug driver haven't resolve this now. >> >> And there is another corner case for hotplug devices in the namespace above, that is: >> 1) Remove SCK0. yes, we can remove it with no dependency to the host bridge PCI0; >> >> 2) Remove SCK1 after SCK0. we should remove the host bridge PCI0 first, >> or the system will crash down. yes, dynamic dependency analysis is needed here. >> and the ACPI hotplug driver totally have no idea of this. >> >> so, should we do something to settle this down ? > > Hi Guo, > > I am trying to do this too. :) > > But so far as I know, Vasilis Liaskovitis has provided an approach. > Please refer to the following url. > https://lkml.org/lkml/2012/11/15/159 > > I think we can review his patches first. :) Yes, I noticed Vasilis Liaskovitis's patch and the discussion from Greg and Toshi, Greg suggested that no driver core changes to resolve this problem, so we should find another way. > > And by the way, I think the ACPI based hotplug framework provided by > Liu Jiang may also settle this problem. But I'm not quit sure yet. :) The ACPI based hotplug framework provided by Jiang Liu has settle this problem down, you may refer to: https://lkml.org/lkml/2012/11/4/64 Thanks Hanjun Guo -- To unsubscribe from this list: send the line "unsubscribe linux-acpi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html