pthread: implement pthread_attr_[get|set]stack.

remove pthread_attr_[get|set]stackaddr from unimplemented functions.

Change-Id: I58807e86c75a189a576639ae1b2e4505a63700a5
Reviewed-on: https://review.haiku-os.org/c/1152
Reviewed-by: waddlesplash <[email protected]>
This commit is contained in:
Jérôme Duval
2019-03-07 16:55:14 +00:00
parent 29ec639a6d
commit 901c3d44b0
6 changed files with 103 additions and 13 deletions
+5 -11
View File
@@ -209,6 +209,11 @@ extern int pthread_attr_getguardsize(const pthread_attr_t *attr,
size_t *guardsize);
extern int pthread_attr_setguardsize(pthread_attr_t *attr, size_t guardsize);
extern int pthread_attr_getstack(const pthread_attr_t *attr,
void **stackaddr, size_t *stacksize);
extern int pthread_attr_setstack(pthread_attr_t *attr, void *stackaddr,
size_t stacksize);
#if 0 /* Unimplemented attribute functions: */
/* [TPS] */
@@ -220,19 +225,8 @@ extern int pthread_attr_getschedpolicy(const pthread_attr_t *attr,
int *policy);
extern int pthread_attr_setschedpolicy(pthread_attr_t *attr, int policy);
/* [TSA] */
extern int pthread_attr_getstackaddr(const pthread_attr_t *attr,
void **stackaddr);
extern int pthread_attr_setstackaddr(pthread_attr_t *attr, void *stackaddr);
/* [TSA TSS] */
extern int pthread_attr_getstack(const pthread_attr_t *attr,
void **stackaddr, size_t *stacksize);
extern int pthread_attr_setstack(pthread_attr_t *attr, void *stackaddr, size_t stacksize);
#endif /* 0 */
/* thread functions */
extern int pthread_create(pthread_t *thread, const pthread_attr_t *attr,
void *(*start_routine)(void*), void *arg);
@@ -46,6 +46,7 @@ typedef struct _pthread_attr {
int32 sched_priority;
size_t stack_size;
size_t guard_size;
void *stack_address;
} pthread_attr;
typedef struct _pthread_rwlockattr {