1*6f52b16cSGreg Kroah-Hartman /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ 2607ca46eSDavid Howells #ifndef _LINUX_SYSINFO_H 3607ca46eSDavid Howells #define _LINUX_SYSINFO_H 4607ca46eSDavid Howells 5607ca46eSDavid Howells #include <linux/types.h> 6607ca46eSDavid Howells 7607ca46eSDavid Howells #define SI_LOAD_SHIFT 16 8607ca46eSDavid Howells struct sysinfo { 9607ca46eSDavid Howells __kernel_long_t uptime; /* Seconds since boot */ 10607ca46eSDavid Howells __kernel_ulong_t loads[3]; /* 1, 5, and 15 minute load averages */ 11607ca46eSDavid Howells __kernel_ulong_t totalram; /* Total usable main memory size */ 12607ca46eSDavid Howells __kernel_ulong_t freeram; /* Available memory size */ 13607ca46eSDavid Howells __kernel_ulong_t sharedram; /* Amount of shared memory */ 14607ca46eSDavid Howells __kernel_ulong_t bufferram; /* Memory used by buffers */ 15607ca46eSDavid Howells __kernel_ulong_t totalswap; /* Total swap space size */ 16607ca46eSDavid Howells __kernel_ulong_t freeswap; /* swap space still available */ 17607ca46eSDavid Howells __u16 procs; /* Number of current processes */ 18607ca46eSDavid Howells __u16 pad; /* Explicit padding for m68k */ 19607ca46eSDavid Howells __kernel_ulong_t totalhigh; /* Total high memory size */ 20607ca46eSDavid Howells __kernel_ulong_t freehigh; /* Available high memory size */ 21607ca46eSDavid Howells __u32 mem_unit; /* Memory unit size in bytes */ 22607ca46eSDavid Howells char _f[20-2*sizeof(__kernel_ulong_t)-sizeof(__u32)]; /* Padding: libc5 uses this.. */ 23607ca46eSDavid Howells }; 24607ca46eSDavid Howells 25607ca46eSDavid Howells #endif /* _LINUX_SYSINFO_H */ 26