|
|
|
|
|
|
|
|
|
|
xen-devel
Re: [Xen-devel] [PATCH 07/16] xenpaging: populate only paged-out pages
On Tue, Nov 09, Olaf Hering wrote:
> The other thing is that p2m_mem_paging_populate must only invalidate the
> mfn if either the page is still in the process of being paged out, or if
> the page is already in the process of being paged in. The latter does
> not happen right now. The result is that the page may have state
> p2m_ram_paging_in and a new valid mfn. Then that new mfn is invalidated,
> the gfn content in the xenpaging process was already overwritten and
> there is no wakeup of the vcpu. This situation is not recoverable.
> p2m.c:p2m_mem_paging_populate needs a change to no call set_p2m_entry if
> the p2mt state is already p2m_ram_paging_in
And even this is not perfect.
p2m_mem_paging_populate() could be called again even if the p2m state was
just set to p2m_ram_rw in p2m_mem_paging_resume(). In this case the thread who
calls
p2m_mem_paging_populate() cant make any progress anymore.
So in the end, p2m_mem_paging_populate() can only invalidate the mfn if
the p2mt happens to be p2m_ram_paged.
Olaf
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
|
|
|
|