summaryrefslogtreecommitdiff
path: root/include/linux
diff options
context:
space:
mode:
authorDavid Howells <dhowells@redhat.com>2002-07-24 18:52:25 -0700
committerLinus Torvalds <torvalds@home.transmeta.com>2002-07-24 18:52:25 -0700
commit866b413df71523a4c08c2d84b33ed6001c645eb3 (patch)
tree07f46493b0039c1dc1f81e060a547e0f3809ab4b /include/linux
parent8b8c90a3695ccbc9b7e3f56bdb7060956da52ff8 (diff)
[PATCH] read-write semaphore downgrade and trylock
Here's a patch from Christoph Hellwig and myself to supply write->read semaphore downgrade, and also from Brian Watson to supply trylock for rwsems.
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/rwsem.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/include/linux/rwsem.h b/include/linux/rwsem.h
index c74cc975cab6..320138d6643d 100644
--- a/include/linux/rwsem.h
+++ b/include/linux/rwsem.h
@@ -75,6 +75,16 @@ static inline void up_write(struct rw_semaphore *sem)
rwsemtrace(sem,"Leaving up_write");
}
+/*
+ * downgrade write lock to read lock
+ */
+static inline void downgrade_write(struct rw_semaphore *sem)
+{
+ rwsemtrace(sem,"Entering downgrade_write");
+ __downgrade_write(sem);
+ rwsemtrace(sem,"Leaving downgrade_write");
+}
+
#endif /* __KERNEL__ */
#endif /* _LINUX_RWSEM_H */