Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.programming.threads > #1024

Distributed Reader-Writer Mutex by Dmitry Vyukov

From "aminer" <aminer@videotron.ca>
Newsgroups comp.programming.threads, comp.programming
Subject Distributed Reader-Writer Mutex by Dmitry Vyukov
Date 2012-08-25 18:45 -0500
Organization A noiseless patient Spider
Message-ID <k1bkhs$uk8$1@dont-email.me> (permalink)

Cross-posted to 2 groups.

Show all headers | View raw



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/distributed-reader-writer-mutex


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.




Back to comp.programming.threads | Previous | NextNext in thread | Find similar


Thread

Distributed Reader-Writer Mutex by  Dmitry Vyukov "aminer" <aminer@videotron.ca> - 2012-08-25 18:45 -0500
  Re: Distributed Reader-Writer Mutex by  Dmitry Vyukov "aminer" <aminer@videotron.ca> - 2012-08-25 19:19 -0500
    Re: Distributed Reader-Writer Mutex by  Dmitry Vyukov "aminer" <aminer@videotron.ca> - 2012-08-25 19:23 -0500
  Re: Distributed Reader-Writer Mutex by  Dmitry Vyukov Patricia Shanahan <pats@acm.org> - 2012-08-25 16:47 -0700
    Re: Distributed Reader-Writer Mutex by  Dmitry Vyukov "aminer" <aminer@videotron.ca> - 2012-08-25 19:56 -0500

csiph-web