From 77690f288e30dec015783bd572ee55200c884d85 Mon Sep 17 00:00:00 2001 From: Ingo Weinhold Date: Thu, 7 Jan 2010 15:32:28 +0000 Subject: [PATCH] Added VMCache::SwitchFromReadLock(), atomically unlocking a read lock and starting to lock the cache. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34936 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- headers/private/kernel/vm/VMCache.h | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/headers/private/kernel/vm/VMCache.h b/headers/private/kernel/vm/VMCache.h index 3a916d42f7..8e32d5e29a 100644 --- a/headers/private/kernel/vm/VMCache.h +++ b/headers/private/kernel/vm/VMCache.h @@ -73,6 +73,7 @@ public: inline bool Lock(); inline bool TryLock(); inline bool SwitchLock(mutex* from); + inline bool SwitchFromReadLock(rw_lock* from); void Unlock(); inline void AssertLocked(); @@ -220,6 +221,13 @@ VMCache::SwitchLock(mutex* from) } +bool +VMCache::SwitchFromReadLock(rw_lock* from) +{ + return mutex_switch_from_read_lock(from, &fLock) == B_OK; +} + + void VMCache::AssertLocked() {