All of lore.kernel.org
 help / color / mirror / Atom feed
From: Penny Zheng <Penny.Zheng@arm.com>
To: xen-devel@lists.xenproject.org
Cc: wei.chen@arm.com, Penny Zheng <Penny.Zheng@arm.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Penny Zheng <penny.zheng@arm.com>
Subject: [PATCH v4 6/8] xen/arm: set up shared memory foreign mapping for borrower domain
Date: Tue, 17 May 2022 17:05:27 +0800	[thread overview]
Message-ID: <20220517090529.3140417-7-Penny.Zheng@arm.com> (raw)
In-Reply-To: <20220517090529.3140417-1-Penny.Zheng@arm.com>

This commit sets up shared memory foreign mapping for borrower domain.

If owner domain is the default dom_io, all shared domain are treated as
borrower domain.

Signed-off-by: Penny Zheng <penny.zheng@arm.com>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
---
v4 changes:
- no change
---
v3 change:
- use map_regions_p2mt instead
---
v2 change:
- remove guest_physmap_add_shm, since for borrower domain, we only
do P2M foreign memory mapping now.
---
 xen/arch/arm/domain_build.c | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
index 3a20247836..fcdd87468d 100644
--- a/xen/arch/arm/domain_build.c
+++ b/xen/arch/arm/domain_build.c
@@ -957,6 +957,15 @@ static int __init process_shm(struct domain *d,
             if ( ret )
                 return ret;
         }
+
+        if ( owner_dom_io || (strcmp(role_str, "borrower") == 0) )
+        {
+            /* Set up P2M foreign mapping for borrower domain. */
+            ret = map_regions_p2mt(d, _gfn(PFN_UP(gbase)), PFN_DOWN(psize),
+                                   _mfn(PFN_UP(pbase)), p2m_map_foreign_rw);
+            if ( ret )
+                return ret;
+        }
     }
 
     return 0;
-- 
2.25.1



  parent reply	other threads:[~2022-05-17  9:12 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-05-17  9:05 [PATCH v4 0/8] static shared memory on dom0less system Penny Zheng
2022-05-17  9:05 ` [PATCH v4 1/8] xen/arm: introduce static shared memory Penny Zheng
2022-05-17  9:05 ` [PATCH v4 2/8] xen/arm: allocate static shared memory to the default owner dom_io Penny Zheng
2022-05-17 16:01   ` Jan Beulich
2022-05-18  3:14     ` Penny Zheng
2022-05-18  6:35       ` Jan Beulich
2022-06-17  9:39         ` Penny Zheng
2022-05-17  9:05 ` [PATCH v4 3/8] xen/arm: allocate static shared memory to a specific owner domain Penny Zheng
2022-05-17  9:05 ` [PATCH v4 4/8] xen/arm: introduce put_page_nr and get_page_nr Penny Zheng
2022-05-27  0:47   ` Stefano Stabellini
2022-05-17  9:05 ` [PATCH v4 5/8] xen/arm: Add additional reference to owner domain when the owner is allocated Penny Zheng
2022-05-27  0:26   ` Stefano Stabellini
2022-05-17  9:05 ` Penny Zheng [this message]
2022-05-17  9:05 ` [PATCH v4 7/8] xen/arm: create shared memory nodes in guest device tree Penny Zheng
2022-05-17  9:05 ` [PATCH v4 8/8] xen/arm: enable statically shared memory on Dom0 Penny Zheng

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=20220517090529.3140417-7-Penny.Zheng@arm.com \
    --to=penny.zheng@arm.com \
    --cc=Volodymyr_Babchuk@epam.com \
    --cc=bertrand.marquis@arm.com \
    --cc=julien@xen.org \
    --cc=sstabellini@kernel.org \
    --cc=wei.chen@arm.com \
    --cc=xen-devel@lists.xenproject.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.