Skip to content

Commit

Permalink
Update.
Browse files Browse the repository at this point in the history
	* 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.
  • Loading branch information
Ulrich Drepper committed Oct 4, 2004
1 parent 91a3b2a commit 3078cba
Show file tree
Hide file tree
Showing 8 changed files with 46 additions and 15 deletions.
4 changes: 4 additions & 0 deletions ChangeLog
Original file line number Diff line number Diff line change
@@ -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.

Expand Down
8 changes: 8 additions & 0 deletions linuxthreads/ChangeLog
Original file line number Diff line number Diff line change
@@ -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]
Expand Down
6 changes: 6 additions & 0 deletions linuxthreads/sysdeps/unix/sysv/linux/bits/posix_opt.h
Original file line number Diff line number Diff line change
Expand Up @@ -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 */
6 changes: 6 additions & 0 deletions linuxthreads/sysdeps/unix/sysv/linux/i386/bits/posix_opt.h
Original file line number Diff line number Diff line change
Expand Up @@ -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 */
6 changes: 6 additions & 0 deletions linuxthreads/sysdeps/unix/sysv/linux/ia64/bits/posix_opt.h
Original file line number Diff line number Diff line change
Expand Up @@ -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 */
6 changes: 6 additions & 0 deletions linuxthreads/sysdeps/unix/sysv/linux/x86_64/bits/posix_opt.h
Original file line number Diff line number Diff line change
Expand Up @@ -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 */
12 changes: 10 additions & 2 deletions nscd/connections.c
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
13 changes: 0 additions & 13 deletions nscd/nscd.c
Original file line number Diff line number Diff line change
Expand Up @@ -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 ();
}

0 comments on commit 3078cba

Please sign in to comment.