Re: semaphore understanding: sys_semtimedop()

From: randy_dunlap
Date: Sun May 22 2005 - 00:23:20 EST


On Mon, 16 May 2005 22:17:04 +0200 Patrick Plattes wrote:

| Hello,
|
| i have a question about this little code snippet, found in
| sys_semtimedop() (ipc/sem.c):
|
| for (sop = sops; sop < sops + nsops; sop++) {
| if (sop->sem_num >= max)
| max = sop->sem_num;
| if (sop->sem_flg & SEM_UNDO)
| undos++;
| if (sop->sem_op < 0)
| decrease = 1;
| if (sop->sem_op > 0)
| alter = 1;
| }
| alter |= decrease;
|
| The variable decrease will never be used again in this
| function, so why this intricate code? Isn't this much easier and works
| also:
|
| for (sop = sops; sop < sops + nsops; sop++) {
| if (sop->sem_num >= max)
| max = sop->sem_num;
| if (sop->sem_flg & SEM_UNDO)
| undos++;
| if (sop->sem_op != 0)
| alter = 1;
| }
|
| Maybe i'm totally wrong, so please correct me and don't shoot me up,
| 'cause i'm not a os developer.

Looks like a reasonable and correct optimization to me.

Let's see what Manfred thinks or has to say...

---
~Randy
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/