Linux-SCSI Archive on lore.kernel.org
 help / color / Atom feed
* [PATCH] scsi: lpfc: Add the missed misc_deregister() for lpfc_init()
@ 2020-07-31  6:56 Jing Xiangfeng
  2020-08-04 16:21 ` James Smart
  2020-08-05  1:17 ` Martin K. Petersen
  0 siblings, 2 replies; 3+ messages in thread
From: Jing Xiangfeng @ 2020-07-31  6:56 UTC (permalink / raw)
  To: james.smart, dick.kennedy, jejb, martin.petersen
  Cc: linux-scsi, linux-kernel, jingxiangfeng

lpfc_init() misses to call misc_deregister() in an error path. Add a
label 'unregister' to fix it.

Signed-off-by: Jing Xiangfeng <jingxiangfeng@huawei.com>
---
 drivers/scsi/lpfc/lpfc_init.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/drivers/scsi/lpfc/lpfc_init.c b/drivers/scsi/lpfc/lpfc_init.c
index 6637f84a3d1b..ec40bc91e124 100644
--- a/drivers/scsi/lpfc/lpfc_init.c
+++ b/drivers/scsi/lpfc/lpfc_init.c
@@ -13982,17 +13982,18 @@ lpfc_init(void)
 		printk(KERN_ERR "Could not register lpfcmgmt device, "
 			"misc_register returned with status %d", error);
 
+	error = -ENOMEM;
 	lpfc_transport_functions.vport_create = lpfc_vport_create;
 	lpfc_transport_functions.vport_delete = lpfc_vport_delete;
 	lpfc_transport_template =
 				fc_attach_transport(&lpfc_transport_functions);
 	if (lpfc_transport_template == NULL)
-		return -ENOMEM;
+		goto unregister;
 	lpfc_vport_transport_template =
 		fc_attach_transport(&lpfc_vport_transport_functions);
 	if (lpfc_vport_transport_template == NULL) {
 		fc_release_transport(lpfc_transport_template);
-		return -ENOMEM;
+		goto unregister;
 	}
 	lpfc_nvme_cmd_template();
 	lpfc_nvmet_cmd_template();
@@ -14018,6 +14019,8 @@ lpfc_init(void)
 cpuhp_failure:
 	fc_release_transport(lpfc_transport_template);
 	fc_release_transport(lpfc_vport_transport_template);
+unregister:
+	misc_deregister(&lpfc_mgmt_dev);
 
 	return error;
 }
-- 
2.17.1


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

* Re: [PATCH] scsi: lpfc: Add the missed misc_deregister() for lpfc_init()
  2020-07-31  6:56 [PATCH] scsi: lpfc: Add the missed misc_deregister() for lpfc_init() Jing Xiangfeng
@ 2020-08-04 16:21 ` James Smart
  2020-08-05  1:17 ` Martin K. Petersen
  1 sibling, 0 replies; 3+ messages in thread
From: James Smart @ 2020-08-04 16:21 UTC (permalink / raw)
  To: Jing Xiangfeng, dick.kennedy, jejb, martin.petersen
  Cc: linux-scsi, linux-kernel



On 7/30/2020 11:56 PM, Jing Xiangfeng wrote:
> lpfc_init() misses to call misc_deregister() in an error path. Add a
> label 'unregister' to fix it.
>
> Signed-off-by: Jing Xiangfeng <jingxiangfeng@huawei.com>
> ---
>   drivers/scsi/lpfc/lpfc_init.c | 7 +++++--
>   1 file changed, 5 insertions(+), 2 deletions(-)
>
>
Looks fine.

Reviewed-by: James Smart <james.smart@broadcom.com>


Thanks

-- james


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

* Re: [PATCH] scsi: lpfc: Add the missed misc_deregister() for lpfc_init()
  2020-07-31  6:56 [PATCH] scsi: lpfc: Add the missed misc_deregister() for lpfc_init() Jing Xiangfeng
  2020-08-04 16:21 ` James Smart
@ 2020-08-05  1:17 ` Martin K. Petersen
  1 sibling, 0 replies; 3+ messages in thread
From: Martin K. Petersen @ 2020-08-05  1:17 UTC (permalink / raw)
  To: dick.kennedy, jejb, james.smart, Jing Xiangfeng
  Cc: Martin K . Petersen, linux-kernel, linux-scsi

On Fri, 31 Jul 2020 14:56:39 +0800, Jing Xiangfeng wrote:

> lpfc_init() misses to call misc_deregister() in an error path. Add a
> label 'unregister' to fix it.

Applied to 5.9/scsi-queue, thanks!

[1/1] scsi: lpfc: Add missing misc_deregister() for lpfc_init()
      https://git.kernel.org/mkp/scsi/c/1eaff53649b8

-- 
Martin K. Petersen	Oracle Linux Engineering

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

end of thread, back to index

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-07-31  6:56 [PATCH] scsi: lpfc: Add the missed misc_deregister() for lpfc_init() Jing Xiangfeng
2020-08-04 16:21 ` James Smart
2020-08-05  1:17 ` Martin K. Petersen

Linux-SCSI Archive on lore.kernel.org

Archives are clonable:
	git clone --mirror https://lore.kernel.org/linux-scsi/0 linux-scsi/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 linux-scsi linux-scsi/ https://lore.kernel.org/linux-scsi \
		linux-scsi@vger.kernel.org
	public-inbox-index linux-scsi

Example config snippet for mirrors

Newsgroup available over NNTP:
	nntp://nntp.lore.kernel.org/org.kernel.vger.linux-scsi


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git