[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <1369559335-13491-1-git-send-email-manfred@colorfullife.com>
Date: Sun, 26 May 2013 11:08:51 +0200
From: Manfred Spraul <manfred@...orfullife.com>
To: Rik van Riel <riel@...hat.com>
Cc: LKML <linux-kernel@...r.kernel.org>,
Andrew Morton <akpm@...ux-foundation.org>,
Davidlohr Bueso <davidlohr.bueso@...com>, hhuang@...hat.com,
Linus Torvalds <torvalds@...ux-foundation.org>,
Manfred Spraul <manfred@...orfullife.com>
Subject: [PATCH 0/4] ipc/sem.c: Bug fixes, regression fixes, v3
I've split my patch into 4 parts:
- 1: Fix-missing-wakeups-in-do_smart_update
- 2: seperate-wait-for-zero-and-alter-tasks
- 3: Always-use-only-one-queue-for-alter-operations
- 4: Rename-try_atomic_semop-to-perform_atomic
Linus:
- Patch 1 should be merged immediately: It fixes bugs,
the current code misses wakeups.
- Patch 2 and 3 restore the behavior of linux <=3.0.9.
I would propose that they are merged, too: I can't rule out that
changing the priority of the wakeups breaks user space apps.
- Patch 4 is trivial, no code changes at all.
If 2+3 are merged, then 4 should be merged, too.
I have tested patch 1 seperately and 1+2+3+4:
With patch 1 applied, there are no more missed wakeups.
With all 4 applied, linux-3.0.10-rc1 behaves as linux <=3.0.9.
With regards to the scalability, I do not expect any degradation:
Operations on seperate semaphores in an array remain parallelized.
Apps that use lots of wait-for-zero semop are probably even faster,
because the wait-for-zero ops are now only scanned if a semval is 0.
--
Manfred
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists