From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.bugs Subject: bug#22114: 24.5; [PATCH] Allow profiler.el to display reports after stopping Date: Tue, 08 Dec 2015 19:28:53 +0200 Message-ID: <837fkodf3e.fsf@gnu.org> References: <83bna0di5k.fsf@gnu.org> <20151208163208.GA1080@odonien.bevuta.com> Reply-To: Eli Zaretskii NNTP-Posting-Host: plane.gmane.org X-Trace: ger.gmane.org 1449595765 3655 80.91.229.3 (8 Dec 2015 17:29:25 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Tue, 8 Dec 2015 17:29:25 +0000 (UTC) Cc: 22114@debbugs.gnu.org To: Vasilij Schneidermann Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Tue Dec 08 18:29:12 2015 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1a6M4d-0005hR-Tx for geb-bug-gnu-emacs@m.gmane.org; Tue, 08 Dec 2015 18:29:12 +0100 Original-Received: from localhost ([::1]:60991 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1a6M4d-0002Be-4e for geb-bug-gnu-emacs@m.gmane.org; Tue, 08 Dec 2015 12:29:11 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:43809) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1a6M4Z-0002Ab-5m for bug-gnu-emacs@gnu.org; Tue, 08 Dec 2015 12:29:08 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1a6M4U-0005xL-KJ for bug-gnu-emacs@gnu.org; Tue, 08 Dec 2015 12:29:07 -0500 Original-Received: from debbugs.gnu.org ([208.118.235.43]:53737) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1a6M4U-0005x7-I3 for bug-gnu-emacs@gnu.org; Tue, 08 Dec 2015 12:29:02 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.80) (envelope-from ) id 1a6M4U-00007k-7M for bug-gnu-emacs@gnu.org; Tue, 08 Dec 2015 12:29:02 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 08 Dec 2015 17:29:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22114 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch Original-Received: via spool by 22114-submit@debbugs.gnu.org id=B22114.1449595739468 (code B ref 22114); Tue, 08 Dec 2015 17:29:02 +0000 Original-Received: (at 22114) by debbugs.gnu.org; 8 Dec 2015 17:28:59 +0000 Original-Received: from localhost ([127.0.0.1]:43445 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1a6M4Q-00007T-Qw for submit@debbugs.gnu.org; Tue, 08 Dec 2015 12:28:59 -0500 Original-Received: from mtaout23.012.net.il ([80.179.55.175]:39863) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1a6M4O-00007I-L9 for 22114@debbugs.gnu.org; Tue, 08 Dec 2015 12:28:57 -0500 Original-Received: from conversion-daemon.a-mtaout23.012.net.il by a-mtaout23.012.net.il (HyperSendmail v2007.08) id <0NZ100D00V0R6Z00@a-mtaout23.012.net.il> for 22114@debbugs.gnu.org; Tue, 08 Dec 2015 19:28:55 +0200 (IST) Original-Received: from HOME-C4E4A596F7 ([84.94.185.246]) by a-mtaout23.012.net.il (HyperSendmail v2007.08) with ESMTPA id <0NZ100DYBV864840@a-mtaout23.012.net.il>; Tue, 08 Dec 2015 19:28:55 +0200 (IST) In-reply-to: <20151208163208.GA1080@odonien.bevuta.com> X-012-Sender: halo1@inter.net.il X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 208.118.235.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:109770 Archived-At: > Date: Tue, 8 Dec 2015 17:32:08 +0100 > From: Vasilij Schneidermann > Cc: 22114@debbugs.gnu.org > > > Thanks. But I don't see why we would need to keep a copy of the > > profile around (and it looks weird to do that anyway, when we have a > > function that reports it). When profiler-cpu-log is called, it > > returns the profile before it resets it, so the data is available and > > should simply be used. > > > > I don't really understand why profiler.el insists on having the > > profiler running for providing the profile. The much simpler patch > > below makes it possible for me to invoke profiler-report whether a > > profile is running or not. Does it work for you? If not, can you > > tell what I missed? > > This works only once. If the profiler has been stopped and you retrieve > the log, it resets and subsequent access will yield an error. But why would you need a subsequent access to the same data? The profiler report is in the buffer, and you can review it whenever you want. The buffer has the time of the report creation as part of its name, so the next report will not destroy the buffer. You can also save the report to a file (there's a separate command to do that). By contrast,producing a report again from the same data will simply produce an identical report. I guess I don't see a use case where the user would need to produce the same report twice. I never needed that myself, FWIW. > While your variant may be simpler, it is less user-friendly as > viewing the report a second time will yield an incomprehensible > error. If the error message needs improvement, we could do that as well. > Avoiding this either requires fixing the function retrieving the log > (which is at the C level and out of my reach) or using a workaround > like the two extra variables in my patch. The code implemented in C resets the data deliberately (there are comments there that explain why), so it cannot be fixed.