[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [xen master] evtchn: don't pointlessly use get_domain()
commit 65f98b8c31d77d73a86c33daa33980a01daad88c Author: Jan Beulich <jbeulich@xxxxxxxx> AuthorDate: Wed Jan 27 08:46:27 2021 +0100 Commit: Jan Beulich <jbeulich@xxxxxxxx> CommitDate: Wed Jan 27 08:46:27 2021 +0100 evtchn: don't pointlessly use get_domain() For short-lived references rcu_lock_domain() is the better (slightly cheaper) alternative. Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx> Acked-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx> --- xen/common/event_channel.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/xen/common/event_channel.c b/xen/common/event_channel.c index d590ddad99..c94ea74b12 100644 --- a/xen/common/event_channel.c +++ b/xen/common/event_channel.c @@ -678,9 +678,8 @@ int evtchn_close(struct domain *d1, int port1, bool guest) { d2 = chn1->u.interdomain.remote_dom; - /* If we unlock d1 then we could lose d2. Must get a reference. */ - if ( unlikely(!get_domain(d2)) ) - BUG(); + /* If we unlock d1 then we could lose d2. */ + rcu_lock_domain(d2); if ( d1 < d2 ) { @@ -737,7 +736,7 @@ int evtchn_close(struct domain *d1, int port1, bool guest) { if ( d1 != d2 ) spin_unlock(&d2->event_lock); - put_domain(d2); + rcu_unlock_domain(d2); } spin_unlock(&d1->event_lock); -- generated by git-patchbot for /home/xen/git/xen.git#master
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |