aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoshua M. Clulow <josh@sysmgr.org>2020-11-06 13:11:58 -0800
committerIan Lance Taylor <iant@golang.org>2020-11-07 14:23:20 +0000
commitbb9a96d03a35ab56f3e1a3e6a6c835f7f2120d54 (patch)
treed66ded8af22823cdfc036d501ae15aa50386d645
parenta6755fc0debc3005e8bd730521ecc8dba61a24e8 (diff)
downloadgo-bb9a96d03a35ab56f3e1a3e6a6c835f7f2120d54.tar.gz
go-bb9a96d03a35ab56f3e1a3e6a6c835f7f2120d54.zip
os/exec: use "pfiles" for fd debugging on illumos
On illumos (and Solaris) systems, the native "pfiles" tool provides the best information about open file descriptors for a process: https://illumos.org/man/1/pfiles Use that instead of "lsof" when debugging file descriptor leaks. Updates #42431. Change-Id: If1250c4e6c9e8adbd076495a09fb1ce63abcc68b Reviewed-on: https://go-review.googlesource.com/c/go/+/268019 Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org> Reviewed-by: Dmitri Shuralyov <dmitshur@golang.org> Trust: Dmitri Shuralyov <dmitshur@golang.org>
-rw-r--r--src/os/exec/read3.go4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/os/exec/read3.go b/src/os/exec/read3.go
index 8852023e77..8cc24da8cb 100644
--- a/src/os/exec/read3.go
+++ b/src/os/exec/read3.go
@@ -56,7 +56,7 @@ func main() {
switch runtime.GOOS {
case "plan9":
args = []string{fmt.Sprintf("/proc/%d/fd", os.Getpid())}
- case "aix":
+ case "aix", "solaris", "illumos":
args = []string{fmt.Sprint(os.Getpid())}
default:
args = []string{"-p", fmt.Sprint(os.Getpid())}
@@ -71,6 +71,8 @@ func main() {
ofcmd = "/bin/cat"
case "aix":
ofcmd = "procfiles"
+ case "solaris", "illumos":
+ ofcmd = "pfiles"
}
cmd := exec.Command(ofcmd, args...)