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

[Xen-devel] Re: Making pages writable again in paging_log_dirty mode


  • To: xen-devel@xxxxxxxxxxxxxxxxxxx
  • From: "Mike Sun" <msun@xxxxxxxxxx>
  • Date: Fri, 19 Dec 2008 16:08:01 -0500
  • Delivery-date: Fri, 19 Dec 2008 13:08:30 -0800
  • Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:sender:to:subject:in-reply-to:mime-version :content-type:content-transfer-encoding:content-disposition :references:x-google-sender-auth; b=RsPlkUfm74uoZ/jHhXQbQMVTh3sHvOxei5LuYpMUCJfffPj2C1a6Mmshe1t4d9tqBd D6EQCMdF2ujI/Ihc2Qhwuk41ilxgCKIrWqk6dP/DlFluLHo55oufNE0numJ64IAg76X5 YviLp/dv/aSdBwsE95m6Kt4djtjyrRrCyCGug=
  • List-id: Xen developer discussion <xen-devel.lists.xensource.com>

> Unfortunately, I get errors about page_type_count
> overflows and other kinds of type errors.

I forgot to mention that I'm ending up here:

int get_page_type(struct page_info *page, unsigned long type)
{
...
        nx = x + 1;
        if ( unlikely((nx & PGT_count_mask) == 0) )
        {
            MEM_LOG("Type count overflow on pfn %lx", page_to_mfn(page));
            return 0;
        }

Not sure how I'm ending up with a -1 type count.  I noticed this code
in "get_page_from_l1e()":

/* Foreign mappings into guests in shadow external mode don't
     * contribute to writeable mapping refcounts.  (This allows the
     * qemu-dm helper process in dom0 to map the domain's memory without
     * messing up the count of "real" writable mappings.) */
    okay = (((l1f & _PAGE_RW) &&
             !(unlikely(paging_mode_external(d) && (d != curr->domain))))
            ? get_page_and_type(page, d, PGT_writable_page)
            : get_page(page, d));

I believe since I'm trying to make writable pages of an HVM guest
domain from dom0 in log_dirty_mode, I'm going to end up just doing the
get_page() instead of the get_page_and_type().  Is this my problem?

Thanks,
Mike

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

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