From: Imre Deak <imre.deak@intel.com>
To: Daniel Vetter <daniel@ffwll.ch>,
Mika Kuoppala <mika.kuoppala@linux.intel.com>
Cc: intel-gfx@lists.freedesktop.org, miku@iki.fi
Subject: Re: [PATCH 1/6] drm/i915: Get runtime pm ref on i915_drop_caches_set
Date: Wed, 16 Dec 2015 13:03:41 +0200 [thread overview]
Message-ID: <1450263821.15887.4.camel@intel.com> (raw)
In-Reply-To: <20151216104227.GA30437@phenom.ffwll.local>
On ke, 2015-12-16 at 11:42 +0100, Daniel Vetter wrote:
> On Tue, Dec 15, 2015 at 01:36:07PM +0200, Mika Kuoppala wrote:
> > Chris Wilson <chris@chris-wilson.co.uk> writes:
> >
> > > On Mon, Dec 14, 2015 at 07:14:23PM +0200, Mika Kuoppala wrote:
> > > > When we drop caches, this debugfs entry does hardware access
> > > > later in
> > > > the chain, when fences are updated, so it needs a runtime pm
> > > > ref.
> > > >
> > > > Dropping caches is used by some igt/bat tests, so this fixes
> > > > some unclaimed register access traces.
> > > >
> > > > Signed-off-by: Mika Kuoppala <mika.kuoppala@intel.com>
> > > > ---
> > > > drivers/gpu/drm/i915/i915_debugfs.c | 3 +++
> > > > 1 file changed, 3 insertions(+)
> > > >
> > > > diff --git a/drivers/gpu/drm/i915/i915_debugfs.c
> > > > b/drivers/gpu/drm/i915/i915_debugfs.c
> > > > index 24318b7..bd8ba7e 100644
> > > > --- a/drivers/gpu/drm/i915/i915_debugfs.c
> > > > +++ b/drivers/gpu/drm/i915/i915_debugfs.c
> > > > @@ -4839,6 +4839,8 @@ i915_drop_caches_set(void *data, u64 val)
> > > > if (ret)
> > > > return ret;
> > > >
> > > > + intel_runtime_pm_get(dev_priv);
> > >
> > > The current idea of the very coarse granularity of rpm_get() is
> > > to do it
> > > before struct_mutex (since rpm_get resume may try to acquire the
> > > mutex
> > > iirc).
> > >
> > > Ok, fixing that may be bolting the stable door after the horse
> > > bolted,
> > > but we should nevertheless. In my opinion, it would be more
> > > productive
> > > to work with Imre on making rpm fine grained so that we don't so
> > > many
> > > and can actually place the wakelock around the hardware access
> > > itself,
> > > not every single path that *may* touch hardware.
> >
> > Please consider 1/6 v2 as it is needed to avoid random unclaimed
> > accesses during igt/bat if the drop caches is used in wrong spot.
>
> Yeah wakelocks work like locks, except lockdep doesn't check them
> because
> they're not really locks in all aspects. But anyway, we need to obey
> ordering constraints.
>
> Hm ... maybe it would be possible to annotate get/put_rpm with a
> lockdep
> context (and trylock for the others), and then also acquire that
> context
> around the actual resume/suspend functions? Might be worth a shot as
> a
> tech demo, perhaps even adding that to the pm core and pinging Rafael
> for
> feedback. Since auditing correctness here is way too much pain.
Yea, this idea came up already:
http://lists.freedesktop.org/archives/intel-gfx/2015-November/079807.html
and I have a preliminary patch at:
https://github.com/ideak/linux/commit/8f63aaaef27f3c56a1996ea4ac6a8393e0af4e44
--Imre
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx
next prev parent reply other threads:[~2015-12-16 11:03 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-12-14 17:14 [PATCH 1/6] drm/i915: Get runtime pm ref on i915_drop_caches_set Mika Kuoppala
2015-12-14 17:14 ` [PATCH 2/6] drm/i915: Get runtime pm ref when setting min/max freqs Mika Kuoppala
2015-12-14 17:14 ` [PATCH 3/6] drm/i915: Get runtime pm ref on i915_fbc_fc_set Mika Kuoppala
2015-12-14 17:14 ` [PATCH 4/6] drm/i915: Get runtime pm ref on i915_emon_status Mika Kuoppala
2015-12-14 17:14 ` [PATCH 5/6] drm/i915: Get runtime pm ref on i915_guc_load_status_info Mika Kuoppala
2015-12-14 17:14 ` [PATCH 6/6] drm/i915: Get runtime pm ref on i915_sseu_status Mika Kuoppala
2015-12-14 21:46 ` [PATCH 1/6] drm/i915: Get runtime pm ref on i915_drop_caches_set Chris Wilson
2015-12-15 11:36 ` Mika Kuoppala
2015-12-16 10:42 ` Daniel Vetter
2015-12-16 11:03 ` Imre Deak [this message]
2015-12-15 11:35 ` [PATCH] " Mika Kuoppala
2015-12-15 11:46 ` Joonas Lahtinen
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=1450263821.15887.4.camel@intel.com \
--to=imre.deak@intel.com \
--cc=daniel@ffwll.ch \
--cc=intel-gfx@lists.freedesktop.org \
--cc=mika.kuoppala@linux.intel.com \
--cc=miku@iki.fi \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.