Thread (29 messages) 29 messages, 3 authors, 2015-07-29

Re: [PATCH 05/12] md-cluster: init completion within lockres_init

From: Goldwyn Rodrigues <hidden>
Date: 2015-07-27 16:44:53


On 07/10/2015 04:01 AM, Guoqing Jiang wrote:
We should init completion within lockres_init, otherwise
completion could be initialized more than one time during
it's life cycle.

Signed-off-by: Guoqing Jiang <redacted>

Reviewed-by: Goldwyn Rodrigues <redacted>
quoted hunk ↗ jump to hunk
---
  drivers/md/md-cluster.c | 3 +--
  1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/drivers/md/md-cluster.c b/drivers/md/md-cluster.c
index 85b7836..2a57f19 100644
--- a/drivers/md/md-cluster.c
+++ b/drivers/md/md-cluster.c
@@ -100,7 +100,6 @@ static int dlm_lock_sync(struct dlm_lock_resource *res, int mode)
  {
  	int ret = 0;

-	init_completion(&res->completion);
  	ret = dlm_lock(res->ls, mode, &res->lksb,
  			res->flags, res->name, strlen(res->name),
  			0, sync_ast, res, res->bast);
@@ -125,6 +124,7 @@ static struct dlm_lock_resource *lockres_init(struct mddev *mddev,
  	res = kzalloc(sizeof(struct dlm_lock_resource), GFP_KERNEL);
  	if (!res)
  		return NULL;
+	init_completion(&res->completion);
  	res->ls = cinfo->lockspace;
  	res->mddev = mddev;
  	namelen = strlen(name);
@@ -169,7 +169,6 @@ static void lockres_free(struct dlm_lock_resource *res)
  	if (!res)
  		return;

-	init_completion(&res->completion);
  	dlm_unlock(res->ls, res->lksb.sb_lkid, 0, &res->lksb, res);
  	wait_for_completion(&res->completion);
-- 
Goldwyn
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help