
Commit 6a516acb2e
moved the MemInfo type and
ReadMemInfo() function into the pkg/sysinfo package. In an attempt to assist
consumers of these to migrate to the new location, an alias was added.
Unfortunately, the side effect of this alias is that pkg/system now depends
on pkg/sysinfo, which means that consumers of this (such as docker/cli) now
get all (indirect) dependencies of that package as dependency, which includes
many dependencies that should only be needed for the daemon / runtime;
- github.com/cilium/ebpf
- github.com/containerd/cgroups
- github.com/coreos/go-systemd/v22
- github.com/godbus/dbus/v5
- github.com/moby/sys/mountinfo
- github.com/opencontainers/runtime-spec
This patch moves the MemInfo related code to its own package. As the previous move
was not yet part of a release, we're not adding new aliases in pkg/sysinfo.
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
26 lines
701 B
Go
26 lines
701 B
Go
// Package meminfo provides utilites to retrieve memory statistics of
|
|
// the host system.
|
|
package meminfo
|
|
|
|
// Read retrieves memory statistics of the host system and returns a
|
|
// Memory type. It is only supported on Linux and Windows, and returns an
|
|
// error on other platforms.
|
|
func Read() (*Memory, error) {
|
|
return readMemInfo()
|
|
}
|
|
|
|
// Memory contains memory statistics of the host system.
|
|
type Memory struct {
|
|
// Total usable RAM (i.e. physical RAM minus a few reserved bits and the
|
|
// kernel binary code).
|
|
MemTotal int64
|
|
|
|
// Amount of free memory.
|
|
MemFree int64
|
|
|
|
// Total amount of swap space available.
|
|
SwapTotal int64
|
|
|
|
// Amount of swap space that is currently unused.
|
|
SwapFree int64
|
|
}
|