DLM: Convert connections_lock in a mutex
PATCH 1/1 DLM: Convert connections_lock in a mutex
Distributed Lock Manager: The semaphore connections_lock is used as a mutex. Convert it to the mutex API.
Signed-off-by Matthias Kaehlcke <[email protected]>
--
fs/dlm/lowcomms.c +12 -12
@@ -138,7 +138,7 @@ static struct workqueue_struct *recv_workqueue;static struct workqueue_struct *send_workqueue;static DEFINE_IDR (connections_idr); -static DECLARE_MUTEX (connections_lock); +static DEFINE_MUTEX (connections_lock);static int max_nodeid;static struct kmem_cache *con_cache;
@@ -205,9 +205,9 @@ static struct connection *nodeid2con(int nodeid, gfp_t allocation) {struct connection *con; -down (&connections_lock); +mutex_lock (&connections_lock); con =__nodeid2con (nodeid, allocation); -up (&connections_lock); +mutex_unlock (&connections_lock);return con; }
@@ -218,15 +218,15 @@ static struct connection *assoc2con(int assoc_id)int i;struct connection *con; -down (&connections_lock); +mutex_lock (&connections_lock);for (i=0 ; i<=max_nodeid; i++) { con =__nodeid2con (i,0 );if (con && con->sctp_assoc == assoc_id) { -up (&connections_lock); +mutex_unlock (&connections_lock);return con; } } -up (&connections_lock); +mutex_unlock (&connections_lock);return NULL ; }
@@ -381,7 +381,7 @@ static void sctp_init_failed(void)int i;struct connection *con; -down (&connections_lock); +mutex_lock (&connections_lock);for (i=1 ; i<=max_nodeid; i++) { con =__nodeid2con (i,0 );if (!con)
@@ -393,7 +393,7 @@ static void sctp_init_failed(void) } } } -up (&connections_lock); +mutex_unlock (&connections_lock); }/* Something happened to an association */
@@ -1417,7 +1417,7 @@ void dlm_lowcomms_stop(void)/* Set all the flags to prevent any socket activity. */ -down (&connections_lock); +mutex_lock (&connections_lock);for (i =0 ; i <= max_nodeid; i++) { con =__nodeid2con (i,0 );if (con) {
@@ -1426,11 +1426,11 @@ void dlm_lowcomms_stop(void) con->sock->sk->sk_user_data =NULL ; } } -up (&connections_lock); +mutex_unlock (&connections_lock);work_stop (); -down (&connections_lock); +mutex_lock (&connections_lock);clean_writequeues ();for (i =0 ; i <= max_nodeid; i++) {
@@ -1443,7 +1443,7 @@ void dlm_lowcomms_stop(void) } } max_nodeid =0 ; -up (&connections_lock); +mutex_unlock (&connections_lock);kmem_cache_destroy (con_cache);idr_init (&connections_idr); }
Signature · 10 lines
Matthias Kaehlcke
Embedded Linux Engineer
Barcelona
I am incapable of conceiving infinity, and yet I do not accept finity
(Simone de Beauvoir)
.''`.
using free software / Debian GNU/Linux | http://debian.org : :' :
`. `'`
gpg --keyserver pgp.mit.edu --recv-keys 47D8E5D4 `-David Teigland
maintainerQuoted 4 lines · Matthias Kaehlcke
Distributed Lock Manager: The semaphore
connections_lockis used as a mutex. Convert it to the mutex API.Signed-off-by Matthias Kaehlcke <[email protected]>
Thanks, I've added this to dlm.git, along with the followup #include from Andrew.
Dave