From: Austin Clements Date: Fri, 21 Dec 2012 01:55:23 +0000 (+1900) Subject: Re: [PATCH 1/3] CLI: add talloc leak report, controlled by an environment variable. X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=696063311407e9a54a6f9b948a979026e85668f0;p=notmuch-archives.git Re: [PATCH 1/3] CLI: add talloc leak report, controlled by an environment variable. --- diff --git a/70/dfcaf6e0036f6022bb3b8db0cb17d32ba5bcf1 b/70/dfcaf6e0036f6022bb3b8db0cb17d32ba5bcf1 new file mode 100644 index 000000000..b7c2df3ea --- /dev/null +++ b/70/dfcaf6e0036f6022bb3b8db0cb17d32ba5bcf1 @@ -0,0 +1,131 @@ +Return-Path: +X-Original-To: notmuch@notmuchmail.org +Delivered-To: notmuch@notmuchmail.org +Received: from localhost (localhost [127.0.0.1]) + by olra.theworths.org (Postfix) with ESMTP id DFE49431FAF + for ; Thu, 20 Dec 2012 17:55:28 -0800 (PST) +X-Virus-Scanned: Debian amavisd-new at olra.theworths.org +X-Spam-Flag: NO +X-Spam-Score: -0.7 +X-Spam-Level: +X-Spam-Status: No, score=-0.7 tagged_above=-999 required=5 + tests=[RCVD_IN_DNSWL_LOW=-0.7] autolearn=disabled +Received: from olra.theworths.org ([127.0.0.1]) + by localhost (olra.theworths.org [127.0.0.1]) (amavisd-new, port 10024) + with ESMTP id OHkPP91heIW7 for ; + Thu, 20 Dec 2012 17:55:28 -0800 (PST) +Received: from dmz-mailsec-scanner-7.mit.edu (DMZ-MAILSEC-SCANNER-7.MIT.EDU + [18.7.68.36]) + by olra.theworths.org (Postfix) with ESMTP id 3D156431FAE + for ; Thu, 20 Dec 2012 17:55:28 -0800 (PST) +X-AuditID: 12074424-b7f4e6d0000004ca-25-50d3c18f2b25 +Received: from mailhub-auth-1.mit.edu ( [18.9.21.35]) + by dmz-mailsec-scanner-7.mit.edu (Symantec Messaging Gateway) with SMTP + id 35.54.01226.F81C3D05; Thu, 20 Dec 2012 20:55:27 -0500 (EST) +Received: from outgoing.mit.edu (OUTGOING-AUTH.MIT.EDU [18.7.22.103]) + by mailhub-auth-1.mit.edu (8.13.8/8.9.2) with ESMTP id qBL1tQ4r028751; + Thu, 20 Dec 2012 20:55:26 -0500 +Received: from awakening.csail.mit.edu (awakening.csail.mit.edu [18.26.4.91]) + (authenticated bits=0) + (User authenticated as amdragon@ATHENA.MIT.EDU) + by outgoing.mit.edu (8.13.6/8.12.4) with ESMTP id qBL1tNhH002730 + (version=TLSv1/SSLv3 cipher=DHE-RSA-AES128-SHA bits=128 verify=NOT); + Thu, 20 Dec 2012 20:55:25 -0500 (EST) +Received: from amthrax by awakening.csail.mit.edu with local (Exim 4.80) + (envelope-from ) + id 1Tlrpb-0007Hb-9x; Thu, 20 Dec 2012 20:55:23 -0500 +Date: Thu, 20 Dec 2012 20:55:23 -0500 +From: Austin Clements +To: david@tethera.net +Subject: Re: [PATCH 1/3] CLI: add talloc leak report, controlled by an + environment variable. +Message-ID: <20121221015523.GQ6187@mit.edu> +References: <1355714648-23144-1-git-send-email-david@tethera.net> + <1355714648-23144-2-git-send-email-david@tethera.net> +MIME-Version: 1.0 +Content-Type: text/plain; charset=us-ascii +Content-Disposition: inline +In-Reply-To: <1355714648-23144-2-git-send-email-david@tethera.net> +User-Agent: Mutt/1.5.21 (2010-09-15) +X-Brightmail-Tracker: + H4sIAAAAAAAAA+NgFuphleLIzCtJLcpLzFFi42IR4hRV1u0/eDnA4MNUKYuNy34yW9xo7Wa0 + uH5zJrMDs8evtrnMHs9W3WL22HLoPXMAcxSXTUpqTmZZapG+XQJXxsuZCQWveCuOnrzC1sB4 + nauLkZNDQsBE4m/3VGYIW0ziwr31bF2MXBxCAvsYJZZ/uMYE4WxglFi/4j07hHORSeJWQzsr + SIuQwBJGiUf7U0BsFgFViROr2tlBbDYBDYlt+5czgtgiAqISpzdNAqtnFrCXWDR7EliNsECc + xL9lb8BqeAW0Jfb+fs8OMbNS4viF6awQcUGJkzOfsED0aknc+PcS6CIOIFtaYvk/DpAwp4CT + xKG789hAbFEBFYkpJ7exTWAUmoWkexaS7lkI3QsYmVcxyqbkVunmJmbmFKcm6xYnJ+blpRbp + muvlZpbopaaUbmIEBTq7i8oOxuZDSocYBTgYlXh4IywuBwixJpYVV+YeYpTkYFIS5dXbDxTi + S8pPqcxILM6ILyrNSS0+xCjBwawkwvt8CVCONyWxsiq1KB8mJc3BoiTOez3lpr+QQHpiSWp2 + ampBahFMVoaDQ0mCt+0AUKNgUWp6akVaZk4JQpqJgxNkOA/Q8G0gNbzFBYm5xZnpEPlTjIpS + 4rzf9wElBEASGaV5cL2wRPSKURzoFWHefSDtPMAkBtf9CmgwE9DgIL0LIINLEhFSUg2MYfwT + REsmxq7VMthS9jFna3X61AwGkcxJXzzjPZ5yf/AxOnaKU3P7V0/2hY/jvE8e0Vw2UeNj4PrP + HK6JMnqiFtmts35du/CmxURDvPoQr9XTMxPmS93cJL1WdrLz8tcJYU8nWsgIbju2W2t1R+a6 + 4w99m8Pe6PW79ty6ce7I1R8TTMvd5W8uUGIpzkg01GIuKk4EAPun4JYfAwAA +Cc: notmuch@notmuchmail.org, David Bremner +X-BeenThere: notmuch@notmuchmail.org +X-Mailman-Version: 2.1.13 +Precedence: list +List-Id: "Use and development of the notmuch mail system." + +List-Unsubscribe: , + +List-Archive: +List-Post: +List-Help: +List-Subscribe: , + +X-List-Received-Date: Fri, 21 Dec 2012 01:55:29 -0000 + +Quoth david@tethera.net on Dec 16 at 11:24 pm: +> From: David Bremner +> +> The argument handling in notmuch.c seems due for an overhaul, but +> until then use an environment variable to specify a location to write +> the talloc leak report to. This is only enabled for the (interesting) +> case where some notmuch subcommand is invoked. +> --- +> notmuch.c | 16 ++++++++++++++-- +> 1 file changed, 14 insertions(+), 2 deletions(-) +> +> diff --git a/notmuch.c b/notmuch.c +> index 9516dfb..fb49c5a 100644 +> --- a/notmuch.c +> +++ b/notmuch.c +> @@ -322,8 +322,20 @@ main (int argc, char *argv[]) +> for (i = 0; i < ARRAY_SIZE (commands); i++) { +> command = &commands[i]; +> +> - if (strcmp (argv[1], command->name) == 0) +> - return (command->function) (local, argc - 1, &argv[1]); +> + if (strcmp (argv[1], command->name) == 0) { +> + int ret; +> + char *talloc_report; +> + +> + ret = (command->function) (local, argc - 1, &argv[1]); +> + +> + talloc_report=getenv ("NOTMUCH_TALLOC_REPORT"); + +Missing spaces around =. + +I think hacking this in as an environment variable is fine, but maybe +there should be a comment here saying that it would be better to +follow Samba's talloc command-line argument conventions? + +> + if (talloc_report && strcmp(talloc_report, "") != 0) { + +Missing space before paren. + +> + FILE *report = fopen (talloc_report, "w"); +> + talloc_report_full (NULL, report); + +Maybe I'm missing something here, but don't you have to call +talloc_enable_leak_report_full before the first use of talloc to get a +complete leak report? + +> + } +> + +> + return ret; +> + } +> } +> +> fprintf (stderr, "Error: Unknown command '%s' (see \"notmuch help\")\n",