From mboxrd@z Thu Jan 1 00:00:00 1970 From: David Vrabel Subject: Re: [PATCHv3 2/6] evtchn: defer freeing struct evtchn's until evtchn_destroy_final() Date: Thu, 18 Jun 2015 11:40:42 +0100 Message-ID: <5582A02A.9050803@citrix.com> References: <1434542583-28073-1-git-send-email-david.vrabel@citrix.com> <1434542583-28073-3-git-send-email-david.vrabel@citrix.com> <5582BB4C02000078000868FB@mail.emea.novell.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Received: from mail6.bemta14.messagelabs.com ([193.109.254.103]) by lists.xen.org with esmtp (Exim 4.72) (envelope-from ) id 1Z5XFY-0004Vp-26 for xen-devel@lists.xenproject.org; Thu, 18 Jun 2015 10:40:48 +0000 In-Reply-To: <5582BB4C02000078000868FB@mail.emea.novell.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Jan Beulich Cc: xen-devel@lists.xenproject.org, Keir Fraser , Ian Campbell , Tim Deegan List-Id: xen-devel@lists.xenproject.org On 18/06/15 11:36, Jan Beulich wrote: >>>> On 17.06.15 at 14:02, wrote: >> --- a/xen/common/event_channel.c >> +++ b/xen/common/event_channel.c >> @@ -1175,22 +1175,6 @@ int alloc_unbound_xen_event_channel( >> >> void free_xen_event_channel(struct domain *d, int port) >> { >> - struct evtchn *chn; >> - >> - spin_lock(&d->event_lock); >> - >> - if ( unlikely(d->is_dying) ) >> - { >> - spin_unlock(&d->event_lock); >> - return; >> - } >> - >> - BUG_ON(!port_is_valid(d, port)); I can keep this one. >> - chn = evtchn_from_port(d, port); >> - BUG_ON(!consumer_is_xen(chn)); > > At least in debug builds I think these would better be retained. But this one has to go because it will always trip when free_xen_event_channel() is called after evtchn_destroy() (which will have cleared xen_consumer). David