UPSTREAM: PCI/PM: Don't sleep at all when d3_delay or d3cold_delay is zero

msleep() still sleeps 1 jiffy even when told to sleep for zero
milliseconds.  That can end up being 1-2 milliseconds or more.  In the
cases of d3_delay and d3cold_delay, that unnecessarily increases suspend
and/or resume latencies.

Do not sleep at all for the respective cases if d3_delay is zero or
d3cold_delay is zero.

Signed-off-by: Todd Broch <tbroch@google.com>
BUG=b:35774937
TEST=manual
cd /tmp && fio --name=trest -size=4k --readwrite=read
latencies look reasonable

Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Acked-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
(cherry picked from commit 50b2b540c00941ced618df9deafccc30826b13b5)

Change-Id: I63361ce5d2fb27f9c979f2b280cca1f4399fa507
Reviewed-on: https://chromium-review.googlesource.com/737525
Commit-Ready: Todd Broch <tbroch@chromium.org>
Tested-by: Todd Broch <tbroch@chromium.org>
Reviewed-by: Sonny Rao <sonnyrao@chromium.org>
(cherry picked from commit 5b4acc25b432d7f713e1c3cf5e2da0ff39ec000a)
Reviewed-on: https://chromium-review.googlesource.com/755514
Reviewed-by: Todd Broch <tbroch@chromium.org>
Commit-Queue: Todd Broch <tbroch@chromium.org>
1 file changed