mirror of
https://github.com/golang/go
synced 2024-11-23 06:30:06 -07:00
da7ee57f40
Add PidFD support, so that if the PidFD pointer in SysProcAttr is not nil, ForkExec (and thus all its users) obtains a pidfd from the kernel during clone(), and writes the result (or -1, if the functionality is not supported by the kernel) into *PidFD. The functionality to get pidfd is implemented for both clone3 and clone. For the latter, an extra argument to rawVforkSyscall is needed, thus the change in asm files. Add a trivial test case checking the obtained pidfd can be used to send a signal to a process, using pidfd_send_signal. To test clone3 code path, add a flag available to tests only. Updates #51246. Change-Id: I2212b69e1a657163c31b4a6245b076bc495777a3 Reviewed-on: https://go-review.googlesource.com/c/go/+/520266 Auto-Submit: Ian Lance Taylor <iant@google.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Cherry Mui <cherryyz@google.com> Reviewed-by: Ian Lance Taylor <iant@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Run-TryBot: Kirill Kolyshkin <kolyshkin@gmail.com>
7 lines
424 B
Plaintext
7 lines
424 B
Plaintext
pkg syscall (linux-386), type SysProcAttr struct, PidFD *int #51246
|
|
pkg syscall (linux-386-cgo), type SysProcAttr struct, PidFD *int #51246
|
|
pkg syscall (linux-amd64), type SysProcAttr struct, PidFD *int #51246
|
|
pkg syscall (linux-amd64-cgo), type SysProcAttr struct, PidFD *int #51246
|
|
pkg syscall (linux-arm), type SysProcAttr struct, PidFD *int #51246
|
|
pkg syscall (linux-arm-cgo), type SysProcAttr struct, PidFD *int #51246
|