linux-raid.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH -next] md-cluster: fix error return code in join()
@ 2016-08-21 14:42 Wei Yongjun
  2016-08-24  0:09 ` Shaohua Li
  0 siblings, 1 reply; 2+ messages in thread
From: Wei Yongjun @ 2016-08-21 14:42 UTC (permalink / raw)
  To: Shaohua Li; +Cc: Wei Yongjun, linux-raid

From: Wei Yongjun <weiyongjun1@huawei.com>

Fix to return error code -ENOMEM from the lockres_init() error
handling case instead of 0, as done elsewhere in this function.

Signed-off-by: Wei Yongjun <weiyongjun1@huawei.com>
---
 drivers/md/md-cluster.c | 12 +++++++++---
 1 file changed, 9 insertions(+), 3 deletions(-)

diff --git a/drivers/md/md-cluster.c b/drivers/md/md-cluster.c
index 333f0cf..2b13117 100644
--- a/drivers/md/md-cluster.c
+++ b/drivers/md/md-cluster.c
@@ -874,8 +874,10 @@ static int join(struct mddev *mddev, int nodes)
 		goto err;
 	}
 	cinfo->ack_lockres = lockres_init(mddev, "ack", ack_bast, 0);
-	if (!cinfo->ack_lockres)
+	if (!cinfo->ack_lockres) {
+		ret = -ENOMEM;
 		goto err;
+	}
 	/* get sync CR lock on ACK. */
 	if (dlm_lock_sync(cinfo->ack_lockres, DLM_LOCK_CR))
 		pr_err("md-cluster: failed to get a sync CR lock on ACK!(%d)\n",
@@ -889,8 +891,10 @@ static int join(struct mddev *mddev, int nodes)
 	pr_info("md-cluster: Joined cluster %s slot %d\n", str, cinfo->slot_number);
 	snprintf(str, 64, "bitmap%04d", cinfo->slot_number - 1);
 	cinfo->bitmap_lockres = lockres_init(mddev, str, NULL, 1);
-	if (!cinfo->bitmap_lockres)
+	if (!cinfo->bitmap_lockres) {
+		ret = -ENOMEM;
 		goto err;
+	}
 	if (dlm_lock_sync(cinfo->bitmap_lockres, DLM_LOCK_PW)) {
 		pr_err("Failed to get bitmap lock\n");
 		ret = -EINVAL;
@@ -898,8 +902,10 @@ static int join(struct mddev *mddev, int nodes)
 	}
 
 	cinfo->resync_lockres = lockres_init(mddev, "resync", NULL, 0);
-	if (!cinfo->resync_lockres)
+	if (!cinfo->resync_lockres) {
+		ret = -ENOMEM;
 		goto err;
+	}
 
 	return 0;
 err:


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH -next] md-cluster: fix error return code in join()
  2016-08-21 14:42 [PATCH -next] md-cluster: fix error return code in join() Wei Yongjun
@ 2016-08-24  0:09 ` Shaohua Li
  0 siblings, 0 replies; 2+ messages in thread
From: Shaohua Li @ 2016-08-24  0:09 UTC (permalink / raw)
  To: Wei Yongjun; +Cc: Wei Yongjun, linux-raid

On Sun, Aug 21, 2016 at 02:42:25PM +0000, Wei Yongjun wrote:
> From: Wei Yongjun <weiyongjun1@huawei.com>
> 
> Fix to return error code -ENOMEM from the lockres_init() error
> handling case instead of 0, as done elsewhere in this function.
> 
> Signed-off-by: Wei Yongjun <weiyongjun1@huawei.com>
> ---
>  drivers/md/md-cluster.c | 12 +++++++++---
>  1 file changed, 9 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/md/md-cluster.c b/drivers/md/md-cluster.c
> index 333f0cf..2b13117 100644
> --- a/drivers/md/md-cluster.c
> +++ b/drivers/md/md-cluster.c
> @@ -874,8 +874,10 @@ static int join(struct mddev *mddev, int nodes)
>  		goto err;
>  	}
>  	cinfo->ack_lockres = lockres_init(mddev, "ack", ack_bast, 0);
> -	if (!cinfo->ack_lockres)
> +	if (!cinfo->ack_lockres) {
> +		ret = -ENOMEM;
>  		goto err;
> +	}
>  	/* get sync CR lock on ACK. */
>  	if (dlm_lock_sync(cinfo->ack_lockres, DLM_LOCK_CR))
>  		pr_err("md-cluster: failed to get a sync CR lock on ACK!(%d)\n",
> @@ -889,8 +891,10 @@ static int join(struct mddev *mddev, int nodes)
>  	pr_info("md-cluster: Joined cluster %s slot %d\n", str, cinfo->slot_number);
>  	snprintf(str, 64, "bitmap%04d", cinfo->slot_number - 1);
>  	cinfo->bitmap_lockres = lockres_init(mddev, str, NULL, 1);
> -	if (!cinfo->bitmap_lockres)
> +	if (!cinfo->bitmap_lockres) {
> +		ret = -ENOMEM;
>  		goto err;
> +	}
>  	if (dlm_lock_sync(cinfo->bitmap_lockres, DLM_LOCK_PW)) {
>  		pr_err("Failed to get bitmap lock\n");
>  		ret = -EINVAL;
> @@ -898,8 +902,10 @@ static int join(struct mddev *mddev, int nodes)
>  	}
>  
>  	cinfo->resync_lockres = lockres_init(mddev, "resync", NULL, 0);
> -	if (!cinfo->resync_lockres)
> +	if (!cinfo->resync_lockres) {
> +		ret = -ENOMEM;
>  		goto err;
> +	}
>  
>  	return 0;
>  err:

applied, thanks! 

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2016-08-24  0:09 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-08-21 14:42 [PATCH -next] md-cluster: fix error return code in join() Wei Yongjun
2016-08-24  0:09 ` Shaohua Li

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).