Re: [PATCH -next] md-cluster: fix error return code in join()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sun, Aug 21, 2016 at 02:42:25PM +0000, Wei Yongjun wrote:
> From: Wei Yongjun <weiyongjun1@xxxxxxxxxx>
> 
> 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@xxxxxxxxxx>
> ---
>  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! 
--
To unsubscribe from this list: send the line "unsubscribe linux-raid" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux RAID Wiki]     [ATA RAID]     [Linux SCSI Target Infrastructure]     [Linux Block]     [Linux IDE]     [Linux SCSI]     [Linux Hams]     [Device Mapper]     [Device Mapper Cryptographics]     [Kernel]     [Linux Admin]     [Linux Net]     [GFS]     [RPM]     [git]     [Yosemite Forum]


  Powered by Linux