>>> On 13.03.17 at 14:24, wrote:
> On 13/03/17 13:05, Jan Beulich wrote:
> On 13.03.17 at 13:51, wrote:
>>> On 13/03/17 12:03, Jan Beulich wrote:
>>> On 10.03.17 at 17:27, wrote:
> @@ -242,6 +243,25 @@ static void __init calculate_raw_policy(void)
> cpuid_leaf(i, &p->bas
On 13/03/17 13:05, Jan Beulich wrote:
On 13.03.17 at 13:51, wrote:
>> On 13/03/17 12:03, Jan Beulich wrote:
>> On 10.03.17 at 17:27, wrote:
@@ -242,6 +243,25 @@ static void __init calculate_raw_policy(void)
cpuid_leaf(i, &p->basic.raw[i]);
}
+
>>> On 13.03.17 at 13:51, wrote:
> On 13/03/17 12:03, Jan Beulich wrote:
> On 10.03.17 at 17:27, wrote:
>>> @@ -242,6 +243,25 @@ static void __init calculate_raw_policy(void)
>>> cpuid_leaf(i, &p->basic.raw[i]);
>>> }
>>>
>>> +if ( p->basic.max_leaf >= 4 )
>>> +{
>>> +
On 13/03/17 12:03, Jan Beulich wrote:
On 10.03.17 at 17:27, wrote:
>> Leaf 0x4 is reserved by AMD. For Intel, it is a multi-invocation leaf with
>> ecx enumerating different cache details.
>>
>> Add a new union for it in struct cpuid_policy, collect it from hardware in
>> calculate_raw_polic
>>> On 10.03.17 at 17:27, wrote:
> Leaf 0x4 is reserved by AMD. For Intel, it is a multi-invocation leaf with
> ecx enumerating different cache details.
>
> Add a new union for it in struct cpuid_policy, collect it from hardware in
> calculate_raw_policy(), audit it in recalculate_cpuid_policy()
Leaf 0x4 is reserved by AMD. For Intel, it is a multi-invocation leaf with
ecx enumerating different cache details.
Add a new union for it in struct cpuid_policy, collect it from hardware in
calculate_raw_policy(), audit it in recalculate_cpuid_policy() and update
guest_cpuid() and update_domain_