On 11/05/18 18:18, Andrew Cooper wrote:
> On 11/05/18 15:48, Paul Durrant wrote:
>> The response to viridian leaf 3 needs to split a 64-bit mask across EAX and
>> EBX, with the low order 32 bits in EAX and the high order 32 bits in EBX.
>> To facilitate this a union of two uint32_t values and the mask (type
>> HV_PARTITION_PRIVILEGE_MASK) is allocated on stack as follows:
>>
>> union {
>>     HV_PARTITION_PRIVILEGE_MASK mask;
>>     uint32_t lo, hi;
>> } u;
>>
>> This, of course, is incorrect as both lo and hi will alias the low order
>> 32 bits of the mask.
>>
>> This patch wraps lo and hi in an anonmymous struct to achieve the desired
>> effect.
>>
>> NOTE: Fixing this also stops Windows making the HvGetPartitionId hypercall
>>       which was previously considered erroneous behaviour. Thus the
>>       hypercall handler is also modified to stop squashing the
>>       'unimplemented' warning for this hypercall.
>>
>> Signed-off-by: Paul Durrant <[email protected]>
> 
> Acked-by: Andrew Cooper <[email protected]>
> 
> CC Juergen.  This wants backporting, and taking into 4.11

Release-acked-by: Juergen Gross <[email protected]>


Juergen

_______________________________________________
Xen-devel mailing list
[email protected]
https://lists.xenproject.org/mailman/listinfo/xen-devel

Reply via email to