[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20150907093029.GC14244@arm.com>
Date: Mon, 7 Sep 2015 10:30:29 +0100
From: Will Deacon <will.deacon@....com>
To: Peter Zijlstra <peterz@...radead.org>
Cc: Linus Torvalds <torvalds@...ux-foundation.org>,
Chris Metcalf <cmetcalf@...hip.com>,
Thomas Gleixner <tglx@...utronix.de>,
Oleg Nesterov <oleg@...hat.com>,
Paul McKenney <paulmck@...ux.vnet.ibm.com>,
Ingo Molnar <mingo@...nel.org>,
"mtk.manpages@...il.com" <mtk.manpages@...il.com>,
"dvhart@...radead.org" <dvhart@...radead.org>,
"dave@...olabs.net" <dave@...olabs.net>,
"Vineet.Gupta1@...opsys.com" <Vineet.Gupta1@...opsys.com>,
"ralf@...ux-mips.org" <ralf@...ux-mips.org>,
"ddaney@...iumnetworks.com" <ddaney@...iumnetworks.com>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
Russell King - ARM Linux <linux@....linux.org.uk>,
Richard Henderson <rth@...ddle.net>
Subject: Re: futex atomic vs ordering constraints
On Sat, Sep 05, 2015 at 06:53:02PM +0100, Peter Zijlstra wrote:
> On Wed, Sep 02, 2015 at 02:18:53PM -0700, Linus Torvalds wrote:
> > So I think we could possibly relax the requirements (and document this
> > very clearly) to say that the futex operation must be totally ordered
> > wrt any other _user_space_ accesses by that thread. I suspect a lot of
> > architectures can then say "we may be very weakly ordered, but kernel
> > entry/exit implies enough synchronization that we do not need any
> > futher memory barriers".
>
> Right, so before sending this email I actually spoke to Ralf about this
> option, and he said that this is not actually well defined for MIPS.
>
> But we could certainly document it such and let archs for which this is
> well documented (I would expect this to be most) choose that
> implementation.
Whilst a control-dependency + exception return forms a barrier of sorts
on arm/arm64, it's not required to be transitive [1], so I wouldn't be
comfortable making that relaxation on the futex path.
Will
[1] See, for example, "ISA2+dmb+ctrlisb+dmb" at
https://www.cl.cam.ac.uk/~pes20/ppcmem/index.html#ARM
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists