* thread_pthread.c (getstack): __pi_stacksize returned by
pthread_getthrds_np() is wrong on AIX. Use __pi_stackend - __pi_stackaddr instead. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54000 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
f9fc092f90
commit
a2594be783
@ -1,3 +1,9 @@
|
||||
Sat Mar 5 03:07:40 2016 Rei Odaira <Rei.Odaira@gmail.com>
|
||||
|
||||
* thread_pthread.c (getstack): __pi_stacksize returned by
|
||||
pthread_getthrds_np() is wrong on AIX. Use
|
||||
__pi_stackend - __pi_stackaddr instead.
|
||||
|
||||
Fri Mar 4 19:19:42 2016 Koichi Sasada <ko1@atdot.net>
|
||||
|
||||
* gc.c: use 2 bits with unsigned int for rb_objspace::flags::mode
|
||||
|
@ -619,7 +619,10 @@ get_stack(void **addr, size_t *size)
|
||||
&thinfo, sizeof(thinfo),
|
||||
®, ®siz));
|
||||
*addr = thinfo.__pi_stackaddr;
|
||||
*size = thinfo.__pi_stacksize;
|
||||
/* Must not use thinfo.__pi_stacksize for size.
|
||||
It is around 3KB smaller than the correct size
|
||||
calculated by thinfo.__pi_stackend - thinfo.__pi_stackaddr. */
|
||||
*size = thinfo.__pi_stackend - thinfo.__pi_stackaddr;
|
||||
STACK_DIR_UPPER((void)0, (void)(*addr = (char *)*addr + *size));
|
||||
#elif defined __HAIKU__
|
||||
thread_info info;
|
||||
|
Loading…
x
Reference in New Issue
Block a user