From: "Rafael J. Wysocki" <rjw@rjwysocki.net>
To: Jesse Barnes <jbarnes@virtuousgeek.org>
Cc: intel-gfx@lists.freedesktop.org
Subject: Re: [PATCH] drm/i915: use correct runtime get/put calls at init/teardown
Date: Fri, 18 Sep 2015 03:21:40 +0200 [thread overview]
Message-ID: <2364841.9XLoHF4SDd@vostro.rjw.lan> (raw)
In-Reply-To: <3697432.5mNg4q9oLs@vostro.rjw.lan>
On Friday, September 18, 2015 03:01:50 AM Rafael J. Wysocki wrote:
> On Thursday, September 17, 2015 02:23:32 PM Jesse Barnes wrote:
> > According to the PCI docs and Rafael, we need to be using
> > pm_runtime_put_noidle() and pm_runtime_get_noresume() in our init and
> > teardown routines, rather than using a direct enable/disable pair (and
> > we didn't even have the enable side, so never autosuspended after an
> > unload).
> >
> > This fixes one failure of the basic-pci-d3-state test on my BYT. I'm
> > still debugging why the device never autosuspends.
> >
> > Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
> > ---
> > drivers/gpu/drm/i915/intel_runtime_pm.c | 5 ++---
> > 1 file changed, 2 insertions(+), 3 deletions(-)
> >
> > diff --git a/drivers/gpu/drm/i915/intel_runtime_pm.c b/drivers/gpu/drm/i915/intel_runtime_pm.c
> > index 85c35fd..1addb8a 100644
> > --- a/drivers/gpu/drm/i915/intel_runtime_pm.c
> > +++ b/drivers/gpu/drm/i915/intel_runtime_pm.c
> > @@ -1822,7 +1822,7 @@ static void intel_runtime_pm_disable(struct drm_i915_private *dev_priv)
> >
> > /* Make sure we're not suspended first. */
> > pm_runtime_get_sync(device);
> > - pm_runtime_disable(device);
>
> That is correct IMO. If you ensure that the usage counter is always above 0
> and the device is "on", you don't need to disable runtime PM in addition to that.
>
> > + pm_runtime_get_noresume(device);
>
> I'm not sure that this is needed. You've already bumped up the usage counter.
>
> Are you going to drop it going forward?
>
>
> > }
> >
> > /**
> > @@ -2114,8 +2114,6 @@ void intel_runtime_pm_enable(struct drm_i915_private *dev_priv)
> > if (!HAS_RUNTIME_PM(dev))
> > return;
> >
> > - pm_runtime_set_active(device);
> > -
This change looks OK to me.
You're called from local_pci_probe() that does pm_runtime_get_sync(), so the
device should be active at this point if I'm not missing anything.
The only kind of gray area is that the device may be physically off at probe
time (after boot) and we're thinking it is on. Is that possible even?
> > /*
> > * RPM depends on RC6 to save restore the GT HW context, so make RC6 a
> > * requirement.
> > @@ -2130,5 +2128,6 @@ void intel_runtime_pm_enable(struct drm_i915_private *dev_priv)
> > pm_runtime_use_autosuspend(device);
> >
> > pm_runtime_put_autosuspend(device);
> > + pm_runtime_put_noidle(device);
>
> That shouldn't be necessary. The "put" is already done in pm_runtime_put_autosuspend().
>
> > }
> >
> >
Thanks,
Rafael
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx
next prev parent reply other threads:[~2015-09-18 0:53 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-09-17 21:23 [PATCH] drm/i915: use correct runtime get/put calls at init/teardown Jesse Barnes
2015-09-17 21:40 ` Paulo Zanoni
2015-09-17 21:59 ` Jesse Barnes
2015-09-18 1:01 ` Rafael J. Wysocki
2015-09-18 1:21 ` Rafael J. Wysocki [this message]
2015-09-23 21:37 ` [PATCH] drm/i915: fixup runtime PM handling v2 Jesse Barnes
2015-09-24 15:40 ` Jesse Barnes
2015-09-24 19:14 ` Rafael J. Wysocki
2015-09-28 8:21 ` Daniel Vetter
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=2364841.9XLoHF4SDd@vostro.rjw.lan \
--to=rjw@rjwysocki.net \
--cc=intel-gfx@lists.freedesktop.org \
--cc=jbarnes@virtuousgeek.org \
/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