• David Vrabel's avatar
    xen/x86: avoid updating TLS descriptors if they haven't changed · 1c32cdc6
    David Vrabel authored
    When switching tasks in a Xen PV guest, avoid updating the TLS
    descriptors if they haven't changed.  This improves the speed of
    context switches by almost 10% as much of the time the descriptors are
    the same or only one is different.
    
    The descriptors written into the GDT by Xen are modified from the
    values passed in the update_descriptor hypercall so we keep shadow
    copies of the three TLS descriptors to compare against.
    
    lmbench3 test     Before  After  Improvement
    --------------------------------------------
    lat_ctx -s 32 24   7.19    6.52  9%
    lat_pipe          12.56   11.66  7%
    Signed-off-by: default avatarDavid Vrabel <david.vrabel@citrix.com>
    Signed-off-by: default avatarKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>
    1c32cdc6
enlighten.c 37.5 KB