public inbox for linux-ia64@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH] don't use ld.bias
@ 2003-07-21 23:55 Jesse Barnes
  2003-07-22  0:15 ` Chen, Kenneth W
                   ` (5 more replies)
  0 siblings, 6 replies; 7+ messages in thread
From: Jesse Barnes @ 2003-07-21 23:55 UTC (permalink / raw)
  To: linux-ia64

Patch to fix spin_lock to not use ld.bias since it causes a bunch of bus
activity that hurts scalability when a lock is contended.

Thanks,
Jesse

=== include/asm-ia64/spinlock.h 1.13 vs edited ==--- 1.13/include/asm-ia64/spinlock.h	Fri May 30 19:59:40 2003
+++ edited/include/asm-ia64/spinlock.h	Mon Jul 21 16:54:15 2003
@@ -93,13 +93,16 @@
  * Streamlined test_and_set_bit(0, (x)).  We use test-and-test-and-set
  * rather than a simple xchg to avoid writing the cache-line when
  * there is contention.
+ *
+ * Don't use ld.bias since it generates unnecessary bus activity on
+ * multiprocessor systems when the lock is contended.
  */
 #define _raw_spin_lock(x) __asm__ __volatile__ (		\
 	"mov ar.ccv = r0\n"					\
 	"mov r29 = 1\n"						\
 	";;\n"							\
 	"1:\n"							\
-	"ld4.bias r2 = [%0]\n"					\
+	"ld4 r2 = [%0]\n"					\
 	";;\n"							\
 	"cmp4.eq p0,p7 = r0,r2\n"				\
 	"(p7) br.cond.spnt.few 1b \n"				\

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2003-07-25 13:40 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2003-07-21 23:55 [PATCH] don't use ld.bias Jesse Barnes
2003-07-22  0:15 ` Chen, Kenneth W
2003-07-22 13:11 ` Jesse Barnes
2003-07-23  4:40 ` Mallick, Asit K
2003-07-23 12:00 ` Matthew Wilcox
2003-07-25  1:10 ` David Mosberger
2003-07-25 13:40 ` Jesse Barnes

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox