[11/13] nptl: Simplify resetting the in-flight stack in __reclaim_stacks
Checks
Context |
Check |
Description |
dj/TryBot-apply_patch |
success
|
Patch applied to master at the time it was sent
|
Commit Message
stack_list_del overwrites the in-flight stack variable.
---
nptl/allocatestack.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
Comments
On 5/6/21 2:11 PM, Florian Weimer via Libc-alpha wrote:
> stack_list_del overwrites the in-flight stack variable.
LGTM. Hard to tell if I want to call this is a bug fix or a cleanup
that just happens naturally as part of the refactoring :-)
Tested on x86_64 and i686 without regression.
Tested-by: Carlos O'Donell <carlos@redhat.com>
Reviewed-by: Carlos O'Donell <carlos@redhat.com>
> ---
> nptl/allocatestack.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/nptl/allocatestack.c b/nptl/allocatestack.c
> index 12cd1058d4..076cffd35b 100644
> --- a/nptl/allocatestack.c
> +++ b/nptl/allocatestack.c
> @@ -799,6 +799,8 @@ __reclaim_stacks (void)
> elem->next->prev = elem->prev;
> elem->prev->next = elem->next;
> }
> +
> + GL (dl_in_flight_stack) = 0;
> }
>
> /* Mark all stacks except the still running one as free. */
> @@ -842,7 +844,7 @@ __reclaim_stacks (void)
> /* Remove the entry for the current thread to from the cache list
> and add it to the list of running threads. Which of the two
> lists is decided by the user_stack flag. */
> - stack_list_del (&self->list);
> + list_del (&self->list);
>
> /* Re-initialize the lists for all the threads. */
> INIT_LIST_HEAD (&GL (dl_stack_used));
> @@ -856,8 +858,6 @@ __reclaim_stacks (void)
> /* There is one thread running. */
> __nptl_nthreads = 1;
>
> - GL (dl_in_flight_stack) = 0;
> -
> /* Initialize locks. */
> GL (dl_stack_cache_lock) = LLL_LOCK_INITIALIZER;
> __default_pthread_attr_lock = LLL_LOCK_INITIALIZER;
>
@@ -799,6 +799,8 @@ __reclaim_stacks (void)
elem->next->prev = elem->prev;
elem->prev->next = elem->next;
}
+
+ GL (dl_in_flight_stack) = 0;
}
/* Mark all stacks except the still running one as free. */
@@ -842,7 +844,7 @@ __reclaim_stacks (void)
/* Remove the entry for the current thread to from the cache list
and add it to the list of running threads. Which of the two
lists is decided by the user_stack flag. */
- stack_list_del (&self->list);
+ list_del (&self->list);
/* Re-initialize the lists for all the threads. */
INIT_LIST_HEAD (&GL (dl_stack_used));
@@ -856,8 +858,6 @@ __reclaim_stacks (void)
/* There is one thread running. */
__nptl_nthreads = 1;
- GL (dl_in_flight_stack) = 0;
-
/* Initialize locks. */
GL (dl_stack_cache_lock) = LLL_LOCK_INITIALIZER;
__default_pthread_attr_lock = LLL_LOCK_INITIALIZER;