mirror of
				https://github.com/tailscale/tailscale.git
				synced 2025-10-31 08:11:32 +01:00 
			
		
		
		
	This adds the util/sysresources package, which currently only contains a function to return the total memory size of the current system. Then, we modify magicsock to scale the number of buffered DERP messages based on the system's available memory, ensuring that we never use a value lower than the previous constant of 32. Signed-off-by: Andrew Dunham <andrew@du.nham.ca> Change-Id: Ib763c877de4d0d4ee88869078e7d512f6a3a148d
		
			
				
	
	
		
			26 lines
		
	
	
		
			476 B
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			26 lines
		
	
	
		
			476 B
		
	
	
	
		
			Go
		
	
	
	
	
	
| // Copyright (c) Tailscale Inc & AUTHORS
 | |
| // SPDX-License-Identifier: BSD-3-Clause
 | |
| 
 | |
| package sysresources
 | |
| 
 | |
| import (
 | |
| 	"runtime"
 | |
| 	"testing"
 | |
| )
 | |
| 
 | |
| func TestTotalMemory(t *testing.T) {
 | |
| 	switch runtime.GOOS {
 | |
| 	case "linux":
 | |
| 	case "freebsd", "openbsd", "dragonfly", "netbsd":
 | |
| 	case "darwin":
 | |
| 	default:
 | |
| 		t.Skipf("not supported on runtime.GOOS=%q yet", runtime.GOOS)
 | |
| 	}
 | |
| 
 | |
| 	mem := TotalMemory()
 | |
| 	if mem == 0 {
 | |
| 		t.Fatal("wanted TotalMemory > 0")
 | |
| 	}
 | |
| 	t.Logf("total memory: %v bytes", mem)
 | |
| }
 |