From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrew Cooper Subject: Re: [PATCH] python/xc: add missing Py_DECREF() to fix a memory leak Date: Mon, 31 Aug 2015 13:27:35 +0100 Message-ID: <55E44837.5000902@citrix.com> References: <1440797718-28045-1-git-send-email-zhigang.x.wang@oracle.com> <20150831120456.GA22586@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 1ZWOBZ-0007mg-JD for xen-devel@lists.xenproject.org; Mon, 31 Aug 2015 12:27:41 +0000 In-Reply-To: <20150831120456.GA22586@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 , Zhigang Wang Cc: xen-devel@lists.xenproject.org List-Id: xen-devel@lists.xenproject.org On 31/08/2015 13:04, Wei Liu wrote: > On Fri, Aug 28, 2015 at 05:35:18PM -0400, Zhigang Wang wrote: >> Python PyList_Append() will increase reference count of the item. We have to >> decrease its reference count to let it garbage collected. >> >> We missed the Py_DECREF() for 'cpuinfo_obj' here, thus we have a memory leak. >> >> The memory leak could be easily confirmed by: >> >> # python >> >>> import xen.lowlevel.xc >> >>> xc = xen.lowlevel.xc.xc() >> >>> for i in range(1000): xc.getcpuinfo(1) >> >> And check the python process memory usage before and after: >> >> # ps f -o vsize,rss,%mem,size,cmd -p >> >> Signed-off-by: Zhigang Wang > Acked-by: Wei Liu > > There is no in-tree user of python binding, I was planning to remove it > in 4.7 window. I am sure I have mentioned this in the past, but XenServer still uses them in places, and they are very useful to use from interactive sessions. ~Andrew (Oracle are still using them as they are still using xend)