> -----Original Message----- > From: Keith Busch <kbu...@kernel.org> > Sent: Monday, May 13, 2019 9:38 AM > To: Limonciello, Mario > Cc: keith.bu...@intel.com; h...@lst.de; s...@grimberg.me; linux- > n...@lists.infradead.org; raf...@kernel.org; linux-kernel@vger.kernel.org; > linux- > p...@vger.kernel.org; kai.heng.f...@canonical.com > Subject: Re: [PATCH] nvme/pci: Use host managed power state for suspend > > > [EXTERNAL EMAIL] > > On Mon, May 13, 2019 at 02:24:41PM +0000, mario.limoncie...@dell.com wrote: > > This was not a disk with HMB, but with regard to the HMB I believe it needs > > to be > > removed during s0ix so that there isn't any mistake that SSD thinks it can > > access > HMB > > memory in s0ix. > > Is that really the case, though? Where may I find that DMA is not > allowed in this state? I just want an authoritative reference to attach > to the behavior.
The Intel DMA controller suspend callbacks in drivers/dma/idma64.c look to me to turn off the controller. 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."