[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] write page table in user mode

At 15:58 +0000 on 02 Feb (1201967880), Keir Fraser wrote:
> > It's said to be a forward progress issue, that instruction page of faulting
> > IP falls into mapped virtual range by same L1 as the target frame it tries
> > to update. So the implication is that the unshadow unfortunately
> > succeeds. 

Do you mean that the guest instruction stream is changing the VM mapping
of the page under %eip, from user-space?  Wow.

> Ugh, it would be much nicer to remove the unshadow-on-user-access heuristic
> entirely.  We just need to do enough testing to ensure it doesn't harm
> performance in other cases we care about. I really don't know how much we
> rely on that heuristic these days.

Nor do I (since as Kevin points out we don't count this separately) but
with the increasing completeness of the emulator, we've already lost a
lot of heuristics for unshadowing pages -- this is what the
unshadow-after-three-writes heuristic is trying to fix, for example.  It
seems odd to be making the unshadowing more aggressive with one hand and
less aggressive with the other.

> If we can show good performance without
> it then I'm happy to remove it (if Tim also agrees).

There'll need to be an audit of the rest of the emulate callbacks, which
were written with the assumption that they know the'yre not in ring 3 --
for example the pagefault error codes used in PT walks will be wrong.



Tim Deegan <Tim.Deegan@xxxxxxxxxx>
Principal Software Engineer, Citrix Systems (R&D) Ltd.
[Company #02300071, SL9 0DZ, UK.]

Xen-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.