summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRoland McGrath <roland@hack.frob.com>2015-06-24 17:58:12 -0700
committerRoland McGrath <roland@hack.frob.com>2015-06-24 17:58:12 -0700
commite185d57e9933806ede21294acb2a3283a840b6c7 (patch)
tree5a002fdbee89ed64bb7d3c950d23d02e1ed6099a
parent86edd44f04891c0bd0fd347cba4bfc2a13d94377 (diff)
downloadglibc-e185d57e9933806ede21294acb2a3283a840b6c7.tar.gz
Use unsigned types for counters in getaddrinfo_a code.
-rw-r--r--ChangeLog10
-rw-r--r--resolv/gai_misc.h2
-rw-r--r--resolv/gai_suspend.c2
-rw-r--r--resolv/getaddrinfo_a.c4
-rw-r--r--sysdeps/nptl/gai_misc.h4
5 files changed, 16 insertions, 6 deletions
diff --git a/ChangeLog b/ChangeLog
index 9d06bc14e9..e2e2d2ec5a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,15 @@
2015-06-24 Roland McGrath <roland@hack.frob.com>
+ * resolv/gai_misc.h (struct waitlist): Change type of field
+ counterp to 'volatile unsigned int *'.
+ * sysdeps/nptl/gai_misc.h (GAI_MISC_WAIT): Use unsigned types for
+ FUTEXADDR and OLDVAL.
+ * resolv/getaddrinfo_a.c (getaddrinfo_a):
+ Give local variable TOTAL type 'volatile unsigned int'.
+ (struct async_waitlist): Change type of field counter to 'unsigned int'.
+ * resolv/gai_suspend.c (gai_suspend):
+ Give local variable CNTR type 'unsigned int'.
+
* sysdeps/pthread/aio_misc.h (struct waitlist): Change type of field
counterp to 'volatile unsigned int *'.
* sysdeps/pthread/aio_suspend.c [DONT_NEED_AIO_MISC_COND]
diff --git a/resolv/gai_misc.h b/resolv/gai_misc.h
index 502cad6a8a..92f968830c 100644
--- a/resolv/gai_misc.h
+++ b/resolv/gai_misc.h
@@ -31,7 +31,7 @@ struct waitlist
#ifndef DONT_NEED_GAI_MISC_COND
pthread_cond_t *cond;
#endif
- volatile int *counterp;
+ volatile unsigned int *counterp;
/* The next field is used in asynchronous `lio_listio' operations. */
struct sigevent *sigevp;
/* XXX See requestlist, it's used to work around the broken signal
diff --git a/resolv/gai_suspend.c b/resolv/gai_suspend.c
index 26a2b4e353..c3a1288360 100644
--- a/resolv/gai_suspend.c
+++ b/resolv/gai_suspend.c
@@ -35,7 +35,7 @@ gai_suspend (const struct gaicb *const list[], int ent,
pthread_cond_t cond = PTHREAD_COND_INITIALIZER;
#endif
int cnt;
- int cntr = 1;
+ unsigned int cntr = 1;
int none = 1;
int result;
diff --git a/resolv/getaddrinfo_a.c b/resolv/getaddrinfo_a.c
index b7ae37290b..e6372228c9 100644
--- a/resolv/getaddrinfo_a.c
+++ b/resolv/getaddrinfo_a.c
@@ -28,7 +28,7 @@
/* We need this special structure to handle asynchronous I/O. */
struct async_waitlist
{
- int counter;
+ unsigned int counter;
struct sigevent sigev;
struct waitlist list[0];
};
@@ -40,7 +40,7 @@ getaddrinfo_a (int mode, struct gaicb *list[], int ent, struct sigevent *sig)
struct sigevent defsigev;
struct requestlist *requests[ent];
int cnt;
- volatile int total = 0;
+ volatile unsigned int total = 0;
int result = 0;
/* Check arguments. */
diff --git a/sysdeps/nptl/gai_misc.h b/sysdeps/nptl/gai_misc.h
index bb83dcabb4..a34dbc0dd9 100644
--- a/sysdeps/nptl/gai_misc.h
+++ b/sysdeps/nptl/gai_misc.h
@@ -35,8 +35,8 @@
#define GAI_MISC_WAIT(result, futex, timeout, cancel) \
do { \
- volatile int *futexaddr = &futex; \
- int oldval = futex; \
+ volatile unsigned int *futexaddr = &futex; \
+ unsigned int oldval = futex; \
\
if (oldval != 0) \
{ \