Re: [PATCH v3] nbd: Fix memory leak in nbd_add_socket
From: Markus Elfring
Date: Mon Jun 22 2020 - 10:25:27 EST
> When adding first socket to nbd, âââ
Can the term ânetwork block deviceâ matter for this change description?
> â A memory leak will occur
> then because the function "nbd_config_put" will free "config->socks" only
> when "config->num_connections" is not zero.
Will an additional imperative wording be helpful for the commit message?
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/process/submitting-patches.rst?id=625d3449788f85569096780592549d0340e9c0c7#n151
Regards,
Markus
â
> +++ b/drivers/block/nbd.c
> @@ -1033,25 +1033,26 @@ static int nbd_add_socket(struct nbd_device *nbd, unsigned long arg,
â
> + if (!nsock) {
> + err = -ENOMEM;
> + goto put_socket;
> }
â
> return 0;
> +
I find that the exception handling can be improved a bit more
by adding another jump target.
+e_nomem:
+ err = -ENOMEM;
> +put_socket:
> + sockfd_put(sock);
> + return err;
> }
Would you like to apply any further fine-tuning?
Regards,
Markus