Messages in this thread | | | Date | Sat, 07 Apr 2012 00:22:34 +0800 | From | Jiang Liu <> | Subject | Re: [PATCH -v3 40/47] PCI: Add pci bus removal through /sys/.../pci_bus/.../remove |
| |
On 04/07/2012 12:07 AM, Bjorn Helgaas wrote: > On Fri, Apr 6, 2012 at 10:01 AM, Yinghai Lu <yhlu.kernel@gmail.com> wrote: >> On Fri, Apr 6, 2012 at 8:50 AM, Jiang Liu <liuj97@gmail.com> wrote: >>> Hi Yinghai, >>> I found many other drivers assume that a pci bus won't disappear if >>> the corresponding PCI bridge device still exists. The sysfs interface proposed >>> here breaks that assumption and may cause many access-after-free issues. >>> So what's the purpose of this interface? Should we remove this interface or >>> enhance other drivers to avoid invalid memory access issues? > > Can you point out some of the specifics about drivers making this > assumption? I'm not thrilled about the idea of removing a pci_bus > while the upstream bridge pci_dev still exists either. According to my understanding, following drivers may have such an assumption: acpiphp, pciehp, shpcphp, acpi/pci_slot, acpi/pci_bind. I suspect there are still other drivers have such issues.
> >> ok, will make it only show up on root bus. > > OK. I'm still interested in the specifics because I don't like the > way the pci_bus is exposed, even inside the kernel. The bus itself is > not an active entity, and we can't really do anything with it except > by touching a device connected to it. > > Bjorn
| |