mirror of https://github.com/golang/go.git
runtime/cgo: remove memset in _cgo_sys_thread_start on freebsd/arm
pthread_attr_init on freebsd properly initializes the pthread_attr, there is no need to zero it before the call. The comment and code were probably copied from the linux/arm implementation. This aligns the implementation on freebsd/arm with the implementation on other freebsd architectures. Fixes #44248 Change-Id: If82ebb115b877b6c6f4862018a9419ba8d870f12 Reviewed-on: https://go-review.googlesource.com/c/go/+/393617 Trust: Tobias Klauser <tobias.klauser@gmail.com> Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com> Reviewed-by: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: Hajime Hoshi <hajimehoshi@gmail.com> Trust: Hajime Hoshi <hajimehoshi@gmail.com>
This commit is contained in:
parent
489102de18
commit
adfee1e1e7
|
|
@ -37,7 +37,6 @@ x_cgo_init(G *g, void (*setg)(void*))
|
|||
pthread_attr_destroy(&attr);
|
||||
}
|
||||
|
||||
|
||||
void
|
||||
_cgo_sys_thread_start(ThreadStart *ts)
|
||||
{
|
||||
|
|
@ -50,12 +49,7 @@ _cgo_sys_thread_start(ThreadStart *ts)
|
|||
SIGFILLSET(ign);
|
||||
pthread_sigmask(SIG_SETMASK, &ign, &oset);
|
||||
|
||||
// Not sure why the memset is necessary here,
|
||||
// but without it, we get a bogus stack size
|
||||
// out of pthread_attr_getstacksize. C'est la Linux.
|
||||
memset(&attr, 0, sizeof attr);
|
||||
pthread_attr_init(&attr);
|
||||
size = 0;
|
||||
pthread_attr_getstacksize(&attr, &size);
|
||||
// Leave stacklo=0 and set stackhi=size; mstart will do the rest.
|
||||
ts->g->stackhi = size;
|
||||
|
|
|
|||
Loading…
Reference in New Issue