From: Markus Elfring <Markus.Elfring@web.de>
To: linux-scsi@vger.kernel.org, megaraidlinux.pdl@broadcom.com,
"James E. J. Bottomley" <jejb@linux.ibm.com>,
Kashyap Desai <kashyap.desai@broadcom.com>,
Shivasharan S <shivasharan.srikanteshwara@broadcom.com>,
Sumit Saxena <sumit.saxena@broadcom.com>,
"Martin K. Petersen" <martin.petersen@oracle.com>
Cc: LKML <linux-kernel@vger.kernel.org>,
kernel-janitors@vger.kernel.org,
Chandrakanth Patil <chandrakanth.patil@broadcom.com>,
YueHaibing <yuehaibing@huawei.com>
Subject: [PATCH] scsi: megaraid_sas: Use common error handling code in megasas_mgmt_ioctl_fw()
Date: Thu, 31 Oct 2019 22:35:58 +0100 [thread overview]
Message-ID: <d5c12f05-5a07-b698-ae60-2728330dd378@web.de> (raw)
From: Markus Elfring <elfring@users.sourceforge.net>
Date: Thu, 31 Oct 2019 22:23:02 +0100
Move the same error code assignments so that such exception handling
can be better reused at the end of this function.
This issue was detected by using the Coccinelle software.
Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
---
drivers/scsi/megaraid/megaraid_sas_base.c | 25 ++++++++++-------------
1 file changed, 11 insertions(+), 14 deletions(-)
diff --git a/drivers/scsi/megaraid/megaraid_sas_base.c b/drivers/scsi/megaraid/megaraid_sas_base.c
index c40fbea06cc5..f2f2a240e5af 100644
--- a/drivers/scsi/megaraid/megaraid_sas_base.c
+++ b/drivers/scsi/megaraid/megaraid_sas_base.c
@@ -8272,27 +8272,20 @@ static int megasas_mgmt_ioctl_fw(struct file *file, unsigned long arg)
return PTR_ERR(ioc);
instance = megasas_lookup_instance(ioc->host_no);
- if (!instance) {
- error = -ENODEV;
- goto out_kfree_ioc;
- }
+ if (!instance)
+ goto e_nodev;
/* Block ioctls in VF mode */
- if (instance->requestorId && !allow_vf_ioctls) {
- error = -ENODEV;
- goto out_kfree_ioc;
- }
+ if (instance->requestorId && !allow_vf_ioctls)
+ goto e_nodev;
if (atomic_read(&instance->adprecovery) == MEGASAS_HW_CRITICAL_ERROR) {
dev_err(&instance->pdev->dev, "Controller in crit error\n");
- error = -ENODEV;
- goto out_kfree_ioc;
+ goto e_nodev;
}
- if (instance->unload == 1) {
- error = -ENODEV;
- goto out_kfree_ioc;
- }
+ if (instance->unload == 1)
+ goto e_nodev;
if (down_interruptible(&instance->ioctl_sem)) {
error = -ERESTARTSYS;
@@ -8311,6 +8304,10 @@ static int megasas_mgmt_ioctl_fw(struct file *file, unsigned long arg)
out_kfree_ioc:
kfree(ioc);
return error;
+
+e_nodev:
+ error = -ENODEV;
+ goto out_kfree_ioc;
}
static int megasas_mgmt_ioctl_aen(struct file *file, unsigned long arg)
--
2.23.0
next reply other threads:[~2019-10-31 21:36 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-10-31 21:35 Markus Elfring [this message]
2019-11-05 9:28 ` Sumit Saxena
2019-11-05 9:36 ` Dan Carpenter
2019-11-05 10:20 ` Julian Calaby
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=d5c12f05-5a07-b698-ae60-2728330dd378@web.de \
--to=markus.elfring@web.de \
--cc=chandrakanth.patil@broadcom.com \
--cc=jejb@linux.ibm.com \
--cc=kashyap.desai@broadcom.com \
--cc=kernel-janitors@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-scsi@vger.kernel.org \
--cc=martin.petersen@oracle.com \
--cc=megaraidlinux.pdl@broadcom.com \
--cc=shivasharan.srikanteshwara@broadcom.com \
--cc=sumit.saxena@broadcom.com \
--cc=yuehaibing@huawei.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®