]> rtime.felk.cvut.cz Git - zynq/linux.git/blobdiff - kernel/locking/rt.c
locking/rt: provide __up_read()
[zynq/linux.git] / kernel / locking / rt.c
index 73c55089fb936a3d02ac3e7c51ba39aac3f2da06..3482ce87ab92c8bc6c0bb75ca37d938daafa76b0 100644 (file)
@@ -319,12 +319,18 @@ void  rt_up_write(struct rw_semaphore *rwsem)
 }
 EXPORT_SYMBOL(rt_up_write);
 
-void  rt_up_read(struct rw_semaphore *rwsem)
+
+void  __rt_up_read(struct rw_semaphore *rwsem)
 {
-       rwsem_release(&rwsem->dep_map, 1, _RET_IP_);
        if (--rwsem->read_depth == 0)
                rt_mutex_unlock(&rwsem->lock);
 }
+
+void  rt_up_read(struct rw_semaphore *rwsem)
+{
+       rwsem_release(&rwsem->dep_map, 1, _RET_IP_);
+       __rt_up_read(rwsem);
+}
 EXPORT_SYMBOL(rt_up_read);
 
 /*