From: Julien Grall <julien.grall@linaro.org>
To: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Cc: julien.grall@citrix.com, xen-devel@lists.xensource.com,
Ian.Campbell@citrix.com
Subject: Re: [PATCH v2 1/2] xen: introduce arch_iommu_grant_(un)map_page
Date: Thu, 24 Jul 2014 12:14:47 +0100 [thread overview]
Message-ID: <53D0EAA7.6090008@linaro.org> (raw)
In-Reply-To: <alpine.DEB.2.02.1407241203440.2293@kaball.uk.xensource.com>
On 24/07/14 12:07, Stefano Stabellini wrote:
> On Thu, 24 Jul 2014, Julien Grall wrote:
>> Hi Stefano,
>>
>> The Title of the commit message is now wrong.
>
> Thanks, I didn't notice.
>
>
>> On 23/07/14 18:19, Stefano Stabellini wrote:
>>> Introduce two arch specific functions to create a new p2m mapping of
>>> granted pages at pfn == mfn.
>>> The x86 implementation just returns ENOSYS.
>>>
>>> Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
>>> ---
>>> xen/arch/arm/p2m.c | 19 +++++++++++++++++++
>>> xen/include/asm-arm/p2m.h | 4 ++++
>>> xen/include/asm-x86/p2m.h | 13 +++++++++++++
>>> 3 files changed, 36 insertions(+)
>>>
>>> diff --git a/xen/arch/arm/p2m.c b/xen/arch/arm/p2m.c
>>> index 9960e17..c38af59 100644
>>> --- a/xen/arch/arm/p2m.c
>>> +++ b/xen/arch/arm/p2m.c
>>> @@ -555,6 +555,25 @@ void guest_physmap_remove_page(struct domain *d,
>>> pfn_to_paddr(mfn), MATTR_MEM, p2m_invalid);
>>> }
>>>
>>> +int arch_grant_map_page_identity(struct domain *d, unsigned long frame,
>>> + bool_t writeable)
>>> +{
>>> + p2m_type_t t;
>>> +
>>> + if ( writeable )
>>> + t = p2m_ram_rw;
>>> + else
>>> + t = p2m_ram_ro;
>>
>> This is not the right p2m type to use here. p2m_ram_{rw,ro} allow foreign
>> mapping. So another guest could access to the grant.
>>
>> I would use p2m_iommu_map_{rw,ro}.
>
>
> I see. I'll make the change and add a comment to explain why we are
> using p2m_iommu types for non-iommu related mappings.
The code to add the 1:1 mapping for the SMMU is very ugly. I was
wondering if we could drop the iommu_map_page callback and
directly use arch_grant_map_page_identity in all the case.
It would avoid the if/else in the grant code.
Regards,
--
Julien Grall
next prev parent reply other threads:[~2014-07-24 11:14 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-07-23 17:18 [PATCH v2 0/2] map grant refs at pfn = mfn Stefano Stabellini
2014-07-23 17:19 ` [PATCH v2 1/2] xen: introduce arch_iommu_grant_(un)map_page Stefano Stabellini
2014-07-24 10:51 ` Julien Grall
2014-07-24 11:07 ` Stefano Stabellini
2014-07-24 11:14 ` Julien Grall [this message]
2014-07-24 11:16 ` Stefano Stabellini
2014-07-24 11:18 ` Julien Grall
2014-07-24 11:19 ` Stefano Stabellini
2014-07-23 17:19 ` [PATCH v2 2/2] xen/arm: introduce XENFEAT_grant_map_identity Stefano Stabellini
2014-07-24 6:48 ` Jan Beulich
2014-07-24 10:47 ` Stefano Stabellini
2014-07-24 11:58 ` Jan Beulich
2014-07-24 6:37 ` [PATCH v2 0/2] map grant refs at pfn = mfn Jan Beulich
2014-07-24 9:31 ` Tim Deegan
2014-07-24 10:28 ` Stefano Stabellini
2014-07-24 10:42 ` Tim Deegan
2014-07-24 10:55 ` Ian Campbell
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=53D0EAA7.6090008@linaro.org \
--to=julien.grall@linaro.org \
--cc=Ian.Campbell@citrix.com \
--cc=julien.grall@citrix.com \
--cc=stefano.stabellini@eu.citrix.com \
--cc=xen-devel@lists.xensource.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).