Subject: [PATCH] read_can_lock and write_can_lock for MIPS

From: Manish Lachwani <[email-masked]>
Date: Tue, 1 Feb 2005 13:26:03 -0800

Hi Ralf,

With SMP+PREEMPT, read_can_lock() and write_can_lock() need to be defined. Attached
patch does this. Please review.

Thanks
Manish Lachwani
Index: linux/include/asm-mips/spinlock.h
===================================================================
--- linux.orig/include/asm-mips/spinlock.h
+++ linux/include/asm-mips/spinlock.h
@@ -140,6 +140,9 @@
 
 #define rwlock_init(x)  do { *(x) = RW_LOCK_UNLOCKED; } while(0)
 
+#define read_can_lock(rw)	((rw)->lock >= 0)
+#define write_can_lock(rw)	(!(rw)->lock)
+
 static inline void _raw_read_lock(rwlock_t *rw)
 {
 	unsigned int tmp;

---

From: Ralf Baechle <[email-masked]>
Date: Thu, 3 Feb 2005 14:35:44 +0100

> patch does this. Please review.

Thanks, applied.  In addition I copied the comments from the i386 code
into the spinlocks.h.

  Ralf