diff options
author | Brian Geffon <bgeffon@google.com> | 2018-10-09 09:51:01 -0700 |
---|---|---|
committer | Shentubot <shentubot@google.com> | 2018-10-09 09:52:14 -0700 |
commit | acf7a951894a1b445ff61e945e32c989892f476f (patch) | |
tree | b3478390a10454c70dd619924efa22414fa42b0f | |
parent | ae5122eb87b5b453d51b70cffe2a253333af9eb4 (diff) |
Add memunit to sysinfo(2).
Also properly add padding after Procs in the linux.Sysinfo
structure. This will be implicitly padded to 64bits so we
need to do the same.
PiperOrigin-RevId: 216372907
Change-Id: I6eb6a27800da61d8f7b7b6e87bf0391a48fdb475
-rw-r--r-- | pkg/abi/linux/linux.go | 1 | ||||
-rw-r--r-- | pkg/sentry/syscalls/linux/sys_sysinfo.go | 1 |
2 files changed, 2 insertions, 0 deletions
diff --git a/pkg/abi/linux/linux.go b/pkg/abi/linux/linux.go index a946849c5..de2af80dc 100644 --- a/pkg/abi/linux/linux.go +++ b/pkg/abi/linux/linux.go @@ -31,6 +31,7 @@ type Sysinfo struct { TotalSwap uint64 FreeSwap uint64 Procs uint16 + _ [6]byte // Pad Procs to 64bits. TotalHigh uint64 FreeHigh uint64 Unit uint32 diff --git a/pkg/sentry/syscalls/linux/sys_sysinfo.go b/pkg/sentry/syscalls/linux/sys_sysinfo.go index bd0ffcd5c..6560bac57 100644 --- a/pkg/sentry/syscalls/linux/sys_sysinfo.go +++ b/pkg/sentry/syscalls/linux/sys_sysinfo.go @@ -36,6 +36,7 @@ func Sysinfo(t *kernel.Task, args arch.SyscallArguments) (uintptr, *kernel.Sysca Uptime: t.Kernel().MonotonicClock().Now().Seconds(), TotalRAM: totalSize, FreeRAM: totalSize - totalUsage, + Unit: 1, } _, err := t.CopyOut(addr, si) return 0, nil, err |