All of lore.kernel.org
 help / color / mirror / Atom feed
* linux-next: manual merge of the block tree with the scsi tree
@ 2010-07-22  1:56 Stephen Rothwell
  0 siblings, 0 replies; 3+ messages in thread
From: Stephen Rothwell @ 2010-07-22  1:56 UTC (permalink / raw)
  To: Jens Axboe
  Cc: linux-next, linux-kernel, FUJITA Tomonori, Mike Christie,
	James Bottomley

Hi Jens,

Today's linux-next merge of the block tree got a conflict in
drivers/scsi/scsi_error.c between commit
a953809f9d1deb97bb27716d773cadd2feebccf8 ("[SCSI] Log msg when getting
Unit Attention") from the scsi tree and commit
f9ccdfe846639f7a4529ccab78468b2207382380 ("scsi: use REQ_TYPE_FS for
flush request") from the block tree.

Just context changes.  I fixed it up (see below) and can carry the fax as
necessary.
-- 
Cheers,
Stephen Rothwell                    sfr@canb.auug.org.au

diff --cc drivers/scsi/scsi_error.c
index c60cffb,2768bf6..0000000
--- a/drivers/scsi/scsi_error.c
+++ b/drivers/scsi/scsi_error.c
@@@ -307,33 -307,7 +307,20 @@@ static int scsi_check_sense(struct scsi
  		    (sshdr.asc == 0x04) && (sshdr.ascq == 0x02))
  			return FAILED;
  
 +		if (sshdr.asc == 0x3f && sshdr.ascq == 0x0e)
 +			scmd_printk(KERN_WARNING, scmd,
 +				    "Warning! Received an indication that the "
 +				    "LUN assignments on this target have "
 +				    "changed. The Linux SCSI layer does not "
 +				    "automatically remap LUN assignments.\n");
 +		else if (sshdr.asc == 0x3f)
 +			scmd_printk(KERN_WARNING, scmd,
 +				    "Warning! Received an indication that the "
 +				    "operating parameters on this target have "
 +				    "changed. The Linux SCSI layer does not "
 +				    "automatically adjust these parameters.\n");
 +
- 		if (blk_barrier_rq(scmd->request))
- 			/*
- 			 * barrier requests should always retry on UA
- 			 * otherwise block will get a spurious error
- 			 */
- 			return NEEDS_RETRY;
- 		else
- 			/*
- 			 * for normal (non barrier) commands, pass the
- 			 * UA upwards for a determination in the
- 			 * completion functions
- 			 */
- 			return SUCCESS;
- 
+ 		return NEEDS_RETRY;
  		/* these three are not supported */
  	case COPY_ABORTED:
  	case VOLUME_OVERFLOW:

^ permalink raw reply	[flat|nested] 3+ messages in thread

* RE: linux-next: manual merge of the block tree with the scsi tree
  2009-06-10  4:02 Stephen Rothwell
@ 2009-06-11  6:23 ` Desai, Kashyap
  0 siblings, 0 replies; 3+ messages in thread
From: Desai, Kashyap @ 2009-06-11  6:23 UTC (permalink / raw)
  To: Stephen Rothwell, Jens Axboe
  Cc: linux-next, linux-kernel, Kashyap, James Bottomley, Tejun Heo

Jens,

I have verified those conflict fixed by Stephen R. It is just context changes. OK to patch it if it is not patched to mainline.

- Kashyap

-----Original Message-----
From: Stephen Rothwell [mailto:sfr@canb.auug.org.au] 
Sent: Wednesday, June 10, 2009 9:33 AM
To: Jens Axboe
Cc: linux-next@vger.kernel.org; linux-kernel@vger.kernel.org; Kashyap@mail2.lsil.com; Desai, Kashyap; James Bottomley; Tejun Heo
Subject: linux-next: manual merge of the block tree with the scsi tree

Hi Jens,

Today's linux-next merge of the block tree got a conflict in
drivers/message/fusion/mptsas.c between commits
14d0f0b063f5363984dd305a792854f9c23e9e97 ("[SCSI] mpt fusion: Fixing 1078
data corruption issue for 36GB memory region") and
2f187862e579f1f5e883188cab6bd867cb60387f ("[SCSI] mpt fusion: Code
Cleanup patch") from the scsi tree and commit
b0790410300abaaf4f25f702803beff701baebf1 ("block: cleanup rq->data_len
usages") from the block tree.

Just context changes.  I fixed it up (see below) and can carry the fix as
necessary.
-- 
Cheers,
Stephen Rothwell                    sfr@canb.auug.org.au

diff --cc drivers/message/fusion/mptsas.c
index 14c490a,79f5433..0000000
--- a/drivers/message/fusion/mptsas.c
+++ b/drivers/message/fusion/mptsas.c
@@@ -2177,32 -1319,26 +2177,32 @@@ static int mptsas_smp_handler(struct Sc
  	/* request */
  	flagsLength = (MPI_SGE_FLAGS_SIMPLE_ELEMENT |
  		       MPI_SGE_FLAGS_END_OF_BUFFER |
 -		       MPI_SGE_FLAGS_DIRECTION |
 -		       mpt_addr_size()) << MPI_SGE_FLAGS_SHIFT;
 +		       MPI_SGE_FLAGS_DIRECTION)
 +		       << MPI_SGE_FLAGS_SHIFT;
- 	flagsLength |= (req->data_len - 4);
+ 	flagsLength |= (blk_rq_bytes(req) - 4);
  
  	dma_addr_out = pci_map_single(ioc->pcidev, bio_data(req->bio),
- 				      req->data_len, PCI_DMA_BIDIRECTIONAL);
+ 				      blk_rq_bytes(req), PCI_DMA_BIDIRECTIONAL);
  	if (!dma_addr_out)
  		goto put_mf;
 -	mpt_add_sge(psge, flagsLength, dma_addr_out);
 -	psge += (sizeof(u32) + sizeof(dma_addr_t));
 +	ioc->add_sge(psge, flagsLength, dma_addr_out);
 +	psge += ioc->SGE_size;
  
  	/* response */
 -	flagsLength = MPT_SGE_FLAGS_SSIMPLE_READ;
 +	flagsLength = MPI_SGE_FLAGS_SIMPLE_ELEMENT |
 +		MPI_SGE_FLAGS_SYSTEM_ADDRESS |
 +		MPI_SGE_FLAGS_IOC_TO_HOST |
 +		MPI_SGE_FLAGS_END_OF_BUFFER;
 +
 +	flagsLength = flagsLength << MPI_SGE_FLAGS_SHIFT;
- 	flagsLength |= rsp->data_len + 4;
+ 	flagsLength |= blk_rq_bytes(rsp) + 4;
  	dma_addr_in =  pci_map_single(ioc->pcidev, bio_data(rsp->bio),
- 				      rsp->data_len, PCI_DMA_BIDIRECTIONAL);
+ 				      blk_rq_bytes(rsp), PCI_DMA_BIDIRECTIONAL);
  	if (!dma_addr_in)
  		goto unmap;
 -	mpt_add_sge(psge, flagsLength, dma_addr_in);
 +	ioc->add_sge(psge, flagsLength, dma_addr_in);
  
 +	INITIALIZE_MGMT_STATUS(ioc->sas_mgmt.status)
  	mpt_put_msg_frame(mptsasMgmtCtx, ioc, mf);
  
  	timeleft = wait_for_completion_timeout(&ioc->sas_mgmt.done, 10 * HZ);
@@@ -2221,11 -1357,10 +2221,11 @@@
  		smprep = (SmpPassthroughReply_t *)ioc->sas_mgmt.reply;
  		memcpy(req->sense, smprep, sizeof(*smprep));
  		req->sense_len = sizeof(*smprep);
- 		req->data_len = 0;
- 		rsp->data_len -= smprep->ResponseDataLength;
+ 		req->resid_len = 0;
+ 		rsp->resid_len -= smprep->ResponseDataLength;
  	} else {
 -		printk(MYIOC_s_ERR_FMT "%s: smp passthru reply failed to be returned\n",
 +		printk(MYIOC_s_ERR_FMT
 +		    "%s: smp passthru reply failed to be returned\n",
  		    ioc->name, __func__);
  		ret = -ENXIO;
  	}

^ permalink raw reply	[flat|nested] 3+ messages in thread

* linux-next: manual merge of the block tree with the scsi tree
@ 2009-06-10  4:02 Stephen Rothwell
  2009-06-11  6:23 ` Desai, Kashyap
  0 siblings, 1 reply; 3+ messages in thread
From: Stephen Rothwell @ 2009-06-10  4:02 UTC (permalink / raw)
  To: Jens Axboe
  Cc: linux-next, linux-kernel, Kashyap, Desai, James Bottomley, Tejun Heo

Hi Jens,

Today's linux-next merge of the block tree got a conflict in
drivers/message/fusion/mptsas.c between commits
14d0f0b063f5363984dd305a792854f9c23e9e97 ("[SCSI] mpt fusion: Fixing 1078
data corruption issue for 36GB memory region") and
2f187862e579f1f5e883188cab6bd867cb60387f ("[SCSI] mpt fusion: Code
Cleanup patch") from the scsi tree and commit
b0790410300abaaf4f25f702803beff701baebf1 ("block: cleanup rq->data_len
usages") from the block tree.

Just context changes.  I fixed it up (see below) and can carry the fix as
necessary.
-- 
Cheers,
Stephen Rothwell                    sfr@canb.auug.org.au

diff --cc drivers/message/fusion/mptsas.c
index 14c490a,79f5433..0000000
--- a/drivers/message/fusion/mptsas.c
+++ b/drivers/message/fusion/mptsas.c
@@@ -2177,32 -1319,26 +2177,32 @@@ static int mptsas_smp_handler(struct Sc
  	/* request */
  	flagsLength = (MPI_SGE_FLAGS_SIMPLE_ELEMENT |
  		       MPI_SGE_FLAGS_END_OF_BUFFER |
 -		       MPI_SGE_FLAGS_DIRECTION |
 -		       mpt_addr_size()) << MPI_SGE_FLAGS_SHIFT;
 +		       MPI_SGE_FLAGS_DIRECTION)
 +		       << MPI_SGE_FLAGS_SHIFT;
- 	flagsLength |= (req->data_len - 4);
+ 	flagsLength |= (blk_rq_bytes(req) - 4);
  
  	dma_addr_out = pci_map_single(ioc->pcidev, bio_data(req->bio),
- 				      req->data_len, PCI_DMA_BIDIRECTIONAL);
+ 				      blk_rq_bytes(req), PCI_DMA_BIDIRECTIONAL);
  	if (!dma_addr_out)
  		goto put_mf;
 -	mpt_add_sge(psge, flagsLength, dma_addr_out);
 -	psge += (sizeof(u32) + sizeof(dma_addr_t));
 +	ioc->add_sge(psge, flagsLength, dma_addr_out);
 +	psge += ioc->SGE_size;
  
  	/* response */
 -	flagsLength = MPT_SGE_FLAGS_SSIMPLE_READ;
 +	flagsLength = MPI_SGE_FLAGS_SIMPLE_ELEMENT |
 +		MPI_SGE_FLAGS_SYSTEM_ADDRESS |
 +		MPI_SGE_FLAGS_IOC_TO_HOST |
 +		MPI_SGE_FLAGS_END_OF_BUFFER;
 +
 +	flagsLength = flagsLength << MPI_SGE_FLAGS_SHIFT;
- 	flagsLength |= rsp->data_len + 4;
+ 	flagsLength |= blk_rq_bytes(rsp) + 4;
  	dma_addr_in =  pci_map_single(ioc->pcidev, bio_data(rsp->bio),
- 				      rsp->data_len, PCI_DMA_BIDIRECTIONAL);
+ 				      blk_rq_bytes(rsp), PCI_DMA_BIDIRECTIONAL);
  	if (!dma_addr_in)
  		goto unmap;
 -	mpt_add_sge(psge, flagsLength, dma_addr_in);
 +	ioc->add_sge(psge, flagsLength, dma_addr_in);
  
 +	INITIALIZE_MGMT_STATUS(ioc->sas_mgmt.status)
  	mpt_put_msg_frame(mptsasMgmtCtx, ioc, mf);
  
  	timeleft = wait_for_completion_timeout(&ioc->sas_mgmt.done, 10 * HZ);
@@@ -2221,11 -1357,10 +2221,11 @@@
  		smprep = (SmpPassthroughReply_t *)ioc->sas_mgmt.reply;
  		memcpy(req->sense, smprep, sizeof(*smprep));
  		req->sense_len = sizeof(*smprep);
- 		req->data_len = 0;
- 		rsp->data_len -= smprep->ResponseDataLength;
+ 		req->resid_len = 0;
+ 		rsp->resid_len -= smprep->ResponseDataLength;
  	} else {
 -		printk(MYIOC_s_ERR_FMT "%s: smp passthru reply failed to be returned\n",
 +		printk(MYIOC_s_ERR_FMT
 +		    "%s: smp passthru reply failed to be returned\n",
  		    ioc->name, __func__);
  		ret = -ENXIO;
  	}

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2010-07-22  1:56 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-07-22  1:56 linux-next: manual merge of the block tree with the scsi tree Stephen Rothwell
  -- strict thread matches above, loose matches on Subject: below --
2009-06-10  4:02 Stephen Rothwell
2009-06-11  6:23 ` Desai, Kashyap

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.