Subject: Re: bad effect of keeping page table mapped in user space ?
To: Andrew Doran <firstname.lastname@example.org>
From: Manuel Bouyer <email@example.com>
Date: 11/27/2007 18:26:39
On Tue, Nov 27, 2007 at 05:10:10PM +0000, Andrew Doran wrote:
> On Tue, Nov 27, 2007 at 12:35:46AM +0100, Manuel Bouyer wrote:
> > the hypervisor switches address spaces on kernel entry/exit, and
> > %cr3 never points to a user page table when in kernel, and vice-versa.
> It reloads %cr3 on every syscall?
AFAIK, yes. And, from what I understood, on amd64 a syscall goes down
to the hypervisor, which then does a callback to the guest's kernel.
On i386, a gate from ring 3 to ring 1 is used.
> Does the hypervisor provide an alternative
> method that can be used?
Not that I know ...
Manuel Bouyer <firstname.lastname@example.org>
NetBSD: 26 ans d'experience feront toujours la difference