Messages in this thread | | | Date | Thu, 22 Sep 2016 07:41:23 -0700 | From | Davidlohr Bueso <> | Subject | Re: [RFC PATCH v2 3/5] futex: Throughput-optimized (TO) futexes |
| |
On Thu, 22 Sep 2016, Thomas Gleixner wrote:
>On Thu, 22 Sep 2016, Peter Zijlstra wrote: >> On Wed, Sep 21, 2016 at 07:37:34PM -0400, Waiman Long wrote: >> > On 09/21/2016 02:59 AM, Mike Galbraith wrote: >> > >On Tue, 2016-09-20 at 09:42 -0400, Waiman Long wrote: >> > >>This patch introduces a new futex implementation called >> > >>throughput-optimized (TO) futexes. >> > >nit: 'TO' sounds way too much like timeout... TP? You even use 'to' as >> > >shorthand for timeout in the next patch. >> > >> > I agree. I am not that satisfied with the TO name. So I will change it to TP >> > in my next revision of the patch. Thanks for the suggestion. >> >> I'd leave out the TO part entirely (or only mention it in changelogs). >> >> That is, I'd call the futex ops: FUTEX_LOCK and FUTEX_UNLOCK. > >That brings me to a different question: > >How is user space going to support this, i.e. is this some extra magic for >code which implements its own locking primitives or is there going to be a >wide use via e.g. glibc. > >Also what's the reason that we can't do probabilistic spinning for >FUTEX_WAIT and have to add yet another specialized variant of futexes?
Where would this leave the respective FUTEX_WAKE? A nop? Probably have to differentiate the fact that the queue was empty, but there was a spinning, instead of straightforward returning 0.
Thanks, Davidlohr
| |