tailscale/portlist
Brad Fitzpatrick 64e9ce8df1 portlist: reduce allocs on Linux
Notably, it no longer allocates proportional to the number of open
sockets on the machine. Any alloc reduction numbers are a little
contrived with such a reduction but e.g. on a machine with 50,000
connections open:

name          old time/op    new time/op    delta
ParsePorts-6    57.7ms ± 6%    32.8ms ± 3%   -43.04%  (p=0.000 n=9+10)

name          old alloc/op   new alloc/op   delta
ParsePorts-6    24.0MB ± 0%     0.0MB ± 0%  -100.00%  (p=0.000 n=10+9)

name          old allocs/op  new allocs/op  delta
ParsePorts-6      100k ± 0%        0k ± 0%   -99.99%  (p=0.000 n=10+10)

Updates tailscale/corp#2566

Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2021-09-12 16:06:46 -07:00
..
clean_test.go portlist: report a better process name for .Net on linux. 2021-03-03 22:30:27 -08:00
clean.go portlist: report a better process name for .Net on linux. 2021-03-03 22:30:27 -08:00
netstat_exec.go all: simplify build tags involving iOS 2021-08-17 11:13:03 -07:00
netstat_test.go portlist: filter out all of 127.0.0.0/8, not just 127.0.0.1/32 2021-04-12 09:17:39 -07:00
netstat.go all: simplify build tags involving iOS 2021-08-17 11:13:03 -07:00
poller.go portlist: unexport SameInodes method 2021-04-09 15:16:36 -07:00
portlist_ios.go all: simplify build tags involving iOS 2021-08-17 11:13:03 -07:00
portlist_linux_test.go portlist: reduce allocs on Linux 2021-09-12 16:06:46 -07:00
portlist_linux.go portlist: reduce allocs on Linux 2021-09-12 16:06:46 -07:00
portlist_macos.go portlist: fix build tag to build only on macOS, not macOS+iOS. 2021-08-18 16:18:02 -07:00
portlist_other.go all: gofmt with Go 1.17 2021-08-05 15:54:00 -07:00
portlist_test.go portlist: unexport SameInodes method 2021-04-09 15:16:36 -07:00
portlist_windows.go staticcheck.conf: turn off noisy lint errors 2021-06-18 15:48:20 -07:00
portlist.go portlist: de-dup services on same (proto, port) on both IPv4/IPv6 2021-04-13 14:40:33 -07:00