On 12/16/16 20:40 +0000, Andrew Cooper wrote:
On 16/12/16 13:43, Haozhong Zhang wrote:
+static uint8_t get_cpu_paddr_bits(void)
+{
+ uint8_t paddr_bits = 36;
+ uint32_t eax;
+
+ eax = cpuid_eax(0x80000000);
+ if ( (eax >> 16) == 0x8000 && eax >= 0x80000008 )
+ {
+ eax = cpuid_eax(0x80000008);
+ paddr_bits = eax & 0xff;
+ if ( paddr_bits > 52 )
+ paddr_bits = 52;
+ }
+
+ return paddr_bits;
This is useful core functionality (and I can't believe I haven't
published a test which needs it yet).
Please extend collect_cpuid() and make maxphysaddr and maxvirtaddr
available globally along with the other vendor/family/feature
information, although I'd drop the clipping at 52 bits.
Sure.
Haozhong
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel