[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4A830B8C.5000402@colorfullife.com>
Date: Wed, 12 Aug 2009 20:35:56 +0200
From: Manfred Spraul <manfred@...orfullife.com>
To: Nick Piggin <npiggin@...e.de>
CC: Zach Brown <zach.brown@...cle.com>,
Andrew Morton <akpm@...ux-foundation.org>,
Nadia Derbey <Nadia.Derbey@...l.net>,
Pierre Peiffer <peifferp@...il.com>,
linux-kernel@...r.kernel.org
Subject: Re: [patch 4/4] ipc: sem optimise simple operations
On 08/12/2009 06:07 AM, Nick Piggin wrote:
> A semaphore set with 250 will use 2K before, and 10K afterward. I
> don't know that it is a huge amount really, given that they also
> have to presumably be *protecting* stuff.
>
>
The allocation uses vmalloc for larger allocations, thus 10k should not
be an issue.
> We can convert them to hlists (I was going to send a patch to do
> everything in hlists, but hlists are missing some _rcu variants...
> maybe I should just convert the pending lists to start with).
>
>
Is it possible to use list_add and list_add_tail instead?
Add the "waiting for zero" to the beginning and "waiting for nonzero" to
the end.
Basically, the same approach for "simple" and "complex" operations:
- if all operations are simple operations, then all operations affect
only individual semaphores
--> use per semaphore lists
- if there is one complex operation, then the global, per
semaphore-array lists are used.
--
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