+ block-i-o-while-sg-reset-operation-in-progress-lpfc.patch added to -mm tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The patch titled

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

has been added to the -mm tree.  Its filename is

     block-i-o-while-sg-reset-operation-in-progress-lpfc.patch

See http://www.zip.com.au/~akpm/linux/patches/stuff/added-to-mm.txt to find
out what to do about this

------------------------------------------------------
Subject: Block I/O while SG reset operation in progress - lpfc portion
From: James Smart <James.Smart@xxxxxxxxxx>


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

Signed-off-by: James Smart <James.Smart@xxxxxxxxxx>
Cc: James Bottomley <James.Bottomley@xxxxxxxxxxxx>
Signed-off-by: Andrew Morton <akpm@xxxxxxxx>
---

 drivers/scsi/lpfc/lpfc.h      |    1 -
 drivers/scsi/lpfc/lpfc_init.c |    1 -
 drivers/scsi/lpfc/lpfc_scsi.c |   20 --------------------
 3 files changed, 22 deletions(-)

diff -puN drivers/scsi/lpfc/lpfc.h~block-i-o-while-sg-reset-operation-in-progress-lpfc drivers/scsi/lpfc/lpfc.h
--- 25/drivers/scsi/lpfc/lpfc.h~block-i-o-while-sg-reset-operation-in-progress-lpfc	Tue Jun 27 14:44:18 2006
+++ 25-akpm/drivers/scsi/lpfc/lpfc.h	Tue Jun 27 14:44:18 2006
@@ -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 */
diff -puN drivers/scsi/lpfc/lpfc_init.c~block-i-o-while-sg-reset-operation-in-progress-lpfc drivers/scsi/lpfc/lpfc_init.c
--- 25/drivers/scsi/lpfc/lpfc_init.c~block-i-o-while-sg-reset-operation-in-progress-lpfc	Tue Jun 27 14:44:18 2006
+++ 25-akpm/drivers/scsi/lpfc/lpfc_init.c	Tue Jun 27 14:44:18 2006
@@ -1452,7 +1452,6 @@ lpfc_pci_probe_one(struct pci_dev *pdev,
 		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);
diff -puN drivers/scsi/lpfc/lpfc_scsi.c~block-i-o-while-sg-reset-operation-in-progress-lpfc drivers/scsi/lpfc/lpfc_scsi.c
--- 25/drivers/scsi/lpfc/lpfc_scsi.c~block-i-o-while-sg-reset-operation-in-progress-lpfc	Tue Jun 27 14:44:18 2006
+++ 25-akpm/drivers/scsi/lpfc/lpfc_scsi.c	Tue Jun 27 14:44:18 2006
@@ -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 *cmn
 	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 *cmn
 			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 
 	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 @@ out_free_scsi_buf:
 
 out:
 	spin_unlock_irq(shost->host_lock);
-	lpfc_unblock_requests(phba);
 	return ret;
 }
 
@@ -1080,7 +1062,6 @@ lpfc_reset_bus_handler(struct scsi_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 
 			phba->brd_no, ret);
 out:
 	spin_unlock_irq(shost->host_lock);
-	lpfc_unblock_requests(phba);
 	return ret;
 }
 
_

Patches currently in -mm which might be from James.Smart@xxxxxxxxxx are

git-scsi-misc.patch
fc-transport-bug-fix-correct-references.patch
scsi-midlayer-fix-sdev-reuse-after-free.patch
block-i-o-while-sg-reset-operation-in-progress-midlayer.patch
block-i-o-while-sg-reset-operation-in-progress-lpfc.patch
fc-transport-resolve-scan-vs-delete-deadlocks.patch

-
To unsubscribe from this list: send the line "unsubscribe mm-commits" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Kernel Newbies FAQ]     [Kernel Archive]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [Bugtraq]     [Photo]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]

  Powered by Linux