|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: Help with Understanding vcpu xstate restore error during vm migration
Hi Andrew,
>> I was able to locate the failure point to the file
>> xen/arch/x86/domctl.c with the following check.
>>
>> if( evc->size<PV_XSAVE_HDR_SIZE||
>> evc->size>PV_XSAVE_SIZE(xfeature_mask) )
>> gotovcpuextstate_out;
>
> It is certainly more complicated than that.
>
> What that's saying is that Xen doesn't think that the size of the blob
> matches expectations. That said - I'm in the middle of rewriting this
> logic because lots of it is subtly wrong.
Following from the check above, I have this other check in the same code block.
if ( evc->size == PV_XSAVE_HDR_SIZE )
; /* Nothing to restore. */
else if ( evc->size < PV_XSAVE_HDR_SIZE + XSTATE_AREA_MIN_SIZE )
ret = -EINVAL; /* Can't be legitimate data. */
else if ( xsave_area_compressed(_xsave_area) )
ret = -EOPNOTSUPP; /* Don't support compressed data. */
else if ( evc->size != PV_XSAVE_SIZE(_xcr0_accum) )
ret = -EINVAL; /* Not legitimate data. */
What do you consider here as legitimate / non-legitimate data ?
>
> ~Andrew
Caleb
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |