Re: [patch 6/6] Guest page hinting: s390 support.

From: Martin Schwidefsky
Date: Thu Mar 13 2008 - 05:32:44 EST


On Wed, 2008-03-12 at 15:04 -0500, Anthony Liguori wrote:
> Jeremy Fitzhardinge wrote:
> >> With stable_if_clean you are refering to stable_if_present?
> >
> > No. I misunderstood and thought that stable_if_present sets the Px
> > state. I'd overlooked the writable flag on page_set_volatile().
> >
> >> If yes the
> >> answer is that this operation is used to get a page from Vx/Px back to
> >> Sx but only if the page has not been discarded.
> >
> > So you mean it will change Vr/Pr to Sr but everything else will fail?

In the extended version Vp/Pp to Sr as well but the current z/VM code
will discard a page if the host picks a Vr/Pr page to swap it.

> Well presumably Vp/Pr => Sp? Is is true that from the guest's
> perspective, all of the 'p' states are identical to the 'r' states?

Basically yes. The guest doesn't care about the host state.

> Do the host states even really need visibility to the guest at all? It
> may be useful for the guest to be able to distinguish between Ur and Uz
> but it doesn't seem necessary.

It is very useful for debugging to have the host state in the guest as
well. There is one possible optimization: if the guests finds a Uz page
in the free list, it can make it Sz and doesn't have to clear it because
the host will provide an already empty page (not yet implemented
though).

> BTW Jeremy, the .dot was very useful!

I've search on my disk and found the state diagrams we've used for the
OLS paper. You may find these useful as well.

--
blue skies,
Martin.

"Reality continues to ruin my life." - Calvin.

Attachment: states.dia
Description: application/dia-diagram

Attachment: states-simple.dia
Description: application/dia-diagram