Add pthread_attr_getstack{,size,addr} needed by jdk

This commit is contained in:
christos 2003-06-02 16:59:26 +00:00
parent bc91866ddf
commit dc1665b80b
2 changed files with 34 additions and 3 deletions

View File

@ -1,4 +1,4 @@
/* $NetBSD: pthread.c,v 1.19 2003/05/27 15:24:24 christos Exp $ */
/* $NetBSD: pthread.c,v 1.20 2003/06/02 16:59:26 christos Exp $ */
/*-
* Copyright (c) 2001 The NetBSD Foundation, Inc.
@ -37,7 +37,7 @@
*/
#include <sys/cdefs.h>
__RCSID("$NetBSD: pthread.c,v 1.19 2003/05/27 15:24:24 christos Exp $");
__RCSID("$NetBSD: pthread.c,v 1.20 2003/06/02 16:59:26 christos Exp $");
#include <err.h>
#include <errno.h>
@ -782,6 +782,34 @@ pthread_attr_getschedparam(const pthread_attr_t *attr,
return 0;
}
int
pthread_attr_getstack(const pthread_attr_t *attr, void **addr, size_t *size)
{
if ((attr == NULL) || (attr->pta_magic != PT_ATTR_MAGIC))
return EINVAL;
*addr = pthread__self()->pt_stack.ss_sp;
*size = pthread__self()->pt_stack.ss_size;
return 0;
}
int
pthread_attr_getstacksize(const pthread_attr_t *attr, size_t *size)
{
if ((attr == NULL) || (attr->pta_magic != PT_ATTR_MAGIC))
return EINVAL;
*size = pthread__self()->pt_stack.ss_size;
return 0;
}
int
pthread_attr_getstackaddr(const pthread_attr_t *attr, void **addr)
{
if ((attr == NULL) || (attr->pta_magic != PT_ATTR_MAGIC))
return EINVAL;
*addr = pthread__self()->pt_stack.ss_sp;
return 0;
}
int
pthread_attr_getname_np(const pthread_attr_t *attr, char *name, size_t len,

View File

@ -1,4 +1,4 @@
/* $NetBSD: pthread.h,v 1.9 2003/02/26 22:02:48 thorpej Exp $ */
/* $NetBSD: pthread.h,v 1.10 2003/06/02 16:59:27 christos Exp $ */
/*-
* Copyright (c) 2001 The NetBSD Foundation, Inc.
@ -67,6 +67,9 @@ int pthread_attr_getschedparam(const pthread_attr_t *,
struct sched_param *);
int pthread_attr_setschedparam(pthread_attr_t *,
const struct sched_param *);
int pthread_attr_getstack(const pthread_attr_t *, void **, size_t *);
int pthread_attr_getstacksize(const pthread_attr_t *, size_t *);
int pthread_attr_getstackaddr(const pthread_attr_t *, void **);
int pthread_attr_getdetachstate(const pthread_attr_t *, int *);
int pthread_attr_setdetachstate(pthread_attr_t *, int);
int pthread_attr_getname_np(const pthread_attr_t *, char *,