1/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2#ifndef _LINUX_SYSINFO_H
3#define _LINUX_SYSINFO_H
4
5#include <linux/types.h>
6
7#define SI_LOAD_SHIFT 16
8struct sysinfo {
9 __kernel_long_t uptime; /* Seconds since boot */
10 __kernel_ulong_t loads[3]; /* 1, 5, and 15 minute load averages */
11 __kernel_ulong_t totalram; /* Total usable main memory size */
12 __kernel_ulong_t freeram; /* Available memory size */
13 __kernel_ulong_t sharedram; /* Amount of shared memory */
14 __kernel_ulong_t bufferram; /* Memory used by buffers */
15 __kernel_ulong_t totalswap; /* Total swap space size */
16 __kernel_ulong_t freeswap; /* swap space still available */
17 __u16 procs; /* Number of current processes */
18 __u16 pad; /* Explicit padding for m68k */
19 __kernel_ulong_t totalhigh; /* Total high memory size */
20 __kernel_ulong_t freehigh; /* Available high memory size */
21 __u32 mem_unit; /* Memory unit size in bytes */
22 char _f[20-2*sizeof(__kernel_ulong_t)-sizeof(__u32)]; /* Padding: libc5 uses this.. */
23};
24
25#endif /* _LINUX_SYSINFO_H */
26