[SRU] [Xenial] [PATCH 00/10] Enable NVMe APST for Xenial

Kai-Heng Feng kai.heng.feng at canonical.com
Fri Apr 28 04:20:12 UTC 2017


BugLink: https://bugs.launchpad.net/bugs/1664602

Impact:
NVME APST feature is not enabled, so the power consumption is higher. We
already did that for Yakkety and Zesty. After upstream adjusted a new quirk for
XPS 9550 and Precision 5510, I think it's time to make it into Xenial.

Fix:
Enable NVME APST to conserve energy.

Test:
Use 'nvme get-feature -f 0x0c -H /dev/nvme0' from nvme-cli to query the feature.

Before APST enabled:
get-feature:0xc (Autonomous Power State Transition), Current value:00000000
        Autonomous Power State Transition Enable (APSTE): Disabled

After APST enabled:
get-feature:0xc (Autonomous Power State Transition), Current value:0x000001
        Autonomous Power State Transition Enable (APSTE): Enabled

In addition, with the new quirk, the deepest power state is disabled on Precision
5510 & Samsung NVMe. I verified this via `nvme get-feature -f 0x0c -H /dev/nvme0`.

Last two commits 'nvme: Adjust the Samsung APST quirk' and
'nvme: Quirk APST off on "THNSF5256GPUK TOSHIBA"' are from Jen Axboe's block tree.


Andy Lutomirski (7):
  nvme/scsi: Remove power management support
  nvme: Fix nvme_get/set_features() with a NULL result pointer
  nvme: Pass pointers, not dma addresses, to nvme_get/set_features()
  nvme: Add a quirk mechanism that uses identify_ctrl
  nvme: Enable autonomous power state transitions
  nvme: Adjust the Samsung APST quirk
  nvme: Quirk APST off on "THNSF5256GPUK TOSHIBA"

Christoph Hellwig (3):
  nvme: return the whole CQE through the request passthrough interface
  nvme: factor out a add nvme_is_write helper
  nvme: Modify and export sync command submission for fabrics

 drivers/nvme/host/core.c | 284 +++++++++++++++++++++++++++++++++++++++++++----
 drivers/nvme/host/nvme.h |  27 ++++-
 drivers/nvme/host/pci.c  |  40 +++++--
 drivers/nvme/host/scsi.c |  80 +------------
 include/linux/nvme.h     |   6 +
 5 files changed, 328 insertions(+), 109 deletions(-)

-- 
2.12.2





More information about the kernel-team mailing list