Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 79ac6745 authored by James Smart's avatar James Smart Committed by James Bottomley
Browse files

[SCSI] Block I/O while SG reset operation in progress - lpfc portion



This removes the duplicate functionality which had been added to
the lpfc driver.

Signed-off-by: default avatarJames Smart <James.Smart@emulex.com>
Signed-off-by: default avatarJames Bottomley <James.Bottomley@SteelEye.com>
parent d7a1bb0a
Loading
Loading
Loading
Loading
+0 −1
Original line number Diff line number Diff line
@@ -174,7 +174,6 @@ struct lpfc_hba {
	dma_addr_t slim2p_mapping;
	uint16_t pci_cfg_value;

	struct semaphore hba_can_block;
	int32_t hba_state;

#define LPFC_STATE_UNKNOWN        0    /* HBA state is unknown */
+0 −1
Original line number Diff line number Diff line
@@ -1451,7 +1451,6 @@ lpfc_pci_probe_one(struct pci_dev *pdev, const struct pci_device_id *pid)
		goto out_put_host;

	host->unique_id = phba->brd_no;
	init_MUTEX(&phba->hba_can_block);
	INIT_LIST_HEAD(&phba->ctrspbuflist);
	INIT_LIST_HEAD(&phba->rnidrspbuflist);
	INIT_LIST_HEAD(&phba->freebufList);
+0 −20
Original line number Diff line number Diff line
@@ -41,20 +41,6 @@
#define LPFC_ABORT_WAIT  2


static inline void
lpfc_block_requests(struct lpfc_hba * phba)
{
	down(&phba->hba_can_block);
	scsi_block_requests(phba->host);
}

static inline void
lpfc_unblock_requests(struct lpfc_hba * phba)
{
	scsi_unblock_requests(phba->host);
	up(&phba->hba_can_block);
}

/*
 * This routine allocates a scsi buffer, which contains all the necessary
 * information needed to initiate a SCSI I/O.  The non-DMAable buffer region
@@ -859,7 +845,6 @@ lpfc_abort_handler(struct scsi_cmnd *cmnd)
	unsigned int loop_count = 0;
	int ret = SUCCESS;

	lpfc_block_requests(phba);
	spin_lock_irq(shost->host_lock);

	lpfc_cmd = (struct lpfc_scsi_buf *)cmnd->host_scribble;
@@ -945,7 +930,6 @@ lpfc_abort_handler(struct scsi_cmnd *cmnd)
			cmnd->device->lun, cmnd->serial_number);

	spin_unlock_irq(shost->host_lock);
	lpfc_unblock_requests(phba);

	return ret;
}
@@ -963,7 +947,6 @@ lpfc_reset_lun_handler(struct scsi_cmnd *cmnd)
	int ret = FAILED;
	int cnt, loopcnt;

	lpfc_block_requests(phba);
	spin_lock_irq(shost->host_lock);
	/*
	 * If target is not in a MAPPED state, delay the reset until
@@ -1065,7 +1048,6 @@ lpfc_reset_lun_handler(struct scsi_cmnd *cmnd)

out:
	spin_unlock_irq(shost->host_lock);
	lpfc_unblock_requests(phba);
	return ret;
}

@@ -1080,7 +1062,6 @@ lpfc_reset_bus_handler(struct scsi_cmnd *cmnd)
	int cnt, loopcnt;
	struct lpfc_scsi_buf * lpfc_cmd;

	lpfc_block_requests(phba);
	spin_lock_irq(shost->host_lock);

	lpfc_cmd = lpfc_get_scsi_buf(phba);
@@ -1163,7 +1144,6 @@ lpfc_reset_bus_handler(struct scsi_cmnd *cmnd)
			phba->brd_no, ret);
out:
	spin_unlock_irq(shost->host_lock);
	lpfc_unblock_requests(phba);
	return ret;
}