From mboxrd@z Thu Jan 1 00:00:00 1970 From: kbusch@kernel.org (Keith Busch) Date: Mon, 13 May 2019 09:16:52 -0600 Subject: [PATCH] nvme/pci: Use host managed power state for suspend In-Reply-To: <20190513145708.GA25897@lst.de> References: <20190510212937.11661-1-keith.busch@intel.com> <0080aaff18e5445dabca509d4113eca8@AUSX13MPC105.AMER.DELL.COM> <955722d8fc16425dbba0698c4806f8fd@AUSX13MPC105.AMER.DELL.COM> <20190513143754.GE15318@localhost.localdomain> <7ab8274ef1ce46fcae54a50abc76ae4a@AUSX13MPC105.AMER.DELL.COM> <20190513145708.GA25897@lst.de> Message-ID: <20190513151652.GB15437@localhost.localdomain> On Mon, May 13, 2019@04:57:08PM +0200, Christoph Hellwig wrote: > On Mon, May 13, 2019@02:54:49PM +0000, Mario.Limonciello@dell.com wrote: > > And NVME spec made it sound to me that while in a low power state it shouldn't > > be available if the memory isn't available. > > > > NVME spec in 8.9: > > > > "Host software should request that the controller release the > > assigned ranges prior to a shutdown event, a Runtime D3 event, or any other event > > that requires host software to reclaim the assigned ranges." > > The last part of the quoted text is the key - if the assigned range > is reclaimed, that is the memory is going to be used for something else, > we need to release the ranges. But we do not release the ranges, > as we want to keep the memory in use so that we can quickly use it > again. Yes, this. As far as I know, the host memory range is still accessible in the idle suspend state. If there are states in which host memory is not accessible, a reference explaining the requirement will be most helpful.