|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [xen staging] x86/mem-sharing: don't pointlessly use get_domain_by_id()
commit 1977cd74ff545e0b68540d21c19c7e9282689420
Author: Jan Beulich <jbeulich@xxxxxxxx>
AuthorDate: Thu Jan 7 15:09:20 2021 +0100
Commit: Jan Beulich <jbeulich@xxxxxxxx>
CommitDate: Thu Jan 7 15:09:20 2021 +0100
x86/mem-sharing: don't pointlessly use get_domain_by_id()
For short-lived references rcu_lock_domain_by_id() is the better
(slightly cheaper) alternative.
Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx>
Acked-by: Tamas K Lengyel <tamas@xxxxxxxxxxxxx>
Acked-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
---
xen/arch/x86/mm/mem_sharing.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/xen/arch/x86/mm/mem_sharing.c b/xen/arch/x86/mm/mem_sharing.c
index fc7b2a4102..ad9d495110 100644
--- a/xen/arch/x86/mm/mem_sharing.c
+++ b/xen/arch/x86/mm/mem_sharing.c
@@ -537,7 +537,7 @@ static int audit(void)
p2m_type_t t;
mfn_t o_mfn;
- d = get_domain_by_id(g->domain);
+ d = rcu_lock_domain_by_id(g->domain);
if ( d == NULL )
{
gdprintk(XENLOG_ERR,
@@ -562,7 +562,7 @@ static int audit(void)
d, g->gfn, mfn_x(mfn), p2m_ram_shared, t);
errors++;
}
- put_domain(d);
+ rcu_unlock_domain(d);
nr_gfns++;
}
/* The type count has an extra ref because we have locked the page */
@@ -1043,10 +1043,10 @@ static int share_pages(struct domain *sd, gfn_t sgfn,
shr_handle_t sh,
rmap_del(gfn, cpage, 0);
rmap_add(gfn, spage);
put_count++;
- d = get_domain_by_id(gfn->domain);
+ d = rcu_lock_domain_by_id(gfn->domain);
BUG_ON(!d);
BUG_ON(set_shared_p2m_entry(d, gfn->gfn, smfn));
- put_domain(d);
+ rcu_unlock_domain(d);
}
ASSERT(list_empty(&cpage->sharing->gfns));
BUG_ON(!put_count);
--
generated by git-patchbot for /home/xen/git/xen.git#staging
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |