On Tue, 2012-10-16 at 23:34 +0200, Tomas Henzl wrote: > On 10/16/2012 10:59 PM, Mahesh Rajashekhara wrote: > > This patch handles SCSI dma mapping failure case. Reporting error code to the upper layer instead of BUG_ON(). > > > > This patch is created against current upstream kernel. > > > > Signed-off-by: Mahesh Rajashekhara <Mahesh_Rajashekhara@xxxxxxxxxxxxxx> > > --- > > drivers/scsi/aacraid/aachba.c | 63 +++++++++++++++++++++++++++++++--------- > > drivers/scsi/aacraid/aacraid.h | 2 +- > > 2 files changed, 50 insertions(+), 15 deletions(-) > > > > diff --git a/drivers/scsi/aacraid/aachba.c b/drivers/scsi/aacraid/aachba.c > > index d79457a..efa2900 100644 > > --- a/drivers/scsi/aacraid/aachba.c > > +++ b/drivers/scsi/aacraid/aachba.c > > @@ -971,6 +971,7 @@ static int aac_read_raw_io(struct fib * fib, struct scsi_cmnd * cmd, u64 lba, u3 > > { > > struct aac_dev *dev = fib->dev; > > u16 fibsize, command; > > + unsigned long ret; > > > > aac_fib_init(fib); > > if (dev->comm_interface == AAC_COMM_MESSAGE_TYPE2 && !dev->sync_mode) { > > @@ -982,7 +983,10 @@ static int aac_read_raw_io(struct fib * fib, struct scsi_cmnd * cmd, u64 lba, u3 > > readcmd2->byteCount = cpu_to_le32(count<<9); > > readcmd2->cid = cpu_to_le16(scmd_id(cmd)); > > readcmd2->flags = cpu_to_le16(RIO2_IO_TYPE_READ); > > - aac_build_sgraw2(cmd, readcmd2, dev->scsi_host_ptr->sg_tablesize); > > + ret = aac_build_sgraw2(cmd, readcmd2, > > + dev->scsi_host_ptr->sg_tablesize); > > + if (ret < 0) > > + return ret; > > Hi Mahesh, 'ret' is 'unsigned', the above test will not work. > Tomas Ping on this please Mahesh? The criticism seems completely valid to me. James ��.n��������+%������w��{.n�����{������ܨ}���Ơz�j:+v�����w����ޙ��&�)ߡ�a����z�ޗ���ݢj��w�f