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