diff options
author | Rich Felker <dalias@aerifal.cx> | 2012-06-09 19:53:29 -0400 |
---|---|---|
committer | Rich Felker <dalias@aerifal.cx> | 2012-06-09 19:53:29 -0400 |
commit | 819006a88b9473872fee91135b06f4e23231d97e (patch) | |
tree | a123767e77980a5feeee0e05a21ea2fe2b2a2b8e /src/internal | |
parent | f457b1cb0d49f1b47bc7baf4bb516f1860816f03 (diff) | |
download | musl-819006a88b9473872fee91135b06f4e23231d97e.tar.gz musl-819006a88b9473872fee91135b06f4e23231d97e.tar.bz2 musl-819006a88b9473872fee91135b06f4e23231d97e.tar.xz musl-819006a88b9473872fee91135b06f4e23231d97e.zip |
add pthread_attr_setstack interface (and get)
i originally omitted these (optional, per POSIX) interfaces because i
considered them backwards implementation details. however, someone
later brought to my attention a fairly legitimate use case: allocating
thread stacks in memory that's setup for sharing and/or fast transfer
between CPU and GPU so that the thread can move data to a GPU directly
from automatic-storage buffers without having to go through additional
buffer copies.
perhaps there are other situations in which these interfaces are
useful too.
Diffstat (limited to 'src/internal')
-rw-r--r-- | src/internal/pthread_impl.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/internal/pthread_impl.h b/src/internal/pthread_impl.h index d67edf2f..0ce3c1e8 100644 --- a/src/internal/pthread_impl.h +++ b/src/internal/pthread_impl.h @@ -59,7 +59,8 @@ struct __timer { #define _a_stacksize __u.__s[0] #define _a_guardsize __u.__s[1] -#define _a_detach __u.__i[2*__SU+0] +#define _a_stackaddr __u.__s[2] +#define _a_detach __u.__i[3*__SU+0] #define _m_type __u.__i[0] #define _m_lock __u.__i[1] #define _m_waiters __u.__i[2] |