mirror of https://github.com/golang/go.git
pthread_attr_init in glibc and musl libc already explicitly clear the pthread_attr argument before setting it, see https://sourceware.org/git/?p=glibc.git;a=blob;f=nptl/pthread_attr_init.c and https://git.musl-libc.org/cgit/musl/log/src/thread/pthread_attr_init.c It looks like pthread_attr_init has been implemented like this for a long time in both libcs. The comment and memset in _cgo_sys_thread_start probably stem from a time where not all libcs did the explicit memset in pthread_attr_init. Also, the memset in _cgo_sys_thread_start is not performed on all linux platforms further indicating that this isn't an issue anymore. Change-Id: I920148b5d24751195ced7af5bb7c52a7f8293259 Reviewed-on: https://go-review.googlesource.com/c/go/+/404275 Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com> TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: David Chase <drchase@google.com> Reviewed-by: Ian Lance Taylor <iant@google.com> |
||
|---|---|---|
| .. | ||
| abi_amd64.h | ||
| abi_arm64.h | ||
| asm_386.s | ||
| asm_amd64.s | ||
| asm_arm.s | ||
| asm_arm64.s | ||
| asm_mips64x.s | ||
| asm_mipsx.s | ||
| asm_ppc64x.s | ||
| asm_riscv64.s | ||
| asm_s390x.s | ||
| asm_wasm.s | ||
| callbacks.go | ||
| callbacks_aix.go | ||
| callbacks_traceback.go | ||
| cgo.go | ||
| dragonfly.go | ||
| freebsd.go | ||
| gcc_386.S | ||
| gcc_aix_ppc64.S | ||
| gcc_aix_ppc64.c | ||
| gcc_amd64.S | ||
| gcc_android.c | ||
| gcc_arm.S | ||
| gcc_arm64.S | ||
| gcc_context.c | ||
| gcc_darwin_amd64.c | ||
| gcc_darwin_arm64.c | ||
| gcc_dragonfly_amd64.c | ||
| gcc_fatalf.c | ||
| gcc_freebsd_386.c | ||
| gcc_freebsd_amd64.c | ||
| gcc_freebsd_arm.c | ||
| gcc_freebsd_arm64.c | ||
| gcc_freebsd_sigaction.c | ||
| gcc_libinit.c | ||
| gcc_libinit_windows.c | ||
| gcc_linux_386.c | ||
| gcc_linux_amd64.c | ||
| gcc_linux_arm.c | ||
| gcc_linux_arm64.c | ||
| gcc_linux_mips64x.c | ||
| gcc_linux_mipsx.c | ||
| gcc_linux_ppc64x.S | ||
| gcc_linux_riscv64.c | ||
| gcc_linux_s390x.c | ||
| gcc_mips64x.S | ||
| gcc_mipsx.S | ||
| gcc_mmap.c | ||
| gcc_netbsd_386.c | ||
| gcc_netbsd_amd64.c | ||
| gcc_netbsd_arm.c | ||
| gcc_netbsd_arm64.c | ||
| gcc_openbsd_386.c | ||
| gcc_openbsd_amd64.c | ||
| gcc_openbsd_arm.c | ||
| gcc_openbsd_arm64.c | ||
| gcc_openbsd_mips64.c | ||
| gcc_ppc64x.c | ||
| gcc_riscv64.S | ||
| gcc_s390x.S | ||
| gcc_setenv.c | ||
| gcc_sigaction.c | ||
| gcc_signal2_ios_arm64.c | ||
| gcc_signal_ios_arm64.c | ||
| gcc_signal_ios_nolldb.c | ||
| gcc_solaris_amd64.c | ||
| gcc_traceback.c | ||
| gcc_util.c | ||
| gcc_windows_386.c | ||
| gcc_windows_amd64.c | ||
| gcc_windows_arm64.c | ||
| handle.go | ||
| handle_test.go | ||
| iscgo.go | ||
| libcgo.h | ||
| libcgo_unix.h | ||
| libcgo_windows.h | ||
| linux.go | ||
| linux_syscall.c | ||
| mmap.go | ||
| netbsd.go | ||
| openbsd.go | ||
| setenv.go | ||
| sigaction.go | ||
| signal_ios_arm64.go | ||
| signal_ios_arm64.s | ||