Re: [PATCH v2 16/22] futex: Implement sys_futex_waitv()

From: Peter Zijlstra
Date: Thu Oct 07 2021 - 05:09:07 EST



Hi Zack,

Please use reply-all; I've restored the Cc's

On Wed, Oct 06, 2021 at 09:48:43AM -0400, Zack Weinberg wrote:
> On Wed, Oct 6, 2021, at 7:50 AM, Peter Zijlstra wrote:
> > On Thu, Sep 23, 2021 at 02:11:05PM -0300, André Almeida wrote:
> >> Returns the array index of one of the awakened futexes. There’s no given
> >> information of how many were awakened, or any particular attribute of it
> >> (if it’s the first awakened, if it is of the smaller index...).
> >
> > As per some native speakers on IRC, awaken isn't the right word. I've
> > changed it like the below.
>
> "woken" and "awoken" are also not the right word (my brain flags both
> as spelling errors). Suggestions below:
>
> > - * Returns the array index of one of the awaken futexes. There's no given
> > - * information of how many were awakened, or any particular attribute of it (if
> > - * it's the first awakened, if it is of the smaller index...).
> > + * Returns the array index of one of the woken futexes. There's no given
> > + * information of how many were woken, or any particular attribute of it (if
> > + * it's the first woken, if it is of the smaller index...).
>
> "awakened" was the correct word in all three places here. The
> sentences are awkward, I might suggest

Afaict it's a bit of a mess. I googled the thing and there's apparently
2 verbs with identical meaning but different inflections:

awake (irregular): awake, awoke (awaked), awoken (awaken)
awaken (regular): awaken, awakened, awakened.

Now the thing is, the futex operation is FUTEX_WAKE, not FUTEX_AWAKEN,
therefore I think we should be going with the first (irregular) verb,
which then gets me 'woken'.

( also, 'awaked' gets me the mental image of a hillbilly, but that might
just be me -- the forms were all suggested by meriam-webster:

https://www.merriam-webster.com/words-at-play/usage-awaken-awoken-awakened

for further confusion also see:

https://www.grammar.com/awake-awaken-wake-waken
)

> # Returns the array index of one of the awakened futexes.
> # No further information is provided: any number of other
> # futexes may also have been awakened by the same event, and
> # if more than one futex was awakened, the returned index may
> # refer to any one of them. (It is not necessarily the futex
> # with the smallest index, nor the one most recently awakened,
> # nor ...)

Aside of the whole wake mess, I do like that better, let me go make that
happen.

> > - * absorb any awake events, which cannot be done before the
> > + * loose any wake events, which cannot be done before the
>
> 'wake events' is correct here, but you introduced an unrelated error:
> 'loose' is the opposite of 'tight', you want 'lose' with only one O.

I shall forever make that mistake :-(