Re: [PATCH 2/2] be2iscsi: Moving to pci_pools v3

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

 



Looks OK to me
-Jay

  _____  
From: James Bottomley [mailto:James.Bottomley@xxxxxxx]
To: Mike Christie [mailto:michaelc@xxxxxxxxxxx]
Cc: Jayamohan Kalickal [mailto:jayamohank@xxxxxxxxxxxxxxxxx], linux-scsi@xxxxxxxxxxxxxxx
Sent: Sat, 26 Sep 2009 09:30:22 -0700
Subject: Re: [PATCH 2/2] be2iscsi: Moving to pci_pools v3

On Wed, 2009-09-23 at 12:04 -0500, Mike Christie wrote:
> On 09/21/2009 09:52 PM, Jayamohan Kallickal wrote:
> >   This patch contains changes to use pci_pools for iscsi hdr
> > instead of pci_alloc_consistent. Here we alloc and free to pool
> > for every IO
> >
> > v3:
> > - Remove cleanup loop in beiscsi_session_destroy
> > - Fixup for allocation failure handling in beiscsi_alloc_pdu
> > - Removed unused variable in beiscsi_session_destroy.
> >
> > Signed-off-by: Jayamohan Kallickal<jayamohank@xxxxxxxxxxxxxxxxx>
> 
> Thanks for fixing those issues.
> 
> Reviewed-by: Mike Christie <michaelc@xxxxxxxxxxx>

Actually, this isn't building correctly for me in my 32 bit environment:

drivers/scsi/be2iscsi/be_main.c: In function ‘beiscsi_alloc_pdu’:
drivers/scsi/be2iscsi/be_main.c:2885: warning: passing argument 3 of
‘dma_pool_alloc’ from incompatible pointer type

The problem is this unsigned long long definition of a64: dma_addr_t is
only a long (32 bits) on this platform.

This patch fixes the problem for me ... I'll just fold it in if
everyone's OK with it.

James

---

diff --git a/drivers/scsi/be2iscsi/be_main.c b/drivers/scsi/be2iscsi/be_main.c
index 4299a46..4f1aca3 100644
--- a/drivers/scsi/be2iscsi/be_main.c
+++ b/drivers/scsi/be2iscsi/be_main.c
@@ -2881,13 +2881,15 @@ static int beiscsi_alloc_pdu(struct iscsi_task *task, uint8_t opcode)
 	struct hwi_controller *phwi_ctrlr;
 	itt_t itt;
 	struct beiscsi_session *beiscsi_sess = beiscsi_conn->beiscsi_sess;
+	dma_addr_t paddr;
 
 	io_task->cmd_bhs = pci_pool_alloc(beiscsi_sess->bhs_pool,
-					  GFP_KERNEL,
-					  &io_task->bhs_pa.u.a64.address);
+					  GFP_KERNEL, &paddr);
+
 	if (!io_task->cmd_bhs)
 		return -ENOMEM;
 
+	io_task->bhs_pa.u.a64.address = paddr;
 	io_task->pwrb_handle = alloc_wrb_handle(phba,
 						beiscsi_conn->beiscsi_conn_cid,
 						task->itt);

___________________________________________________________________________________
This message, together with any attachment(s), contains confidential and proprietary information of
ServerEngines Corporation and is intended only for the designated recipient(s) named above. Any unauthorized
review, printing, retention, copying, disclosure or distribution is strictly prohibited.  If you are not the
intended recipient of this message, please immediately advise the sender by reply email message and
delete all copies of this message and any attachment(s). Thank you.

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

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]
  Powered by Linux