Commit 2d141962 authored by Sam Ravnborg's avatar Sam Ravnborg Committed by David S. Miller

sparc: Merge asm-sparc{,64}/shmbuf.h

Padding in the shmbuf structure made conditional
as only 32 bit sparc did so.

:$ diff -u include/asm-sparc/shmbuf.h include/asm-sparc64/shmbuf.h
:-- include/asm-sparc/shmbuf.h	2008-06-13 06:42:07.000000000 +0200
:++ include/asm-sparc64/shmbuf.h	2008-06-13 06:42:07.000000000 +0200
:@@ -1,23 +1,19 @@
:-#ifndef _SPARC_SHMBUF_H
:-#define _SPARC_SHMBUF_H
:+#ifndef _SPARC64_SHMBUF_H
:+#define _SPARC64_SHMBUF_H
:
: /*
:- * The shmid64_ds structure for sparc architecture.
:+ * The shmid64_ds structure for sparc64 architecture.
:  * Note extra padding because this structure is passed back and forth
:  * between kernel and user space.
:  *
:  * Pad space is left for:
:- * - 64-bit time_t to solve y2038 problem
:- * - 2 miscellaneous 32-bit values
:+ * - 2 miscellaneous 64-bit values
:  */
:
: struct shmid64_ds {
: 	struct ipc64_perm	shm_perm;	/* operation perms */
:-	unsigned int		__pad1;
: 	__kernel_time_t		shm_atime;	/* last attach time */
:-	unsigned int		__pad2;
: 	__kernel_time_t		shm_dtime;	/* last detach time */
:-	unsigned int		__pad3;
: 	__kernel_time_t		shm_ctime;	/* last change time */
: 	size_t			shm_segsz;	/* size of segment (bytes) */
: 	__kernel_pid_t		shm_cpid;	/* pid of creator */
:@@ -39,4 +35,4 @@
: 	unsigned long	__unused4;
: };
:
:-#endif /* _SPARC_SHMBUF_H */
:+#endif /* _SPARC64_SHMBUF_H */
Signed-off-by: default avatarSam Ravnborg <sam@ravnborg.org>
parent fcb07081
...@@ -11,13 +11,19 @@ ...@@ -11,13 +11,19 @@
* - 2 miscellaneous 32-bit values * - 2 miscellaneous 32-bit values
*/ */
#if defined(__sparc__) && defined(__arch64__)
# define PADDING(x)
#else
# define PADDING(x) unsigned int x;
#endif
struct shmid64_ds { struct shmid64_ds {
struct ipc64_perm shm_perm; /* operation perms */ struct ipc64_perm shm_perm; /* operation perms */
unsigned int __pad1; PADDING(__pad1)
__kernel_time_t shm_atime; /* last attach time */ __kernel_time_t shm_atime; /* last attach time */
unsigned int __pad2; PADDING(__pad2)
__kernel_time_t shm_dtime; /* last detach time */ __kernel_time_t shm_dtime; /* last detach time */
unsigned int __pad3; PADDING(__pad3)
__kernel_time_t shm_ctime; /* last change time */ __kernel_time_t shm_ctime; /* last change time */
size_t shm_segsz; /* size of segment (bytes) */ size_t shm_segsz; /* size of segment (bytes) */
__kernel_pid_t shm_cpid; /* pid of creator */ __kernel_pid_t shm_cpid; /* pid of creator */
...@@ -39,4 +45,6 @@ struct shminfo64 { ...@@ -39,4 +45,6 @@ struct shminfo64 {
unsigned long __unused4; unsigned long __unused4;
}; };
#undef PADDING
#endif /* _SPARC_SHMBUF_H */ #endif /* _SPARC_SHMBUF_H */
#ifndef _SPARC64_SHMBUF_H #include <asm-sparc/shmbuf.h>
#define _SPARC64_SHMBUF_H
/*
* The shmid64_ds structure for sparc64 architecture.
* Note extra padding because this structure is passed back and forth
* between kernel and user space.
*
* Pad space is left for:
* - 2 miscellaneous 64-bit values
*/
struct shmid64_ds {
struct ipc64_perm shm_perm; /* operation perms */
__kernel_time_t shm_atime; /* last attach time */
__kernel_time_t shm_dtime; /* last detach time */
__kernel_time_t shm_ctime; /* last change time */
size_t shm_segsz; /* size of segment (bytes) */
__kernel_pid_t shm_cpid; /* pid of creator */
__kernel_pid_t shm_lpid; /* pid of last operator */
unsigned long shm_nattch; /* no. of current attaches */
unsigned long __unused1;
unsigned long __unused2;
};
struct shminfo64 {
unsigned long shmmax;
unsigned long shmmin;
unsigned long shmmni;
unsigned long shmseg;
unsigned long shmall;
unsigned long __unused1;
unsigned long __unused2;
unsigned long __unused3;
unsigned long __unused4;
};
#endif /* _SPARC64_SHMBUF_H */
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment