From: Darren Hart <dvhart@linux.intel.com>
To: Thomas Gleixner <tglx@linutronix.de>
Cc: Siddhesh Poyarekar <siddhesh.poyarekar@gmail.com>,
LKML <linux-kernel@vger.kernel.org>,
Ingo Molnar <mingo@kernel.org>,
Peter Zijlstra <peterz@infradead.org>
Subject: Re: [PATCH] [RESEND 2] Take over futex of dead task only if FUTEX_WAITERS is not set
Date: Wed, 24 Oct 2012 21:36:14 -0700 [thread overview]
Message-ID: <5088C1BE.9010203@linux.intel.com> (raw)
In-Reply-To: <alpine.LFD.2.02.1210242006450.2756@ionos>
On 10/24/2012 11:08 AM, Thomas Gleixner wrote:
> On Wed, 24 Oct 2012, Siddhesh Poyarekar wrote:
>
>>> Now there is a different solution to that problem. Do not look at the
>>> user space value at all and enforce a lookup of possibly available
>>> pi_state. If pi_state can be found, then the new incoming locker T3
>>> blocks on that pi_state and legitimately races with T2 to acquire the
>>> rt_mutex and the pi_state and therefor the proper ownership of the
>>> user space futex.
>>
>> That works. Thanks for the detailed explanation too.
>
> Thanks for the reproducer and finding the trouble spot in the first
> place!
Absolutely, that was great. Siddhesh, any objection to this test being
incorporated into futextest?
http://git.kernel.org/?p=linux/kernel/git/dvhart/futextest.git;a=summary
> I'll queue that if Darren has no objections and mark it for stable as
> well.
I would mostly like to understand the stale waiters case you mentioned.
Otherwise, it seems sound - but changing what appears to be a workaround
for an undocumented cornercase in code this complex does make me a bit
nervous. I'd feel better if we could get Siddhesh's and this stale
waiters covered in futextest.
--
Darren Hart
Intel Open Source Technology Center
Yocto Project - Technical Lead - Linux Kernel
next prev parent reply other threads:[~2012-10-25 4:37 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-10-11 14:52 [PATCH] Take over futex of dead task only if FUTEX_WAITERS is not set Siddhesh Poyarekar
2012-10-17 7:15 ` [PATCH RESEND] " Siddhesh Poyarekar
2012-10-22 3:20 ` [PATCH] [RESEND 2] " Siddhesh Poyarekar
2012-10-23 14:04 ` Darren Hart
2012-10-23 20:29 ` Thomas Gleixner
2012-10-24 12:48 ` Siddhesh Poyarekar
2012-10-24 18:08 ` Thomas Gleixner
2012-10-25 4:36 ` Darren Hart [this message]
2012-10-25 4:44 ` Siddhesh Poyarekar
2012-10-25 4:33 ` Darren Hart
2012-10-25 8:14 ` Thomas Gleixner
2012-10-25 8:18 ` Darren Hart
2012-11-01 21:35 ` [tip:core/urgent] futex: Handle futex_pi OWNER_DIED take over correctly tip-bot for Thomas Gleixner
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=5088C1BE.9010203@linux.intel.com \
--to=dvhart@linux.intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@kernel.org \
--cc=peterz@infradead.org \
--cc=siddhesh.poyarekar@gmail.com \
--cc=tglx@linutronix.de \
/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.