Distributed Reader-Writer Mutex by Dmitry Vyukov

Distributed Reader-Writer Mutex by Dmitry Vyukov

Hello all;

I have loolked at the Distributed Reader-Writer Mutex by
Dmitry Vyukov, look
at 

http://www.1024cores.net/home/lock-free-algorithms/reader-writer-problem...

and
i have looked at it and i think there is a problem with this method, cause look

at the write lock function:

int        
distr_rw_mutex_wrlock           (distr_rw_mutex_t* mtx)
{
   
int                     i;
    for (i = 0; i != mtx->proc_count; i +=
1)
        pthread_rwlock_wrlock(&mtx->cell[i].mtx);
    return
0;
}

What is wrong with it ? suppose two or more writers wants to
lock this distributed rwlock
there is a possibility of a deadlock.

So
i think you have to use a critical section around the for loop to be able to
lock
all the rwlocks at the same time to avoid the deadlock
problem..

Am i correct or not ?

Thank you,
Amine Moulay
Ramdane.
 
 
 

5 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.

I wrote:
> So i think you have to use a critical section around the for loop to
be able
> to lock
> all the rwlocks at the same time to avoid the
deadlock problem..
 
I mean  you have to use a critical section around the for loop to be
able 
to lock all the rwlocks atomicly  to avoid the deadlock
problem..
 
 
 
 
Thank you,
Amine Moulay Ramdane.

Sorry for my english: i mean atomically.
 
 
 
Thank you,
Amine Moulay Ramdne.
 

Patricia Shanahan wrote:
> The text explanation on the referenced web page says 'No
additional
> synchronization between writers is required, writers acquire
the mutexes
> in the same order (from 0 to P-1), so ownership over mutex 0
basically
> determines who is the "current" writer (all other potential
writers are
> parked on mutex 0).'
 
 
You are absolutly right.
 
 
Thank you,
Amine Moulay Ramdane.
 

Patricia Shanahan wrote:
> The text explanation on the referenced web page says 'No
additional
> synchronization between writers is required, writers acquire
the mutexes
> in the same order (from 0 to P-1), so ownership over mutex 0
basically
> determines who is the "current" writer (all other potential
writers are
> parked on mutex 0).'
 
 
You are absolutly right.
 
 
Thank you,
Amine Moulay Ramdane.
 

Leave a Comment

Please sign in to add a comment. Not a member? Join today