|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH 8/9] vm_event: Add vm_event_ng interface
>>> On 06.06.19 at 15:48, <ppircalabu@xxxxxxxxxxxxxxx> wrote:
> On Thu, 2019-06-06 at 02:37 -0600, Jan Beulich wrote:
>> In which case maybe use vmalloc() and then assign_pages()?
>> Jan
> Unfortunately I wasn't able to make it work:
> I replaced the buffer allocation with this code:
> ....
> impl->slots = vzalloc(impl->nr_frames * PAGE_SIZE);
> if ( !impl->slots )
> return -ENOMEM;
>
> for ( i = 0; i < impl->nr_frames; i++ )
> {
> impl->mfn[i] = vmap_to_mfn(impl->slots + i * PAGE_SIZE);
> if ( assign_pages(current->domain, mfn_to_page(impl->mfn[i]),
> 0, 0/*MEMF_no_refcount*/ ) )
Who is current->domain at this point?
> {
> printk("%s: assign_pages returned error\n", __func__);
> }
> }
> ...
> And the error is similar with the one without assign_pages:
> ....
> (XEN) mm.c:1015:d0v4 pg_owner d1 l1e_owner d0, but real_pg_owner d0
> (XEN) mm.c:1091:d0v4 Error getting mfn 60deaf (pfn ffffffffffffffff)
> from L1 entry 800000060deaf227 for l1e_owner d0, pg_owner d1
This looks to be an attempt by Dom0 to map a page into its own
page tables which it believes to be owned by Dom1. This would
imply that current->domain above is also Dom1. I would instead
have expected this to be a Dom0-owned page, in which case you
shouldn't specify Dom1 to be the supposed owner of it in the
mapping request.
Jan
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |