Implement pthread_condattr_{get,set}clock.
We only support CLOCK_REALTIME and CLOCK_MONOTONIC for now, so we us a single bit from pthread_cond_t->value to denote the clock type. Note that this reduces the width of the counter to 30 bits, but this should be large enough for all practical purposes. bug: 13232338 Change-Id: I857e7da64b3ecbb23eeac7c9f3fbd460f60231bd
This commit is contained in:
@@ -127,11 +127,13 @@ int pthread_attr_setschedparam(pthread_attr_t*, const struct sched_param*) __non
|
||||
int pthread_attr_setschedpolicy(pthread_attr_t*, int) __nonnull((1));
|
||||
int pthread_attr_setscope(pthread_attr_t*, int) __nonnull((1));
|
||||
int pthread_attr_setstack(pthread_attr_t*, void*, size_t) __nonnull((1));
|
||||
int pthread_attr_setstacksize(pthread_attr_t * attr, size_t stack_size) __nonnull((1));
|
||||
int pthread_attr_setstacksize(pthread_attr_t*, size_t stack_size) __nonnull((1));
|
||||
|
||||
int pthread_condattr_destroy(pthread_condattr_t*) __nonnull((1));
|
||||
int pthread_condattr_getclock(const pthread_condattr_t*, clockid_t*) __nonnull((1, 2));
|
||||
int pthread_condattr_getpshared(const pthread_condattr_t*, int*) __nonnull((1, 2));
|
||||
int pthread_condattr_init(pthread_condattr_t*) __nonnull((1));
|
||||
int pthread_condattr_setclock(pthread_condattr_t*, clockid_t) __nonnull((1));
|
||||
int pthread_condattr_setpshared(pthread_condattr_t*, int) __nonnull((1));
|
||||
|
||||
int pthread_cond_broadcast(pthread_cond_t*) __nonnull((1));
|
||||
@@ -236,7 +238,9 @@ extern void __pthread_cleanup_pop(__pthread_cleanup_t*, int);
|
||||
int pthread_attr_getstackaddr(const pthread_attr_t*, void**) __nonnull((1, 2)); /* deprecated */
|
||||
int pthread_attr_setstackaddr(pthread_attr_t*, void*) __nonnull((1)); /* deprecated */
|
||||
|
||||
/* Bionic additions that are deprecated even in the 32-bit ABI. */
|
||||
// Bionic additions that are deprecated even in the 32-bit ABI.
|
||||
//
|
||||
// TODO: Remove them once chromium_org / NFC have switched over.
|
||||
int pthread_cond_timedwait_monotonic_np(pthread_cond_t*, pthread_mutex_t*, const struct timespec*);
|
||||
int pthread_cond_timedwait_monotonic(pthread_cond_t*, pthread_mutex_t*, const struct timespec*);
|
||||
#define HAVE_PTHREAD_COND_TIMEDWAIT_MONOTONIC 1
|
||||
|
Reference in New Issue
Block a user