linux-nvme.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCHv3 0/5] NVMe: Power management patch set
@ 2013-06-24 20:30 Keith Busch
  2013-06-24 20:30 ` [PATCHv3 1/5] NVMe: Group pci related actions in functions Keith Busch
                   ` (4 more replies)
  0 siblings, 5 replies; 6+ messages in thread
From: Keith Busch @ 2013-06-24 20:30 UTC (permalink / raw)


This adds power management to the NVMe devices.

I ran this on some real devices and found some errors from the previous
patch that could occur if the resume fails, but not many changes from
the previous set.

v2->v3:

Hand merge to latest head.

Additional checks when releasing the pci resources in case it happens
twice. This could occur if the module is unloaded after the device
failed to initialize on resume.

If the resume fails, free all the queues and check for a null queue
before issuing IO so that IO can not be sent to the block device if the
controller failed to re-initialize. I tried deleting the gendisks too,
but resume never completed when an error was forced with that code. Not
entirely sure why that happened.

Additional error checking on ioremap.

Use SIMPLE_DEV_PM_OPS instead of UNIVERSAL_DEV_PM_OPS. I don't think we
want to use these for runtime suspend/resume on an NVMe device.

Keith Busch (5):
  NVMe: Group pci related actions in functions
  NVMe: Separate queue alloc/free from create/delete
  NVMe: Separate controller init from disk discovery
  NVMe: Use normal shutdown
  NVMe: Add pci suspend/resume driver callbacks

 drivers/block/nvme-core.c |  408 +++++++++++++++++++++++++++++++--------------
 include/linux/nvme.h      |    2 +
 2 files changed, 287 insertions(+), 123 deletions(-)

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

end of thread, other threads:[~2013-06-24 20:30 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-06-24 20:30 [PATCHv3 0/5] NVMe: Power management patch set Keith Busch
2013-06-24 20:30 ` [PATCHv3 1/5] NVMe: Group pci related actions in functions Keith Busch
2013-06-24 20:30 ` [PATCHv3 2/5] NVMe: Separate queue alloc/free from create/delete Keith Busch
2013-06-24 20:30 ` [PATCHv3 3/5] NVMe: Separate controller init from disk discovery Keith Busch
2013-06-24 20:30 ` [PATCHv3 4/5] NVMe: Use normal shutdown Keith Busch
2013-06-24 20:30 ` [PATCHv3 5/5] NVMe: Add pci suspend/resume driver callbacks Keith Busch

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).