From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrew Cooper Subject: Re: [PATCH for-4.6 12/13] tools/ocaml: call libxl_dominfo_{init, dispose} in stub Date: Thu, 23 Jul 2015 10:07:56 +0100 Message-ID: <55B0AEEC.3070607@citrix.com> References: <1437638354-14216-1-git-send-email-wei.liu2@citrix.com> <1437638354-14216-13-git-send-email-wei.liu2@citrix.com> <55B0A6AC.2000903@citrix.com> <20150723083802.GI16933@zion.uk.xensource.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 1ZICTy-0004o0-EQ for xen-devel@lists.xenproject.org; Thu, 23 Jul 2015 09:08:02 +0000 In-Reply-To: <20150723083802.GI16933@zion.uk.xensource.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: Wei Liu Cc: Xen-devel , Ian Jackson , Ian Campbell , David Scott List-Id: xen-devel@lists.xenproject.org On 23/07/15 09:38, Wei Liu wrote: > On Thu, Jul 23, 2015 at 09:32:44AM +0100, Andrew Cooper wrote: >> On 23/07/2015 08:59, Wei Liu wrote: >>> Signed-off-by: Wei Liu >>> --- >>> Cc: David Scott >>> >>> As far as I can tell, all Val_$foo function does deep-copy, so we can >>> safely call dispose in said function. >> Sadly this is insufficient. failwith_xl() longjump()s back into the >> ocaml runtime, which ends up leaking any allocations made for dominfo. >> >> This is a systemic problem with the Ocaml bindings and I have a proposed >> solution but it involves rewriting quite a lot of this code and is >> definitely not 4.6 material. >> > Fine then. Systematic problem requires systematic fix. Let's ignore the > last two patches in this series. Agreed. What I not yet figured out how to fix is libxl__alloc_failed(). _exit() is not a reasonable out-of-memory action in a library, especially not in use in a runtime which actually has a garbage collector. ~Andrew