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

Re: [Xen-devel] [PATCH v4 1/8] x86: NOP out XPTI entry/exit code when it's not in use



>>> On 04.04.18 at 08:07, <jgross@xxxxxxxx> wrote:
> On 03/04/18 19:48, Juergen Gross wrote:
>> On 19/03/18 14:37, Jan Beulich wrote:
>>> Introduce a synthetic feature flag to use alternative instruction
>>> patching to NOP out all code on entry/exit paths. Having NOPs here is
>>> generally better than using conditional branches.
>>>
>>> Also change the limit on the number of bytes we can patch in one go to
>>> that resulting from the encoding in struct alt_instr - there's no point
>>> reducing it below that limit, and without a check being in place that
>>> the limit isn't actually exceeded, such an artificial boundary is a
>>> latent risk.
>>>
>>> Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx>
>> 
>> Just did a parallel make of the hypervisor with and without the patch,
>> with xpti=true and with xpti=false (values in braces are stddev).
> 
> The unpatched version was configured differently than the patched one.
> So the real numbers are:
> 
>                        elapsed         system          user
> unpatched, xpti=false:  89.96 ( 8.07)   97.05 ( 5.69)  178.64 ( 2.39)
> unpatched, xpti=true : 113.42 ( 9.80)  165.99 (15.10)  180.99 ( 2.66)
> patched,   xpti=false:  90.65 ( 6.63)   99.50 (14.79)  180.35 ( 5.97)
> patched,   xpti=true : 111.69 ( 9.93)  163.63 (13.05)  181.22 ( 3.71)
> 
> So the XPTI case is a little bit faster with the patch, while the
> non-XPTI case is a little bit slower.

That's rather counterintuitive a result.

Jan


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/xen-devel

 


Rackspace

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