From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932740AbcH2JZ5 (ORCPT ); Mon, 29 Aug 2016 05:25:57 -0400 Received: from mail.kernel.org ([198.145.29.136]:55246 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1756487AbcH2JZz (ORCPT ); Mon, 29 Aug 2016 05:25:55 -0400 From: Andy Lutomirski To: Keith Busch , Jens Axboe Cc: linux-nvme@lists.infradead.org, Christoph Hellwig , linux-kernel@vger.kernel.org, Andy Lutomirski Subject: [PATCH 0/3] nvme power saving Date: Mon, 29 Aug 2016 02:25:43 -0700 Message-Id: X-Mailer: git-send-email 2.7.4 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi all- Here's v1 of the APST patch set. The biggest bikesheddable thing (I think) is the scaling factor. I currently have it hardcoded so that we wait 50x the total latency before entering a power saving state. On my Samsung 950, this means we enter state 3 (70mW, 0.5ms entry latency, 5ms exit latency) after 275ms and state 4 (5mW, 2ms entry latency, 22ms exit latency) after 1200ms. I have the default max latency set to 25ms. FWIW, in practice, the latency this introduces seems to be well under 22ms, but my benchmark is a bit silly and I might have measured it wrong. I certainly haven't observed a slowdown just using my laptop. Andy Lutomirski (3): nvme/scsi: Remove power management support nvme: Pass pointers, not dma addresses, to nvme_get/set_features() nvme: Enable autonomous power state transitions drivers/nvme/host/core.c | 199 +++++++++++++++++++++++++++++++++++++++++++++-- drivers/nvme/host/nvme.h | 10 ++- drivers/nvme/host/scsi.c | 80 ++----------------- include/linux/nvme.h | 6 ++ 4 files changed, 211 insertions(+), 84 deletions(-) -- 2.7.4