From: Raghavendra K T <raghavendra.kt@linux.vnet.ibm.com>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Davidlohr Bueso <dave@stgolabs.net>,
Sasha Levin <sasha.levin@oracle.com>,
Waiman Long <Waiman.Long@hp.com>,
Peter Zijlstra <peterz@infradead.org>,
Ingo Molnar <mingo@kernel.org>,
Andrew Morton <akpm@linux-foundation.org>,
Andrey Ryabinin <a.ryabinin@samsung.com>,
Dave Jones <davej@codemonkey.org.uk>,
LKML <linux-kernel@vger.kernel.org>
Subject: Re: sched: memory corruption on completing completions
Date: Fri, 06 Feb 2015 20:30:35 +0530 [thread overview]
Message-ID: <54D4D713.8020805@linux.vnet.ibm.com> (raw)
In-Reply-To: <54D463B6.2020808@linux.vnet.ibm.com>
On 02/06/2015 12:18 PM, Raghavendra K T wrote:
> On 02/06/2015 04:27 AM, Linus Torvalds wrote:
>> On Thu, Feb 5, 2015 at 2:37 PM, Davidlohr Bueso <dave@stgolabs.net>
>> wrote:
>>>>
>>>> It is possible that the paravirt spinlocks could be saved by:
>>>>
>>>> - moving the clearing of TICKET_SLOWPATH_FLAG into the fastpath
>>>> locking code.
>>>
>>> Ouch, to avoid deadlocks they explicitly need the unlock to occur before
>>> the slowpath tail flag is read.
>>
>> Well, just make the unlock do the actual real unlock operation
>> ("fastpath"), leaving the TICKET_SLOWPATH_FLAG alone. The unlock path
>> can *test* the flag and do whatever kicking it needs to get people
>> started again, but not clear it again.
>>
>
> This is definitely a good idea, will think more on this.
>
Just sent the patch with that idea, also keeping in mind that
head = tail may not hold good for trylock checking
(last unlock might have left TICKET_SLOWPATH_FLAG set)
http://article.gmane.org/gmane.linux.kernel/1883900
next prev parent reply other threads:[~2015-02-06 14:59 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-02-04 23:24 sched: memory corruption on completing completions Sasha Levin
2015-02-04 23:46 ` Andrew Morton
2015-02-05 0:16 ` Linus Torvalds
2015-02-05 7:10 ` Ingo Molnar
2015-02-05 9:30 ` Peter Zijlstra
2015-02-05 20:44 ` Sasha Levin
2015-02-05 20:59 ` Davidlohr Bueso
2015-02-05 21:02 ` Sasha Levin
2015-02-05 21:34 ` Linus Torvalds
2015-02-05 22:37 ` Davidlohr Bueso
2015-02-05 22:57 ` Linus Torvalds
2015-02-06 6:48 ` Raghavendra K T
2015-02-06 15:00 ` Raghavendra K T [this message]
2015-02-06 12:29 ` Raghavendra K T
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=54D4D713.8020805@linux.vnet.ibm.com \
--to=raghavendra.kt@linux.vnet.ibm.com \
--cc=Waiman.Long@hp.com \
--cc=a.ryabinin@samsung.com \
--cc=akpm@linux-foundation.org \
--cc=dave@stgolabs.net \
--cc=davej@codemonkey.org.uk \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@kernel.org \
--cc=peterz@infradead.org \
--cc=sasha.levin@oracle.com \
--cc=torvalds@linux-foundation.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.