linux-api.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] ipc/sem: 64bit union semun definition
@ 2015-05-05 18:28 a22017
       [not found] ` <1430850523-7522-1-git-send-email-a22017-3WKxDLwmzFNWk0Htik3J/w@public.gmane.org>
  0 siblings, 1 reply; 3+ messages in thread
From: a22017 @ 2015-05-05 18:28 UTC (permalink / raw)
  To: akpm, linux-api, linux-kernel; +Cc: Ling-Juan Sun

From: Ling-Juan Sun <a22017@motorola.com>

The member of semun semid_ds has new definition
semid64_ds for 64bit architectures.

Signed-off-by: Ling-Juan Sun <a22017@motorola.com>
---
 include/uapi/linux/sem.h | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/include/uapi/linux/sem.h b/include/uapi/linux/sem.h
index dd73b90..e9ab2a5 100644
--- a/include/uapi/linux/sem.h
+++ b/include/uapi/linux/sem.h
@@ -50,6 +50,15 @@ union semun {
 	void __user *__pad;
 };
 
+/* arg for semctl 64 bit system calls. */
+union semun64 {
+	int val;			/* value for SETVAL */
+	struct semid64_ds __user *buf;	/* buffer for IPC_STAT & IPC_SET */
+	unsigned short __user *array;	/* array for GETALL & SETALL */
+	struct seminfo __user *__buf;	/* buffer for IPC_INFO */
+	void __user *__pad;
+};
+
 struct  seminfo {
 	int semmap;
 	int semmni;
-- 
2.1.1

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH] ipc/sem: 64bit union semun definition
       [not found] ` <1430850523-7522-1-git-send-email-a22017-3WKxDLwmzFNWk0Htik3J/w@public.gmane.org>
@ 2015-05-05 19:37   ` Arnd Bergmann
       [not found]     ` <CACwVHNr9K0XXvB8JVEet_OtTRAJmjkHTsKsOc9h5HNts9+X5QA@mail.gmail.com>
  0 siblings, 1 reply; 3+ messages in thread
From: Arnd Bergmann @ 2015-05-05 19:37 UTC (permalink / raw)
  To: a22017-3WKxDLwmzFNWk0Htik3J/w
  Cc: akpm-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b,
	linux-api-u79uwXL29TY76Z2rM5mHXA,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA

On Tuesday 05 May 2015 11:28:43 a22017-3WKxDLwmzFNWk0Htik3J/w@public.gmane.org wrote:
> From: Ling-Juan Sun <a22017-3WKxDLwmzFNWk0Htik3J/w@public.gmane.org>
> 
> The member of semun semid_ds has new definition
> semid64_ds for 64bit architectures.
> 
> Signed-off-by: Ling-Juan Sun <a22017-3WKxDLwmzFNWk0Htik3J/w@public.gmane.org>
> 

Please describe in more detail what this is needed for. The way I
understood this, used space would always define union semun
to define semid_ds, but that would normally match the kernel's
semid64_ds.

Also, what is the connection with 64-bit architectures here?

	Arnd

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] ipc/sem: 64bit union semun definition
       [not found]       ` <CACwVHNr9K0XXvB8JVEet_OtTRAJmjkHTsKsOc9h5HNts9+X5QA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
@ 2015-05-05 21:40         ` Arnd Bergmann
  0 siblings, 0 replies; 3+ messages in thread
From: Arnd Bergmann @ 2015-05-05 21:40 UTC (permalink / raw)
  To: Sandy Sun
  Cc: akpm-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b,
	linux-api-u79uwXL29TY76Z2rM5mHXA,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA

On Tuesday 05 May 2015 14:09:14 Sandy Sun wrote:
> Hi Arnd,
> 
> If user space uses union semun to define.It will use semid_ds not
> semid64_ds.
> 
> I used LTP test case semctl01 IPC_STAT to do the test on 64 bit
> system.According to the test results:
> 
> Before the change, semun uses semid_ds, the field of sem_nsems reporting of
> semaphore STAT info is incorrect:
> 
> semctl01    1  TFAIL  :  semaphore STAT info is incorrect
> semctl01    2  TFAIL  :  semaphore mode info is incorrect
> 
> After this change, the return value is correct:
> semctl01    1  TPASS  :  buf.sem_nsems and buf.sem_perm.mode are correct
> semctl01    2  TPASS  :  buf.sem_perm.mode is correct

I don't understand: semctl01 does not reference 'union semun64'. How
does this change make a difference, and why would that difference
be limited to 64-bit systems?

	Arnd

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2015-05-05 21:40 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-05-05 18:28 [PATCH] ipc/sem: 64bit union semun definition a22017
     [not found] ` <1430850523-7522-1-git-send-email-a22017-3WKxDLwmzFNWk0Htik3J/w@public.gmane.org>
2015-05-05 19:37   ` Arnd Bergmann
     [not found]     ` <CACwVHNr9K0XXvB8JVEet_OtTRAJmjkHTsKsOc9h5HNts9+X5QA@mail.gmail.com>
     [not found]       ` <CACwVHNr9K0XXvB8JVEet_OtTRAJmjkHTsKsOc9h5HNts9+X5QA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-05-05 21:40         ` Arnd Bergmann

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).