linux-pci.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v7 0/4] PCI: pciehp, shpchp deadlock fixes
@ 2013-01-13 23:27 Bjorn Helgaas
  2013-01-13 23:27 ` [PATCH v7 1/4] PCI: pciehp: Use per-slot workqueues to avoid deadlock Bjorn Helgaas
                   ` (4 more replies)
  0 siblings, 5 replies; 7+ messages in thread
From: Bjorn Helgaas @ 2013-01-13 23:27 UTC (permalink / raw)
  To: Yijing Wang, linux-pci
  Cc: linux-kernel, Daniel J Blueman, Kenji Kaneshige, Tejun Heo,
	Yinghai Lu, Jiang Liu

This is v7 of Yijing Wang's pciehp deadlock fix.  Here's the history of
previous postings:

    RFC Oct 31 2012
    v2  Nov  9 2012  use slot name, not device name
    v3  Nov 12 2012  create workqueues in pcie_init_slot(), pciehp-%u format
    v4  Nov 13 2012  use alloc_workqueue(name, 0, 0) again
    v5  Jan  9 2013  fix similar problem in shpchp
    v6  Jan 10 2013  add pciehp backtrace from Daniel 

This v7 series is functionally identical to v6.  In v7, I split the single
shpchp patch into three:

    PCI: shpchp: Make shpchp_wq non-ordered
    PCI: shpchp: Handle push button event asynchronously
    PCI: shpchp: Use per-slot workqueues to avoid deadlock

The first fixes what appears to be an error in e24dcbef93 ("shpchp: update
workqueue usage").  I split this out so Tejun could easily review it by itself.

I split the second out because it corresponds to a pciehp bugfix, 486b10b9f4
("PCI: pciehp: Handle push button event asynchronously"), that also affects
shpchp.

The "PCI: shpchp: Use per-slot workqueues to avoid deadlock" that remains
then corresponds exactly to Yijing's original pciehp deadlock fix.

I also rewrote the changelogs.

I propose to push the entire series for inclusion in v3.8, since it
fixes an easy-to-cause deadlock with Thunderbolt adapters.

---

Bjorn Helgaas (3):
      PCI: shpchp: Make shpchp_wq non-ordered
      PCI: shpchp: Handle push button event asynchronously
      PCI: shpchp: Use per-slot workqueues to avoid deadlock

Yijing Wang (1):
      PCI: pciehp: Use per-slot workqueues to avoid deadlock


 drivers/pci/hotplug/pciehp.h      |    2 +-
 drivers/pci/hotplug/pciehp_core.c |   11 ++---------
 drivers/pci/hotplug/pciehp_ctrl.c |    8 ++++----
 drivers/pci/hotplug/pciehp_hpc.c  |   11 ++++++++++-
 drivers/pci/hotplug/shpchp.h      |    3 +--
 drivers/pci/hotplug/shpchp_core.c |   36 ++++++++++++++----------------------
 drivers/pci/hotplug/shpchp_ctrl.c |    6 +++---
 7 files changed, 35 insertions(+), 42 deletions(-)

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2013-01-14 16:49 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-01-13 23:27 [PATCH v7 0/4] PCI: pciehp, shpchp deadlock fixes Bjorn Helgaas
2013-01-13 23:27 ` [PATCH v7 1/4] PCI: pciehp: Use per-slot workqueues to avoid deadlock Bjorn Helgaas
2013-01-13 23:27 ` [PATCH v7 2/4] PCI: shpchp: Make shpchp_wq non-ordered Bjorn Helgaas
2013-01-14 16:49   ` Tejun Heo
2013-01-13 23:27 ` [PATCH v7 3/4] PCI: shpchp: Handle push button event asynchronously Bjorn Helgaas
2013-01-13 23:27 ` [PATCH v7 4/4] PCI: shpchp: Use per-slot workqueues to avoid deadlock Bjorn Helgaas
2013-01-14  1:30 ` [PATCH v7 0/4] PCI: pciehp, shpchp deadlock fixes Yijing Wang

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).