isci: audit usage of BUG_ON macro in isci driver
Removes unnecessary usage of BUG_ON macro, excluding core directory.
In some cases macro is unnecesary, check is done in caller function.
In other cases macro is replaced by if construction with
appropriate warning.
Signed-off-by: Maciej Patelczyk <maciej.patelczyk@intel.com>
[changed some survivable bug conditions to WARN_ONCE]
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
diff --git a/drivers/scsi/isci/task.c b/drivers/scsi/isci/task.c
index b88101e..c79968d 100644
--- a/drivers/scsi/isci/task.c
+++ b/drivers/scsi/isci/task.c
@@ -272,7 +272,7 @@
{
struct scic_sds_remote_device *sci_device;
enum sci_status status = SCI_FAILURE;
- struct isci_request *request;
+ struct isci_request *request = NULL;
struct isci_remote_device *isci_device;
/* struct sci_sas_identify_address_frame_protocols dev_protocols; */
struct smp_discover_response_protocols dev_protocols;
@@ -372,8 +372,6 @@
struct isci_tmf *tmf = isci_request_access_tmf(request);
enum sci_status status;
- BUG_ON(request->ttype != tmf_task);
-
/* This task management request has timed-out. Terminate the request
* so that the request eventually completes to the requestor in the
* request completion callback path.
@@ -1121,8 +1119,11 @@
* request state was already set to "aborted" by the abort
* task function.
*/
- BUG_ON((old_request->status != aborted)
- && (old_request->status != completed));
+ if ((old_request->status != aborted)
+ && (old_request->status != completed))
+ dev_err(&old_request->isci_host->pdev->dev,
+ "%s: Bad request status (%d): tmf=%p, old_request=%p\n",
+ __func__, old_request->status, tmf, old_request);
break;
case isci_tmf_timed_out: