Re: semctl: wrong type on semid_ds

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 05/04/13 20:27, Simone Piccardi wrote:
> Hi,
> 
> in the semctl(2) man page (2012-05-31 version) I found a definitions of
> semid_ds with:
> 
> ...
> unsigned short  sem_nsems; /* No. of semaphores in set */
> ...
> 
> but that's defined as:
> 
>   unsigned long int sem_nsems;          /* number of semaphores in set */
> 
> in /usr/include/bits/sem.h (at least in my debian)
> 
> I also found it defined as:
> 
> int                     sem_nsems;      /* no. of semaphores in array */
> 
> 
> in /usr/src/linux-3.7.6/include/linux/sem.h

Thanks Simone. You're right. I applied the patch below.

Cheers,

Michael

diff --git a/man2/semctl.2 b/man2/semctl.2
index d1bc542..c9124d7 100644
--- a/man2/semctl.2
+++ b/man2/semctl.2
@@ -88,7 +88,7 @@ struct semid_ds {
     struct ipc_perm sem_perm;  /* Ownership and permissions */
     time_t          sem_otime; /* Last semop time */
     time_t          sem_ctime; /* Last change time */
-    unsigned short  sem_nsems; /* No. of semaphores in set */
+    unsigned long   sem_nsems; /* No. of semaphores in set */
 };
 .in
 .fi
@@ -462,6 +462,17 @@ or greater than the implementation limit
 .SH CONFORMING TO
 SVr4, POSIX.1-2001.
 .\" SVr4 documents more error conditions EINVAL and EOVERFLOW.
+
+POSIX.1-2001 specifies the
+.I sem_nsems
+field of the
+.I semid_ds
+structure as having the type
+.IR "unsigned\ short" ,
+and the field is so defined on most other systems.
+It was also so defined on Linux 2.2 and earlier,
+but, since Linux 2.4, the field has the type
+.IR "unsigned\ long" .
 .SH NOTES
 The inclusion of
 .I <sys/types.h>


--
To unsubscribe from this list: send the line "unsubscribe linux-man" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Kernel Documentation]     [Netdev]     [Linux Ethernet Bridging]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux