Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

uapi: Use __kernel_ulong_t in shmid64_ds/shminfo64/shm_info

Both x32 and x86-64 use the same struct shmid64_ds/shminfo64/shm_info for
system calls. But x32 long is 32-bit. This patch replaces unsigned long
with __kernel_ulong_t in struct shmid64_ds/shminfo64/shm_info.

Signed-off-by: H.J. Lu <hjl.tools@gmail.com>
Link: http://lkml.kernel.org/r/1388182464-28428-8-git-send-email-hjl.tools@gmail.com
Signed-off-by: H. Peter Anvin <hpa@zytor.com>

authored by

H.J. Lu and committed by
H. Peter Anvin
f8dcdf01 38691659

+17 -17
+12 -12
include/uapi/asm-generic/shmbuf.h
··· 39 39 #endif 40 40 __kernel_pid_t shm_cpid; /* pid of creator */ 41 41 __kernel_pid_t shm_lpid; /* pid of last operator */ 42 - unsigned long shm_nattch; /* no. of current attaches */ 43 - unsigned long __unused4; 44 - unsigned long __unused5; 42 + __kernel_ulong_t shm_nattch; /* no. of current attaches */ 43 + __kernel_ulong_t __unused4; 44 + __kernel_ulong_t __unused5; 45 45 }; 46 46 47 47 struct shminfo64 { 48 - unsigned long shmmax; 49 - unsigned long shmmin; 50 - unsigned long shmmni; 51 - unsigned long shmseg; 52 - unsigned long shmall; 53 - unsigned long __unused1; 54 - unsigned long __unused2; 55 - unsigned long __unused3; 56 - unsigned long __unused4; 48 + __kernel_ulong_t shmmax; 49 + __kernel_ulong_t shmmin; 50 + __kernel_ulong_t shmmni; 51 + __kernel_ulong_t shmseg; 52 + __kernel_ulong_t shmall; 53 + __kernel_ulong_t __unused1; 54 + __kernel_ulong_t __unused2; 55 + __kernel_ulong_t __unused3; 56 + __kernel_ulong_t __unused4; 57 57 }; 58 58 59 59 #endif /* __ASM_GENERIC_SHMBUF_H */
+5 -5
include/uapi/linux/shm.h
··· 68 68 69 69 struct shm_info { 70 70 int used_ids; 71 - unsigned long shm_tot; /* total allocated shm */ 72 - unsigned long shm_rss; /* total resident shm */ 73 - unsigned long shm_swp; /* total swapped shm */ 74 - unsigned long swap_attempts; 75 - unsigned long swap_successes; 71 + __kernel_ulong_t shm_tot; /* total allocated shm */ 72 + __kernel_ulong_t shm_rss; /* total resident shm */ 73 + __kernel_ulong_t shm_swp; /* total swapped shm */ 74 + __kernel_ulong_t swap_attempts; 75 + __kernel_ulong_t swap_successes; 76 76 }; 77 77 78 78