Gmane
Favicon
From: H. Peter Anvin <hpa <at> zytor.com>
Subject: New CPUID/MSR driver; virtualization hooks
Newsgroups: gmane.linux.kernel.virtualization
Date: 2007-04-05 00:50:58 GMT (2 years, 13 weeks, 13 hours and 17 minutes ago)
I have finally gotten off the pot and finished writing up my new 
CPUID/MSR driver, which contains support for registers that need 
arbitrary GPRs touched.  For i386 vs x86-64 compatibility, both use an 
x86-64 register image (16 64-bit register fields); this allows 32-bit 
userspace to access the full 64-bit image if the kernel is 64 bits.

Anyway, this presumably requires new paravirtualization hooks.  The 
patch is at:

http://www.kernel.org/pub/linux/kernel/people/hpa/new-cpuid-msr.patch

... and a git tree is at ...

http://git.kernel.org/?p=linux/kernel/git/hpa/linux-2.6-cpuidmsr.git;a=summary

I'm posting this here to give the paravirt maintainers an opportunity to 
comment.  Presumably the functions that need to be paravirtualized are 
the ones represented by the functions do_cpuid(), do_rdmsr() and 
do_wrmsr(): they take a cpu number, an input register image, and an 
output register image, and return either 0 or -EIO (in case of a trap.)

	-hpa