From: Kai-Heng Feng <kai.heng.feng@canonical.com>
To: Bjorn Helgaas <helgaas@kernel.org>
Cc: Christoph Hellwig <hch@lst.de>, Keith Busch <kbusch@kernel.org>,
Koba Ko <koba.ko@canonical.com>, Jens Axboe <axboe@fb.com>,
Sagi Grimberg <sagi@grimberg.me>,
linux-nvme <linux-nvme@lists.infradead.org>,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
Henrik Juul Hansen <hjhansen2020@gmail.com>,
Bjorn Helgaas <bhelgaas@google.com>,
Linux PCI <linux-pci@vger.kernel.org>
Subject: Re: [PATCH] nvme-pci: Avoid to go into d3cold if device can't use npss.
Date: Thu, 27 May 2021 00:24:06 +0800 [thread overview]
Message-ID: <CAAd53p7Mnv6HUv8hfjnsCpGeaSPXVAiA4D8gMxxdn6Bz8Z1fBQ@mail.gmail.com> (raw)
In-Reply-To: <20210526150633.GA1291513@bjorn-Precision-5520>
On Wed, May 26, 2021 at 11:06 PM Bjorn Helgaas <helgaas@kernel.org> wrote:
>
> On Wed, May 26, 2021 at 10:47:13PM +0800, Kai-Heng Feng wrote:
> > On Wed, May 26, 2021 at 10:28 PM Christoph Hellwig <hch@lst.de> wrote:
> > > On Wed, May 26, 2021 at 10:21:59PM +0800, Kai-Heng Feng wrote:
> > > > To be fair, resuming the NVMe from D3hot is much slower than keep it
> > > > at D0, which gives us a faster s2idle resume time. And now AMD also
> > > > requires s2idle on their latest laptops.
> > >
> > > We'd much prefer to use it, but due to the broken platforms we can't
> > > unfortunately.
> > >
> > > > And it's more like NVMe controllers don't respect PCI D3hot.
> > >
> > > What do you mean with that?
> >
> > Originally, we found that under s2idle, most NVMe controllers caused
> > substantially more power if D3hot was used.
> > We were told by all the major NVMe vendors that D3hot is not
> > supported.
>
> What is this supposed to mean? PCIe r5.0, sec 5.3.1, says
>
> All Functions must support the D0 and D3 states (both D3Hot and D3Cold).
>
> Since D3hot is required for all functions, I don't think there is a
> standard way to discover whether D3hot is supported. The PM
> Capability (sec 7.5.2.1) has D1_Support and D2_Support bits, but no
> D3_Support bit.
>
> Are the vendors just saying "sorry, our devices don't conform to the
> spec"?
Yes, that's exactly what they said. Because Windows Modern Standby
always keep the NVMe at D0, so D3hot is untested by the vendors.
NVMe vendors explicitly asked us to keep the NVMe controllers at D0 for s2idle.
>
> If what you really mean is "D3hot is supported and it works, but it
> consumes more power than expected,
If D3hot consumes more power than D0, is it really supported?
> or the D3hot->D0 transition takes
> longer than expected," that's a totally different thing, and you should
> say *that*.
The D3hot->D0 transition doesn't take longer than expected. It's just
relatively slower than keeping the NVMe at D0.
Kai-Heng
>
> Bjorn
next prev parent reply other threads:[~2021-05-26 16:24 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20210520033315.490584-1-koba.ko@canonical.com>
2021-05-25 7:44 ` [PATCH] nvme-pci: Avoid to go into d3cold if device can't use npss Christoph Hellwig
2021-05-25 16:49 ` Kai-Heng Feng
2021-05-25 20:14 ` Bjorn Helgaas
2021-05-26 2:02 ` Koba Ko
2021-05-26 2:49 ` Keith Busch
2021-05-26 12:11 ` Kai-Heng Feng
2021-05-26 12:59 ` Christoph Hellwig
2021-05-26 14:21 ` Kai-Heng Feng
2021-05-26 14:28 ` Christoph Hellwig
2021-05-26 14:47 ` Kai-Heng Feng
2021-05-26 15:06 ` Bjorn Helgaas
2021-05-26 16:24 ` Kai-Heng Feng [this message]
2021-05-27 11:40 ` Christoph Hellwig
2021-05-27 12:08 ` Kai-Heng Feng
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=CAAd53p7Mnv6HUv8hfjnsCpGeaSPXVAiA4D8gMxxdn6Bz8Z1fBQ@mail.gmail.com \
--to=kai.heng.feng@canonical.com \
--cc=axboe@fb.com \
--cc=bhelgaas@google.com \
--cc=hch@lst.de \
--cc=helgaas@kernel.org \
--cc=hjhansen2020@gmail.com \
--cc=kbusch@kernel.org \
--cc=koba.ko@canonical.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-nvme@lists.infradead.org \
--cc=linux-pci@vger.kernel.org \
--cc=sagi@grimberg.me \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).