Nicolas Pitre wrote:
On Wed, 21 Dec 2005, Nick Piggin wrote:
Nicolas Pitre wrote:
On Tue, 20 Dec 2005, Nick Piggin wrote:
Considering that on UP, the arm should not need to disable interrupts
for this function (or has someone refuted Linus?), how about:
Kernel preemption.
preempt_disable() ?
Sure, and we're now more costly than the current implementation with irq
disabling.
Why? It is just a plain increment of a location that will almost certainly
be in cache. I can't see how it would be more than half the cost of the
irq implementation (based on looking at your measurements). How do you
figure?
Also, preempt_disable is a very frequent operation on preempt kernels so
if you have CONFIG_PREEMPT then you don't care about preempt_disable in
down() (and if you do then you are calling down too often).
If we go with simple mutexes that's because there is a gain, even a huge
one on ARM, especially for the fast uncontended case. If you guys
insist on making things so generic and rigid then there is no gain
anymore worth the bother.
I guess there is no bother for you, but maintaining code for 1 generic
platform versus two dozen architectures is a huge win for many.
--
SUSE Labs, Novell Inc.
Send instant messages to your online friends http://au.messenger.yahoo.com
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]