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>
This commit is contained in:
Bartosz Barcinski 2011-04-12 17:28:43 -07:00 committed by Dan Williams
parent 467e855a03
commit 6cb4d6b382
7 changed files with 15 additions and 18 deletions

View File

@ -1635,7 +1635,6 @@ static void scic_sds_request_completed_state_enter(
struct isci_host *ihost = sci_object_get_association(scic); struct isci_host *ihost = sci_object_get_association(scic);
struct isci_request *ireq = sci_object_get_association(sci_req); struct isci_request *ireq = sci_object_get_association(sci_req);
SET_STATE_HANDLER(sci_req, SET_STATE_HANDLER(sci_req,
scic_sds_request_state_handler_table, scic_sds_request_state_handler_table,
SCI_BASE_REQUEST_STATE_COMPLETED); SCI_BASE_REQUEST_STATE_COMPLETED);

View File

@ -362,8 +362,6 @@ static int isci_setup_interrupts(struct pci_dev *pdev)
else else
isr = isci_msix_isr; isr = isci_msix_isr;
BUG_ON(!isci_host);
err = devm_request_irq(&pdev->dev, msix->vector, isr, 0, err = devm_request_irq(&pdev->dev, msix->vector, isr, 0,
DRV_NAME"-msix", isci_host); DRV_NAME"-msix", isci_host);
if (!err) if (!err)
@ -379,13 +377,11 @@ static int isci_setup_interrupts(struct pci_dev *pdev)
pci_disable_msix(pdev); pci_disable_msix(pdev);
goto intx; goto intx;
} }
return 0; return 0;
intx: intx:
err = devm_request_irq(&pdev->dev, pdev->irq, isci_intx_isr, err = devm_request_irq(&pdev->dev, pdev->irq, isci_intx_isr,
IRQF_SHARED, DRV_NAME"-intx", pdev); IRQF_SHARED, DRV_NAME"-intx", pdev);
return err; return err;
} }

View File

@ -178,6 +178,7 @@ void isci_port_link_up(
unsigned long success = true; unsigned long success = true;
BUG_ON(isci_phy->isci_port != NULL); BUG_ON(isci_phy->isci_port != NULL);
isci_phy->isci_port = isci_port; isci_phy->isci_port = isci_port;
dev_dbg(&isci_host->pdev->dev, dev_dbg(&isci_host->pdev->dev,

View File

@ -202,8 +202,6 @@ static enum sci_status isci_remote_device_construct(
sci_object_set_association(to_sci_dev(isci_device), isci_device); sci_object_set_association(to_sci_dev(isci_device), isci_device);
BUG_ON(port->isci_host == NULL);
/* start the device. */ /* start the device. */
status = scic_remote_device_start(to_sci_dev(isci_device), status = scic_remote_device_start(to_sci_dev(isci_device),
ISCI_REMOTE_DEVICE_START_TIMEOUT); ISCI_REMOTE_DEVICE_START_TIMEOUT);
@ -257,8 +255,12 @@ isci_remote_device_alloc(struct isci_host *ihost, struct isci_port *iport)
return NULL; return NULL;
} }
BUG_ON(!list_empty(&idev->reqs_in_process)); if (WARN_ONCE(!list_empty(&idev->reqs_in_process), "found requests in process\n"))
BUG_ON(!list_empty(&idev->node)); return NULL;
if (WARN_ONCE(!list_empty(&idev->node), "found non-idle remote device\n"))
return NULL;
isci_remote_device_change_state(idev, isci_freed); isci_remote_device_change_state(idev, isci_freed);
return idev; return idev;

View File

@ -472,7 +472,6 @@ int isci_request_execute(
out: out:
if (status != SCI_SUCCESS) { if (status != SCI_SUCCESS) {
/* release dma memory on failure. */ /* release dma memory on failure. */
isci_request_free(isci_host, request); isci_request_free(isci_host, request);
request = NULL; request = NULL;

View File

@ -193,8 +193,6 @@ static inline enum isci_request_status isci_request_change_started_to_newstate(
enum isci_request_status old_state; enum isci_request_status old_state;
unsigned long flags; unsigned long flags;
BUG_ON(isci_request == NULL);
spin_lock_irqsave(&isci_request->state_lock, flags); spin_lock_irqsave(&isci_request->state_lock, flags);
old_state = isci_request->status; old_state = isci_request->status;
@ -243,7 +241,8 @@ static inline void isci_request_free(
struct isci_host *isci_host, struct isci_host *isci_host,
struct isci_request *isci_request) struct isci_request *isci_request)
{ {
BUG_ON(isci_request == NULL); if (!isci_request)
return;
/* release the dma memory if we fail. */ /* release the dma memory if we fail. */
dma_pool_free(isci_host->dma_pool, isci_request, dma_pool_free(isci_host->dma_pool, isci_request,

View File

@ -272,7 +272,7 @@ static enum sci_status isci_task_request_build(
{ {
struct scic_sds_remote_device *sci_device; struct scic_sds_remote_device *sci_device;
enum sci_status status = SCI_FAILURE; enum sci_status status = SCI_FAILURE;
struct isci_request *request; struct isci_request *request = NULL;
struct isci_remote_device *isci_device; struct isci_remote_device *isci_device;
/* struct sci_sas_identify_address_frame_protocols dev_protocols; */ /* struct sci_sas_identify_address_frame_protocols dev_protocols; */
struct smp_discover_response_protocols dev_protocols; struct smp_discover_response_protocols dev_protocols;
@ -372,8 +372,6 @@ static void isci_tmf_timeout_cb(void *tmf_request_arg)
struct isci_tmf *tmf = isci_request_access_tmf(request); struct isci_tmf *tmf = isci_request_access_tmf(request);
enum sci_status status; enum sci_status status;
BUG_ON(request->ttype != tmf_task);
/* This task management request has timed-out. Terminate the request /* This task management request has timed-out. Terminate the request
* so that the request eventually completes to the requestor in the * so that the request eventually completes to the requestor in the
* request completion callback path. * request completion callback path.
@ -1121,8 +1119,11 @@ static void isci_abort_task_process_cb(
* request state was already set to "aborted" by the abort * request state was already set to "aborted" by the abort
* task function. * task function.
*/ */
BUG_ON((old_request->status != aborted) if ((old_request->status != aborted)
&& (old_request->status != completed)); && (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; break;
case isci_tmf_timed_out: case isci_tmf_timed_out: