patch-2.3.25 linux/include/linux/sem.h

Next file: linux/include/linux/serial.h
Previous file: linux/include/linux/proc_fs.h
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.3.24/linux/include/linux/sem.h linux/include/linux/sem.h
@@ -60,11 +60,11 @@
 	int semaem;
 };
 
-#define SEMMNI  128             /* ?  max # of semaphore identifiers */
-#define SEMMSL  32              /* <= 512 max num of semaphores per id */
-#define SEMMNS  (SEMMNI*SEMMSL) /* ? max # of semaphores in system */
-#define SEMOPM  32	        /* ~ 100 max num of ops per semop call */
-#define SEMVMX  32767           /* semaphore maximum value */
+#define SEMMNI  128             /* <= 32767  max # of semaphore identifiers */
+#define SEMMSL  250             /* <= 512 max num of semaphores per id */
+#define SEMMNS  (SEMMNI*SEMMSL) /* <= MAX_INT max # of semaphores in system */
+#define SEMOPM  32	        /* <= 160 max num of ops per semop call */
+#define SEMVMX  32767           /* <= 32767 semaphore maximum value */
 
 /* unused */
 #define SEMUME  SEMOPM          /* max num of undo entries per process */
@@ -81,15 +81,16 @@
 	int	sempid;		/* pid of last operation */
 };
 
-/* One queue for each semaphore set in the system. */
+/* One queue for each sleeping process in the system. */
 struct sem_queue {
 	struct sem_queue *	next;	 /* next entry in the queue */
 	struct sem_queue **	prev;	 /* previous entry in the queue, *(q->prev) == q */
-	wait_queue_head_t	sleeper; /* sleeping process */
+	struct task_struct*	sleeper; /* this process */
 	struct sem_undo *	undo;	 /* undo structure */
 	int    			pid;	 /* process id of requesting process */
 	int    			status;	 /* completion status of operation */
 	struct semid_ds *	sma;	 /* semaphore array for operations */
+	int			id;	 /* internal sem id */
 	struct sembuf *		sops;	 /* array of pending operations */
 	int			nsops;	 /* number of operations */
 	int			alter;	 /* operation will alter semaphore */

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)