-----Original Message----- From: James Bottomley [mailto:James.Bottomley@xxxxxxxxxxxxxxxxxxxxx] Sent: Wednesday, March 07, 2012 6:13 AM To: Nandigama, Nagalakshmi Cc: stable@xxxxxxxxxxxxxxx; linux-scsi Subject: Re: [RESEND PATCH] mptsas: Fixed code to check whether the LU type is SSC or not for SILI bit in READ_6 and READ_16 CDB On Tue, 2012-03-06 at 12:16 +0530, nagalakshmi.nandigama@xxxxxxx wrote: >> This SILI bit (suppress incorrect length indicator) is defined only for SSC >> READ(6) and READ(16) commands. For other device types bit is part of LBA >This isn't right ... it is for READ(6) but it's FUA_NV for >READ(10,12,16) on block devices. For READ6, READ16 SSC commands, the BIT 1of BYTE 2 is SILI. (As per SSC4 specs) For block commands, the BIT 1of BYTE 2 is part of LBA for READ6 and FUA_NV bit for READ(10,12,16). So it is required to check whether the logical unit is SSC device or not when checking SILI bit. So in the patch which I sent, I added this piece of code. >> field. In the current implementation, it is not checked whether the logical >> unit is a SSC device. >> >> >> Added code for checking the LU type is SSC for SILI bit in READ_6 and READ_16 CDB >I still don't have a description of what you think the actual bug is. > >I think the problem is that strict block length checking is accidentally >turned off if FUA_NV is set on a block device (which currently doesn't >happen in practise ... nor do we ever really use READ_6 for block >devices) ... is that it? >James Regards, Nagalakshmi ��.n��������+%������w��{.n�����{������ܨ}���Ơz�j:+v�����w����ޙ��&�)ߡ�a����z�ޗ���ݢj��w�f