aboutsummaryrefslogtreecommitdiffstats
path: root/xen/common/event_channel.c
diff options
context:
space:
mode:
authorKeir Fraser <keir@xen.org>2010-11-22 08:29:03 +0000
committerKeir Fraser <keir@xen.org>2010-11-22 08:29:03 +0000
commitd4076a1e3c21bdbe9201d7f4c27e70b679dbca13 (patch)
treeafbdbe0e8b4685483e63f63dd83037b72c617fdc /xen/common/event_channel.c
parent47aec067a5f648706cd122e18b7f87b47f04edd0 (diff)
downloadxen-d4076a1e3c21bdbe9201d7f4c27e70b679dbca13.tar.gz
xen-d4076a1e3c21bdbe9201d7f4c27e70b679dbca13.tar.bz2
xen-d4076a1e3c21bdbe9201d7f4c27e70b679dbca13.zip
event_channel: Fix uninitialised variable build error.
Signed-off-by: Yang Zhang <yang.z.zhang@intel.com> Signed-off-by: Keir Fraser <keir@xen.org>
Diffstat (limited to 'xen/common/event_channel.c')
-rw-r--r--xen/common/event_channel.c15
1 files changed, 7 insertions, 8 deletions
diff --git a/xen/common/event_channel.c b/xen/common/event_channel.c
index 52ec7fc215..c4308ed8f7 100644
--- a/xen/common/event_channel.c
+++ b/xen/common/event_channel.c
@@ -345,15 +345,14 @@ static long evtchn_bind_pirq(evtchn_bind_pirq_t *bind)
chn = evtchn_from_port(d, port);
d->pirq_to_evtchn[pirq] = port;
- if ( !is_hvm_domain(d) )
+ rc = (!is_hvm_domain(d)
+ ? pirq_guest_bind(
+ v, pirq, !!(bind->flags & BIND_PIRQ__WILL_SHARE))
+ : 0);
+ if ( rc != 0 )
{
- rc = pirq_guest_bind(
- v, pirq, !!(bind->flags & BIND_PIRQ__WILL_SHARE));
- if ( rc != 0 )
- {
- d->pirq_to_evtchn[pirq] = 0;
- goto out;
- }
+ d->pirq_to_evtchn[pirq] = 0;
+ goto out;
}
chn->state = ECS_PIRQ;