WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

Re: [Xen-devel] pvops DomU kernels [was Re: "Hotplug Scripts not working

To: Keir Fraser <keir.fraser@xxxxxxxxxxxxx>
Subject: Re: [Xen-devel] pvops DomU kernels [was Re: "Hotplug Scripts not working ..." error on jaunty]
From: Jeremy Fitzhardinge <jeremy@xxxxxxxx>
Date: Fri, 23 Oct 2009 13:58:37 -0700
Cc: Boris Derzhavets <bderzhavets@xxxxxxxxx>, Xen-devel <xen-devel@xxxxxxxxxxxxxxxxxxx>, Dulloor <dulloor@xxxxxxxxx>, "Marc - A. Dahlhaus" <mad@xxxxxx>
Delivery-date: Fri, 23 Oct 2009 13:59:08 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <C707D52B.183D7%keir.fraser@xxxxxxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <C707D52B.183D7%keir.fraser@xxxxxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.4pre) Gecko/20091014 Fedora/3.0-2.8.b4.fc11 Lightning/1.0pre Thunderbird/3.0b4
On 10/23/09 13:48, Keir Fraser wrote:
> On 23/10/2009 21:37, "Jeremy Fitzhardinge" <jeremy@xxxxxxxx> wrote:
>
>   
>> Its not at all clear to me what Xen is objecting to here.  There are a
>> few paths where it can end up at could_not_pin in get_page_from_l1e(),
>> but I don't know which one is happening here.  I think it's the "if (
>> unlikely(real_pg_owner != pg_owner) )" conditional, but I don't know
>> what real_pg_owner means here.
>>
>> Keir?
>>     
> If you fail that test it means that the page does not belong to the domain
> that the caller expected. In most cases, that means it was expected to
> belong to the domain making the hypercall, but actually it does not belong
> to it.

The domain is calling update_va_mapping() on itself, and everything
seems to be owned by the domain:

(XEN) mm.c:840:d33 Error getting mfn 18c3 (pfn 21603) from L1 entry 
80000000018c3061 for l1e_owner=33, pg_owner=33

The three paths that lead to could_not_pin are:

    if ( real_pg_owner == NULL )
        goto could_not_pin;
...
    if ( unlikely(real_pg_owner != pg_owner) )
    {
        if ( (pg_owner == l1e_owner) || !IS_PRIV_FOR(pg_owner, real_pg_owner) )
            goto could_not_pin;
        pg_owner = real_pg_owner;
    }

and

    if ( (l1f & _PAGE_RW) &&
         ((l1e_owner == pg_owner) || !paging_mode_external(pg_owner)) &&
         !get_page_type(page, PGT_writable_page) )
        goto could_not_pin;

The pte doesn't have RW set, so it must be one of the first two.
Could it be read_pg_owner == NULL?

        J


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