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