All of lore.kernel.org
 help / color / mirror / Atom feed
* avoid null pointer rereference during FLR V2
@ 2017-06-01 11:10 ` Christoph Hellwig
  0 siblings, 0 replies; 28+ messages in thread
From: Christoph Hellwig @ 2017-06-01 11:10 UTC (permalink / raw)
  To: helgaas; +Cc: rakesh, linux-pci, linux-nvme

Hi all,

Rakesh reported a bug where a FLR can trivially crash his system.
The reason for that is that NVMe unbinds the driver from the PCI device
on an unrecoverable error, and that races with the reset_notify method.

This is fairly easily fixable by taking the device lock for a slightly
longer period.  Note that the other PCI error handling methods actually
have the same issue, but with them not taking the lock yet and me having
no good way to reproducibly call them I'm a little reluctant to touch
them, but it would be great if we could fix those issues as well.

Patches 2 and 3 are cleanups in the same area and not 4.12 material,
but given that they depend on the first one I thought I'd send them
along.

Changes since V1:
 - lock over all calls to ->reset_notify

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

end of thread, other threads:[~2017-06-22 20:46 UTC | newest]

Thread overview: 28+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-06-01 11:10 avoid null pointer rereference during FLR V2 Christoph Hellwig
2017-06-01 11:10 ` Christoph Hellwig
2017-06-01 11:10 ` [PATCH 1/3] PCI: ensure the PCI device is locked over ->reset_notify calls Christoph Hellwig
2017-06-01 11:10   ` Christoph Hellwig
2017-06-06  5:31   ` Bjorn Helgaas
2017-06-06  5:31     ` Bjorn Helgaas
2017-06-06  7:28     ` Marta Rybczynska
2017-06-06  7:28       ` Marta Rybczynska
2017-06-06 10:48     ` Christoph Hellwig
2017-06-06 10:48       ` Christoph Hellwig
2017-06-06 21:14       ` Bjorn Helgaas
2017-06-06 21:14         ` Bjorn Helgaas
2017-06-07 18:29         ` Christoph Hellwig
2017-06-07 18:29           ` Christoph Hellwig
2017-06-12 23:14           ` Bjorn Helgaas
2017-06-12 23:14             ` Bjorn Helgaas
2017-06-13  7:08             ` Christoph Hellwig
2017-06-13  7:08               ` Christoph Hellwig
2017-06-13 14:05               ` Bjorn Helgaas
2017-06-13 14:05                 ` Bjorn Helgaas
2017-06-22 20:41             ` Guilherme G. Piccoli
2017-06-22 20:41               ` Guilherme G. Piccoli
2017-06-01 11:10 ` [PATCH 2/3] PCI: split reset_notify method Christoph Hellwig
2017-06-01 11:10   ` Christoph Hellwig
2017-06-01 11:10 ` [PATCH 3/3] PCI: remove __pci_dev_reset and pci_dev_reset Christoph Hellwig
2017-06-01 11:10   ` Christoph Hellwig
2017-06-15  3:11 ` avoid null pointer rereference during FLR V2 Bjorn Helgaas
2017-06-15  3:11   ` Bjorn Helgaas

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.