Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
SUSE:SLE-12-SP2:GA
xen.7653
557ffab8-evtchn-factor-out-freeing-an-event-cha...
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File 557ffab8-evtchn-factor-out-freeing-an-event-channel.patch of Package xen.7653
# Commit a622b5ade2bdf79ad95e6088a4041e75253c43f3 # Date 2015-06-16 12:30:16 +0200 # Author David Vrabel <david.vrabel@citrix.com> # Committer Jan Beulich <jbeulich@suse.com> evtchn: factor out freeing an event channel We're going to want to free an event channel from two places. Factor out the code into a free_evtchn() function. Signed-off-by: David Vrabel <david.vrabel@citrix.com> Index: xen-4.5.3-testing/xen/common/event_channel.c =================================================================== --- xen-4.5.3-testing.orig/xen/common/event_channel.c +++ xen-4.5.3-testing/xen/common/event_channel.c @@ -195,6 +195,17 @@ static int get_free_port(struct domain * return port; } +static void free_evtchn(struct domain *d, struct evtchn *chn) +{ + /* Clear pending event to avoid unexpected behavior on re-bind. */ + evtchn_port_clear_pending(d, chn); + + /* Reset binding to vcpu0 when the channel is freed. */ + chn->state = ECS_FREE; + chn->notify_vcpu_id = 0; + + xsm_evtchn_close_post(chn); +} static long evtchn_alloc_unbound(evtchn_alloc_unbound_t *alloc) { @@ -569,14 +580,7 @@ static long __evtchn_close(struct domain BUG(); } - /* Clear pending event to avoid unexpected behavior on re-bind. */ - evtchn_port_clear_pending(d1, chn1); - - /* Reset binding to vcpu0 when the channel is freed. */ - chn1->state = ECS_FREE; - chn1->notify_vcpu_id = 0; - - xsm_evtchn_close_post(chn1); + free_evtchn(d1, chn1); out: if ( d2 != NULL )
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor