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

Re: [Xen-devel] struct blkif_request_segment_aligned



>>> On 04.02.14 at 09:20, Roger Pau MonnÃ<roger.pau@xxxxxxxxxx> wrote:
> On 03/02/14 12:36, Jan Beulich wrote:
>>>>> On 03.02.14 at 10:40, Ian Campbell <Ian.Campbell@xxxxxxxxxx> wrote:
>>> On Fri, 2014-01-31 at 12:04 +0000, Jan Beulich wrote:
>>>> Roger,
>>>>
>>>> so you introduced this, yet looking in a little closer detail I can't seem
>>>> to understand why: struct blkif_request_segment is identical in layout,
>>>> the sole difference between the two is that in the new structure the
>>>> padding field has a name, whereas in the old one it doesn't.
>>>
>>> Is this something to do with Linux' use of __attribute__((packed)) once
>>> again causing confusion? (I really hope not API deviation...)
>> 
>> Yes, I think it has to do with Linux'es way of defining these
>> structures: My assumption is that the embedded (but not such
>> attributed) definition of struct blkif_request_segment inside struct
>> struct blkif_request_rw was assumed to also be packed (which it
>> isn't, or else upstream Linux front-/backends wouldn't work with
>> other back-/frontends), thus apparently making it necessary to
>> have an "aligned" (i.e. un-packed) variant thereof.
> 
> Yes, this is my fault for wrongly assuming struct blkif_request_segment
> inside struct blkif_request_rw was also packed, which it is not (or else
> it would break with non Linux backends). Thanks for sending the Xen side
> patch, I will take care of the Linux side if it's fine with you.

Please do.

Jan

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.