KVM: x86: get/set CPL separately from CS

KVM used to assume that CS.RPL could always be used as the CPL
value when KVM_SET_SREGS is called.  QEMU could call KVM_GET_SREGS
and the KVM_SET_SREGS exactly after CR0.PE has been set to 1,
but before the long jump that reloads CS.  Then, KVM would reset
the CPL to bits 0-1 of CS (aka CS.RPL).

To avoid this change, KVM introduced a capability that repurposes
a padding byte in struct kvm_segment as the CPL.  Detect this
capability and, if it is present, enable it; then get/set the CPL
together with CS.

The CPL is already migrated separately, as part of hflags.  However,
the migrated value might be wrong and we need to fix it up in
the post_load callback.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>