Something went wrong. Try again.
Monorepo for Tangled
Something went wrong. Try again.
Go
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172//go:build !linux
package microvm
import ( "fmt" "log/slog")
type CgroupLimits struct { Enabled bool Parent *CgroupParent Name string MemoryMaxMiB int64 SwapMaxMiB *int64 PidsMax int64 CPUQuotaPercent int64 IOWeight uint64}
type CgroupParent struct{}
type CgroupHandle struct{}
func initCgroupParent(string, int64, *slog.Logger) (*CgroupParent, error) { return nil, fmt.Errorf("microVM cgroups are only supported on Linux")}
func prepareCgroup(limits CgroupLimits, _ *slog.Logger) (*CgroupHandle, error) { if !limits.Enabled { return nil, nil } return nil, fmt.Errorf("microVM cgroups are only supported on Linux")}
func (*CgroupHandle) AddProcess(int, *slog.Logger) error { return nil}
func (*CgroupHandle) Close() error { return nil}
func (*CgroupHandle) OOMKilled() bool { return false}
type CgroupUsage struct { CPU struct { UsageUsec uint64 } Memory struct { Usage uint64 MaxUsage uint64 SwapUsage uint64 SwapMaxUsage uint64 } Pids struct { Current uint64 } IO struct { Rbytes uint64 Wbytes uint64 Rios uint64 Wios uint64 }}
func (*CgroupHandle) Stat() (CgroupUsage, bool, error) { return CgroupUsage{}, false, nil}