2021-07-13 16:16:16

by Thomas Gleixner

[permalink] [raw]
Subject: [patch 42/50] futex: Cleanup stale comments

From: Thomas Gleixner <[email protected]>

The futex key reference mechanism is long gone. Cleanup the stale comments
which still mention it.

Signed-off-by: Thomas Gleixner <[email protected]>
---
kernel/futex.c | 9 +++------
1 file changed, 3 insertions(+), 6 deletions(-)
---
diff --git a/kernel/futex.c b/kernel/futex.c
index b8eab7a2934b..e0f266fa7249 100644
--- a/kernel/futex.c
+++ b/kernel/futex.c
@@ -1354,7 +1354,7 @@ static int lock_pi_update_atomic(u32 __user *uaddr, u32 uval, u32 newval)
* - 1 - acquired the lock;
* - <0 - error
*
- * The hb->lock and futex_key refs shall be held by the caller.
+ * The hb->lock must be held by the caller.
*
* @exiting is only set when the return value is -EBUSY. If so, this holds
* a refcount on the exiting task on return and the caller needs to drop it
@@ -2621,8 +2621,7 @@ static void futex_wait_queue_me(struct futex_hash_bucket *hb, struct futex_q *q,
*
* Setup the futex_q and locate the hash_bucket. Get the futex value and
* compare it with the expected value. Handle atomic faults internally.
- * Return with the hb lock held and a q.key reference on success, and unlocked
- * with no q.key reference on failure.
+ * Return with the hb lock held on success, and unlocked on failure.
*
* Return:
* - 0 - uaddr contains val and hb has been locked;
@@ -3235,9 +3234,7 @@ static int futex_wait_requeue_pi(u32 __user *uaddr, unsigned int flags,
* In order for us to be here, we know our q.key == key2, and since
* we took the hb->lock above, we also know that futex_requeue() has
* completed and we no longer have to concern ourselves with a wakeup
- * race with the atomic proxy lock acquisition by the requeue code. The
- * futex_requeue dropped our key1 reference and incremented our key2
- * reference count.
+ * race with the atomic proxy lock acquisition by the requeue code.
*/

/*


2021-07-28 23:34:19

by André Almeida

[permalink] [raw]
Subject: Re: [patch 42/50] futex: Cleanup stale comments

Às 12:11 de 13/07/21, Thomas Gleixner escreveu:
> From: Thomas Gleixner <[email protected]>
>
> The futex key reference mechanism is long gone. Cleanup the stale comments
> which still mention it.
>

There are two comments at futex_wait() that can be cleaned as well:

/*
* Prepare to wait on uaddr. On success, holds hb lock and increments
* q.key refs.
*/

/* unqueue_me() drops q.key ref */


> Signed-off-by: Thomas Gleixner <[email protected]>
> ---
> kernel/futex.c | 9 +++------
> 1 file changed, 3 insertions(+), 6 deletions(-)
> ---
> diff --git a/kernel/futex.c b/kernel/futex.c
> index b8eab7a2934b..e0f266fa7249 100644
> --- a/kernel/futex.c
> +++ b/kernel/futex.c
> @@ -1354,7 +1354,7 @@ static int lock_pi_update_atomic(u32 __user *uaddr, u32 uval, u32 newval)
> * - 1 - acquired the lock;
> * - <0 - error
> *
> - * The hb->lock and futex_key refs shall be held by the caller.
> + * The hb->lock must be held by the caller.
> *
> * @exiting is only set when the return value is -EBUSY. If so, this holds
> * a refcount on the exiting task on return and the caller needs to drop it
> @@ -2621,8 +2621,7 @@ static void futex_wait_queue_me(struct futex_hash_bucket *hb, struct futex_q *q,
> *
> * Setup the futex_q and locate the hash_bucket. Get the futex value and
> * compare it with the expected value. Handle atomic faults internally.
> - * Return with the hb lock held and a q.key reference on success, and unlocked
> - * with no q.key reference on failure.
> + * Return with the hb lock held on success, and unlocked on failure.
> *
> * Return:
> * - 0 - uaddr contains val and hb has been locked;
> @@ -3235,9 +3234,7 @@ static int futex_wait_requeue_pi(u32 __user *uaddr, unsigned int flags,
> * In order for us to be here, we know our q.key == key2, and since
> * we took the hb->lock above, we also know that futex_requeue() has
> * completed and we no longer have to concern ourselves with a wakeup
> - * race with the atomic proxy lock acquisition by the requeue code. The
> - * futex_requeue dropped our key1 reference and incremented our key2
> - * reference count.
> + * race with the atomic proxy lock acquisition by the requeue code.
> */
>
> /*
>
>