From: Waiman Long <waiman.long@hpe.com>
To: Peter Zijlstra <peterz@infradead.org>
Cc: Andreas Mohr <andi@lisas.de>,
Daniel Vetter <daniel.vetter@intel.com>,
<linux-kernel@vger.kernel.org>
Subject: Re: [RFC][PATCH -v2 1/4] locking/drm/i915: Kill mutex trickery
Date: Fri, 26 Aug 2016 10:33:23 -0400 [thread overview]
Message-ID: <57C05333.8010900@hpe.com> (raw)
In-Reply-To: <20160826091032.GO10138@twins.programming.kicks-ass.net>
On 08/26/2016 05:10 AM, Peter Zijlstra wrote:
> On Fri, Aug 26, 2016 at 05:25:09AM +0200, Andreas Mohr wrote:
>>> Another alternative is to provide a standard mutex API that returns the
>>> owner of the lock if there is a real need for this capability. Peeking
>>> into lock internal is not a good practice.
>
>> So, it seems the most we could provide which would offer a reliable,
>> non-racy API protocol is something like:
>>
>> static bool mutex_is_locked_by_us(struct mutex *mutex)
>>
>> since during execution of this processing it would be guaranteed that:
>> - either we do have the lock, thus *we* *RELIABLY* are and will be "the owner"
>> - or we simply do not have it, thus *we* *RELIABLY* are and will be "not the owner"
> Right, and that is exactly what they attempted and need. And the new
> mutex implementation could actually do this much better than the old
> one.
>
> But yes, such an interface should be part of the mutex implementation
> proper, not something hacked on in random places.
It is what exactly I have in mind. The actual API implemented is subject
to negotiation. The important thing is that it has to be within the core
mutex code.
> Fwiw, the build bot seems to have found another instance of this thing
> :/ drivers/gpu/drm/msm/msm_gem_shrinker.c includes an exact copy.
This seems to be a new file that was introduced since 4.8.
Cheers,
Longman
next prev parent reply other threads:[~2016-08-26 14:33 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-08-26 3:25 [RFC][PATCH -v2 1/4] locking/drm/i915: Kill mutex trickery Andreas Mohr
2016-08-26 9:10 ` Peter Zijlstra
2016-08-26 14:33 ` Waiman Long [this message]
-- strict thread matches above, loose matches on Subject: below --
2016-08-25 18:37 [RFC][PATCH -v2 0/4] locking/mutex: Rewrite basic mutex Peter Zijlstra
2016-08-25 18:37 ` [RFC][PATCH -v2 1/4] locking/drm/i915: Kill mutex trickery Peter Zijlstra
2016-08-25 19:36 ` Daniel Vetter
2016-08-25 19:59 ` Waiman Long
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=57C05333.8010900@hpe.com \
--to=waiman.long@hpe.com \
--cc=andi@lisas.de \
--cc=daniel.vetter@intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=peterz@infradead.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 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.