|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH] x86/mm/shadow: spurious warning when unmapping xenheap pages.
On 28/03/13 10:35, Tim Deegan wrote:
> Xenheap pages will always have an extra typecount, taken in
> share_xen_page_with_guest(), which doesn't come from a shadow PTE.
> Adjust the warning in sh_remove_all_mappings() to account for it.
>
> Reported-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
> Signed-off-by: Tim Deegan <tim@xxxxxxx>
Tested-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
> ---
> xen/arch/x86/mm/shadow/common.c | 7 +++++--
> 1 file changed, 5 insertions(+), 2 deletions(-)
>
> diff --git a/xen/arch/x86/mm/shadow/common.c b/xen/arch/x86/mm/shadow/common.c
> index 4b576ac..adffa06 100644
> --- a/xen/arch/x86/mm/shadow/common.c
> +++ b/xen/arch/x86/mm/shadow/common.c
> @@ -2437,10 +2437,13 @@ int sh_remove_all_mappings(struct vcpu *v, mfn_t gmfn)
> {
> /* Don't complain if we're in HVM and there are some extra mappings:
> * The qemu helper process has an untyped mapping of this dom's RAM
> - * and the HVM restore program takes another. */
> + * and the HVM restore program takes another.
> + * Also allow one typed refcount for xenheap pages, to match
> + * share_xen_page_with_guest(). */
> if ( !(shadow_mode_external(v->domain)
> && (page->count_info & PGC_count_mask) <= 3
> - && (page->u.inuse.type_info & PGT_count_mask) == 0) )
> + && ((page->u.inuse.type_info & PGT_count_mask)
> + == !!is_xen_heap_page(page))) )
> {
> SHADOW_ERROR("can't find all mappings of mfn %lx: "
> "c=%08lx t=%08lx\n", mfn_x(gmfn),
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |