diff options
author | H. Peter Anvin <hpa@zytor.com> | 2012-02-10 16:58:56 -0500 |
---|---|---|
committer | H. Peter Anvin <hpa@zytor.com> | 2012-02-20 15:48:47 -0500 |
commit | 109a1f32d0d3e23545f0286f2d6e0a80298f629d (patch) | |
tree | 65539852739a351f546ab69f3ca1d9414d9c420c | |
parent | 1f5e27a90add2fe2a1c11508f68d377e3ddcf9ab (diff) |
sysinfo: Use explicit types in <linux/sysinfo.h>
Change <linux/sysinfo.h> to use explicitly sized types. Replace
long/unsigned long with __kernel_[u]long_t so that a non-legacy 32-bit
ABI running on a 64-bit kernel can export those as 64-bit types.
Originally-by: H. J. Lu <hjl.tools@gmail.com>
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
-rw-r--r-- | include/linux/sysinfo.h | 30 |
1 files changed, 16 insertions, 14 deletions
diff --git a/include/linux/sysinfo.h b/include/linux/sysinfo.h index ec4fc228ac0a..934335a22522 100644 --- a/include/linux/sysinfo.h +++ b/include/linux/sysinfo.h | |||
@@ -1,22 +1,24 @@ | |||
1 | #ifndef _LINUX_SYSINFO_H | 1 | #ifndef _LINUX_SYSINFO_H |
2 | #define _LINUX_SYSINFO_H | 2 | #define _LINUX_SYSINFO_H |
3 | 3 | ||
4 | #include <linux/types.h> | ||
5 | |||
4 | #define SI_LOAD_SHIFT 16 | 6 | #define SI_LOAD_SHIFT 16 |
5 | struct sysinfo { | 7 | struct sysinfo { |
6 | long uptime; /* Seconds since boot */ | 8 | __kernel_long_t uptime; /* Seconds since boot */ |
7 | unsigned long loads[3]; /* 1, 5, and 15 minute load averages */ | 9 | __kernel_ulong_t loads[3]; /* 1, 5, and 15 minute load averages */ |
8 | unsigned long totalram; /* Total usable main memory size */ | 10 | __kernel_ulong_t totalram; /* Total usable main memory size */ |
9 | unsigned long freeram; /* Available memory size */ | 11 | __kernel_ulong_t freeram; /* Available memory size */ |
10 | unsigned long sharedram; /* Amount of shared memory */ | 12 | __kernel_ulong_t sharedram; /* Amount of shared memory */ |
11 | unsigned long bufferram; /* Memory used by buffers */ | 13 | __kernel_ulong_t bufferram; /* Memory used by buffers */ |
12 | unsigned long totalswap; /* Total swap space size */ | 14 | __kernel_ulong_t totalswap; /* Total swap space size */ |
13 | unsigned long freeswap; /* swap space still available */ | 15 | __kernel_ulong_t freeswap; /* swap space still available */ |
14 | unsigned short procs; /* Number of current processes */ | 16 | __u16 procs; /* Number of current processes */ |
15 | unsigned short pad; /* explicit padding for m68k */ | 17 | __u16 pad; /* Explicit padding for m68k */ |
16 | unsigned long totalhigh; /* Total high memory size */ | 18 | __kernel_ulong_t totalhigh; /* Total high memory size */ |
17 | unsigned long freehigh; /* Available high memory size */ | 19 | __kernel_ulong_t freehigh; /* Available high memory size */ |
18 | unsigned int mem_unit; /* Memory unit size in bytes */ | 20 | __u32 mem_unit; /* Memory unit size in bytes */ |
19 | char _f[20-2*sizeof(long)-sizeof(int)]; /* Padding: libc5 uses this.. */ | 21 | char _f[20-2*sizeof(__kernel_ulong_t)-sizeof(__u32)]; /* Padding: libc5 uses this.. */ |
20 | }; | 22 | }; |
21 | 23 | ||
22 | #endif /* _LINUX_SYSINFO_H */ | 24 | #endif /* _LINUX_SYSINFO_H */ |