Distributed Reader-Writer Mutex by Dmitry Vyukov

Distributed Reader-Writer Mutex by Dmitry Vyukov

Ritratto di aminer10
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 post / 0 new
Ultimo contenuto
Per informazioni complete sulle ottimizzazioni del compilatore, consultare l'Avviso sull'ottimizzazione
Ritratto di aminer10
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.
Ritratto di aminer10
Sorry for my english: i mean atomically.       Thank you, Amine Moulay Ramdne.  
Ritratto di aminer10
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.  
Ritratto di aminer10
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.  

Accedere per lasciare un commento.