On 26/09/18 11:32, Julien Grall wrote:
> Hi,
>
> On 09/26/2018 10:14 AM, Paul Durrant wrote:
>>> -----Original Message-----
>>> From: Jan Beulich [mailto:jbeul...@suse.com]
>>> Sent: 26 September 2018 09:09
>>> To: Julien Grall <julien.gr...@arm.com>; Paul Durrant
>>> <paul.durr...@citrix.com>
>>> Cc: Andrew Cooper <andrew.coop...@citrix.com>; Roger Pau Monne
>>> <roger....@citrix.com>; Stefano Stabellini <sstabell...@kernel.org>;
>>> xen-
>>> devel <xen-devel@lists.xenproject.org>
>>> Subject: Re: IOREQ server on Arm
>>>
>>>>>> On 26.09.18 at 00:39, <julien.gr...@arm.com> wrote:
>>>> Hi Paul,
>>>>
>>>> I am looking at porting the IOREQ server infrastructure on Arm. I
>>>> didn't
>>>> need much modification to make it run for Arm. Although, the
>>>> implementation could be simplified over the x86 implementation.
>>>>
>>>> I noticed some issue while trying to implement the hypercall
>>>> XENMEM_acquire_resource. Per my understanding, all the page mapped via
>>>> that hypercall will use the type p2m_mapping_foreign.
>>>>
>>>> This will result to trigger the ASSERT(fdom != dom) in
>>>> get_page_from_gfn
>>>> (asm-arm/p2m.h) because the IOREQ page has been allocated to the
>>>> emulator domain and mapped to it. AFAICT x86 has the same assert in
>>>> p2m_get_page_from_gfn(...).
>>>>
>>>> IHMO, the ASSERT makes sense because you are only meant to map page
>>>> belonging to other domain with that type.
>>>>
>>>> So I am wondering whether IOREQ server running in PVH Dom0 has been
>>>> tested? What would be the best course of action to fix the issue?
>>>
>>> I think the p2m type needs to be chosen based on
>>> XENMEM_rsrc_acq_caller_owned.
>>>
>>
>> Yes, that's correct. There is a FIXME clause in acquire_resource so
>> that that only caller owned resources can be mapped by HVM/PVH
>> domains. Thus the new call can be used for IOREQ server pages, but
>> not grant frames.
>
> I don't understand your last sentence. IOREQ is caller owned and
> therefore should work.
>
> As I said, I don't have any problem with mapping the resource. The
> problem is when unmapping it because the region is set with
> p2m_mapping_foreign. You will reach the ASSERT(fdom != p2m->domain) in
> p2m_get_page_from_gfn.
>
> Regardless the reference problem (we support it on Arm). Can you
> explain how this is working on PVH Dom0 today?

I doubt anyone has tried using it with a PVH Dom0.

~Andrew

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

Reply via email to