Re: ibmvfc oddities

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

 



On 09/21/2017 08:29 PM, Tyrel Datwyler wrote:
> On 09/21/2017 08:13 AM, Brian King wrote:
>> On 09/21/2017 05:02 AM, Hannes Reinecke wrote:
>>> Hi Brian,
>>>
>>> I was looking at the ibmvfc code (trying to hook up libfc), and have
>>> found this definition:
>>>
>>> struct ibmvfc_fcp_rsp_info {
>>> 	__be16 reserved;
>>> 	u8 rsp_code;
>>> 	u8 reserved2[4];
>>> }__attribute__((packed, aligned (2)));
>>>
>>> in comparison, libfc has this:
>>>
>>> struct fcp_resp_rsp_info {
>>>     __u8      _fr_resvd[3];       /* reserved */
>>>     __u8      rsp_code;           /* Response Info Code */
>>>     __u8      _fr_resvd2[4];      /* reserved */
>>> };
>>>
>>> So both look _nearly_ identical, except the missing byte at the start.
>>> It might be inserted due to some compile alignment magic, but I'd rather
>>> not rely on this.
>>> Could you clarify if the two structures really are different, or if this
>>> is a simple oversight?
>>
>> Looks like a bug to me. We should probably just have ibmvfc use the
>> libfc definition.
> 
> Yes, after looking at the FC spec we most definitely have it defined wrong, and I'm pretty
> certain that we aren't getting saved by any compiler magic.
> 
>>
>> Tyrel - can you do this conversion and run a bit of regression testing?
>> Looking at the possible values of rsp_code, the most likely place where
>> this might cause us some issues is in TMF handling. I'm a little
>> worried this could result in a potential double completion in error
>> handling in some rare cases.... Tyrel - are you aware of any issues
>> like that, which this might explain?
> 
> I certainly can. I recollect something like a double completion issue, but its been so
> long I can't remember if we were seeing it in the vfc driver or the vscsi driver. Anyhow,
> I do feel like from what I recall it seems like rsp_code is always zero in reported error
> messages.
> 
Sure it would, given that the ibmvfc driver would always use the
reserved bytes as rsp_code :-)

Cheers,

Hannes
-- 
Dr. Hannes Reinecke		   Teamlead Storage & Networking
hare@xxxxxxx			               +49 911 74053 688
SUSE LINUX GmbH, Maxfeldstr. 5, 90409 Nürnberg
GF: F. Imendörffer, J. Smithard, J. Guild, D. Upmanyu, G. Norton
HRB 21284 (AG Nürnberg)



[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