mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-01 14:53:54 -06:00
target-i386: Add PKU and and OSPKE support
Add PKU and OSPKE CPUID features, including xsave state and migration support. Signed-off-by: Huaitong Han <huaitong.han@intel.com> Reviewed-by: Eduardo Habkost <ehabkost@redhat.com> [ehabkost: squashed 3 patches together, edited patch description] Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
This commit is contained in:
parent
36f96c4b6b
commit
f74eefe0b9
4 changed files with 56 additions and 1 deletions
|
@ -848,6 +848,27 @@ static const VMStateDescription vmstate_xss = {
|
|||
}
|
||||
};
|
||||
|
||||
#ifdef TARGET_X86_64
|
||||
static bool pkru_needed(void *opaque)
|
||||
{
|
||||
X86CPU *cpu = opaque;
|
||||
CPUX86State *env = &cpu->env;
|
||||
|
||||
return env->pkru != 0;
|
||||
}
|
||||
|
||||
static const VMStateDescription vmstate_pkru = {
|
||||
.name = "cpu/pkru",
|
||||
.version_id = 1,
|
||||
.minimum_version_id = 1,
|
||||
.needed = pkru_needed,
|
||||
.fields = (VMStateField[]){
|
||||
VMSTATE_UINT32(env.pkru, X86CPU),
|
||||
VMSTATE_END_OF_LIST()
|
||||
}
|
||||
};
|
||||
#endif
|
||||
|
||||
static bool tsc_khz_needed(void *opaque)
|
||||
{
|
||||
X86CPU *cpu = opaque;
|
||||
|
@ -991,6 +1012,9 @@ VMStateDescription vmstate_x86_cpu = {
|
|||
&vmstate_avx512,
|
||||
&vmstate_xss,
|
||||
&vmstate_tsc_khz,
|
||||
#ifdef TARGET_X86_64
|
||||
&vmstate_pkru,
|
||||
#endif
|
||||
NULL
|
||||
}
|
||||
};
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue