* nscd/connections.c (start_threads): Use sysconf in case
	_POSIX_CLOCK_SELECTION or _POSIX_MONOTONIC_CLOCK is not greater zero.

	* nscd/nscd.c: Remove getaddrinfo stub definition.
This commit is contained in:
Ulrich Drepper 2004-10-04 16:35:54 +00:00
parent 91a3b2ad2e
commit 3078cba2f7
8 changed files with 46 additions and 15 deletions

View File

@ -1,7 +1,11 @@
2004-10-04 Ulrich Drepper <drepper@redhat.com>
* nscd/connections.c (start_threads): Use sysconf in case
_POSIX_CLOCK_SELECTION or _POSIX_MONOTONIC_CLOCK is not greater zero.
* nscd/Makefile (nscd-modules): Add gai.
* nscd/gai.c: New file.
* nscd/nscd.c: Remove getaddrinfo stub definition.
* assert/assert.h: Give up on using __builtin_expect.

View File

@ -1,3 +1,11 @@
2004-10-04 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/bits/posix_opt.h: Define
_POSIX_THREAD_PROCESS_SHARED and _POSIX_CLOCK_SELECTION as -1.
* sysdeps/unix/sysv/linux/i386/bits/posix_opt.h: Likewise.
* sysdeps/unix/sysv/linux/ia64/bits/posix_opt.h: Likewise.
* sysdeps/unix/sysv/linux/x86_64/bits/posix_opt.h: Likewise.
2004-09-25 Roland McGrath <roland@redhat.com>
[BZ #406]

View File

@ -132,7 +132,13 @@
/* POSIX message queues are available. */
#define _POSIX_MESSAGE_PASSING 200112L
/* Thread process-shared synchronization is not supported. */
#define _POSIX_THREAD_PROCESS_SHARED -1
/* The monotonic clock might be available. */
#define _POSIX_MONOTONIC_CLOCK 0
/* The clock selection interfaces are not available. */
#define _POSIX_CLOCK_SELECTION -1
#endif /* posix_opt.h */

View File

@ -138,7 +138,13 @@
/* POSIX message queues are available. */
#define _POSIX_MESSAGE_PASSING 200112L
/* Thread process-shared synchronization is not supported. */
#define _POSIX_THREAD_PROCESS_SHARED -1
/* The monotonic clock might be available. */
#define _POSIX_MONOTONIC_CLOCK 0
/* The clock selection interfaces are not available. */
#define _POSIX_CLOCK_SELECTION -1
#endif /* posix_opt.h */

View File

@ -138,7 +138,13 @@
/* POSIX message queues are available. */
#define _POSIX_MESSAGE_PASSING 200112L
/* Thread process-shared synchronization is not supported. */
#define _POSIX_THREAD_PROCESS_SHARED -1
/* The monotonic clock might be available. */
#define _POSIX_MONOTONIC_CLOCK 0
/* The clock selection interfaces are not available. */
#define _POSIX_CLOCK_SELECTION -1
#endif /* posix_opt.h */

View File

@ -138,7 +138,13 @@
/* POSIX message queues are available. */
#define _POSIX_MESSAGE_PASSING 200112L
/* Thread process-shared synchronization is not supported. */
#define _POSIX_THREAD_PROCESS_SHARED -1
/* The monotonic clock might be available. */
#define _POSIX_MONOTONIC_CLOCK 0
/* The clock selection interfaces are not available. */
#define _POSIX_CLOCK_SELECTION -1
#endif /* posix_opt.h */

View File

@ -1455,10 +1455,18 @@ start_threads (void)
pthread_condattr_t condattr;
pthread_condattr_init (&condattr);
#if _POSIX_CLOCK_SELECTION >= 0 && _POSIX_MONOTONIC_CLOCK >= 0
#if defined _POSIX_CLOCK_SELECTION && _POSIX_CLOCK_SELECTION >= 0 \
&& defined _POSIX_MONOTONIC_CLOCK && _POSIX_MONOTONIC_CLOCK >= 0
/* Determine whether the monotonous clock is available. */
struct timespec dummy;
if (clock_getres (CLOCK_MONOTONIC, &dummy) == 0
if (
# if _POSIX_MONOTONIC_CLOCK == 0
sysconf (_SC_MONOTONIC_CLOCK) > 0 &&
# endif
# if _POSIX_CLOCK_SELECTION == 0
sysconf (_SC_CLOCK_SELECTION) > 0 &&
# endif
clock_getres (CLOCK_MONOTONIC, &dummy) == 0
&& pthread_condattr_setclock (&condattr, CLOCK_MONOTONIC) == 0)
timeout_clock = CLOCK_MONOTONIC;
#endif

View File

@ -502,16 +502,3 @@ write_pid (const char *file)
return 0;
}
/* This is an ugly hack which prevents getaddrinfo from being dragged
into nscd. There currently is no special getaddrinfo version for
use in nscd. In case it should be necessary such a version must be
created and this dummy version should be removed. */
extern void getaddrinfo (void) __attribute ((visibility ("hidden")));
void
getaddrinfo (void)
{
abort ();
}