On Fri, Aug 01, 2014 at 03:47:12PM -0700, Sandeep Mann wrote: > Using an ordered workqueue serializes processing of hotplug event. Processing > an hotplug event for some devices can take a relatively "long" time, which > means if a device is added and removed in quick succession (or due to flacky > hardware), it can lead to multiple outstanding hotplug events. Processing > these events concurrently can lead to unknown internal state and/or kernel > panics. > > Signed-off-by: Sandeep Mann <sandeep@xxxxxxxxxxxxxxx> What's the status of this? I see Rajat's ack, but there was a lot of subsequent discussion, and I'm not sure whether there was a conclusion. Given that, I'd like to see a bugzilla with the relevant background (lspci -vv, dmesg log). Also, shpchp_core.c has similar code, so I'd like to see either a similar patch for it or an explanation of why that driver doesn't need it. So I'll drop this for now, pending these updates. Bjorn > --- > drivers/pci/hotplug/pciehp_hpc.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/pci/hotplug/pciehp_hpc.c b/drivers/pci/hotplug/pciehp_hpc.c > index 42914e0..c4eedab 100644 > --- a/drivers/pci/hotplug/pciehp_hpc.c > +++ b/drivers/pci/hotplug/pciehp_hpc.c > @@ -681,7 +681,7 @@ static int pcie_init_slot(struct controller *ctrl) > if (!slot) > return -ENOMEM; > > - slot->wq = alloc_workqueue("pciehp-%u", 0, 0, PSN(ctrl)); > + slot->wq = alloc_ordered_workqueue("pciehp-%u", 0, PSN(ctrl)); > if (!slot->wq) > goto abort; > > -- > 1.8.3.2 > -- To unsubscribe from this list: send the line "unsubscribe linux-pci" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html