aboutsummaryrefslogtreecommitdiff
path: root/nptl
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2009-01-08 00:03:29 +0000
committerUlrich Drepper <drepper@redhat.com>2009-01-08 00:03:29 +0000
commitdf9293cb169bf848be529381ca43680aa192421e (patch)
treeed8f2033ae7a6f9aa08d36e708db32deeeb611fe /nptl
parent5846e22fbfab60c75547d5a619029d297864d86a (diff)
downloadglibc-df9293cb169bf848be529381ca43680aa192421e.zip
glibc-df9293cb169bf848be529381ca43680aa192421e.tar.gz
glibc-df9293cb169bf848be529381ca43680aa192421e.tar.bz2
* resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr2_r): Check and
adjust the buffer alignment.
Diffstat (limited to 'nptl')
-rw-r--r--nptl/allocatestack.c20
1 files changed, 10 insertions, 10 deletions
diff --git a/nptl/allocatestack.c b/nptl/allocatestack.c
index d275181..ce05770 100644
--- a/nptl/allocatestack.c
+++ b/nptl/allocatestack.c
@@ -115,7 +115,7 @@ static LIST_HEAD (stack_used);
/* We need to record what list operations we are going to do so that,
in case of an asynchronous interruption due to a fork() call, we
can correct for the work. */
-static uintptr_t *in_flight_stack;
+static uintptr_t in_flight_stack;
/* List of the threads with user provided stacks in use. No need to
initialize this, since it's done in __pthread_initialize_minimal. */
@@ -815,10 +815,10 @@ __reclaim_stacks (void)
we have to be aware that we might have interrupted a list
operation. */
- if (in_flight_stack != NULL)
+ if (in_flight_stack != 0)
{
bool add_p = in_flight_stack & 1;
- in_flight_stack = (list_t *) (in_flight_stack & ~1l);
+ list_t *elem = (list_t *) (in_flight_stack & ~UINTMAX_C (1));
if (add_p)
{
@@ -828,11 +828,11 @@ __reclaim_stacks (void)
{
if (l->next->prev != l)
{
- assert (l->next->prev == in_flight_stack);
+ assert (l->next->prev == elem);
- in_flight_stack->next = l->next;
- in_flight_stack->prev = l;
- l->next = in_flight_stack;
+ elem->next = l->next;
+ elem->prev = l;
+ l->next = elem;
return 1;
}
@@ -846,11 +846,11 @@ __reclaim_stacks (void)
else
{
/* We can simply always replay the delete operation. */
- in_flight_stack->next->prev = in_flight_stack->prev;
- in_flight_stack->prev->next = in_flight_stack->next;
+ elem->next->prev = elem->prev;
+ elem->prev->next = elem->next;
}
- in_flight_stack = NULL;
+ in_flight_stack = 0;
}
/* Mark all stacks except the still running one as free. */