unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#34235: 27.0.50; lisp profiler does not work
@ 2019-01-28 18:34 Alex Branham
  2019-01-29 16:06 ` Eli Zaretskii
                   ` (2 more replies)
  0 siblings, 3 replies; 19+ messages in thread
From: Alex Branham @ 2019-01-28 18:34 UTC (permalink / raw)
  To: 34235

The lisp profiler (i.e. M-x profiler-start, M-x profiler-report, etc)
seems to not work for me since the pdumper got merged (or sometime
around then). I'm not using --enable-profiling when I run ./configure.

emacs -q
M-x profiler-start (set cpu mode)
C-x C-f ~/.emacs.d/init.el
M-x profiler-report

results in the profiler report buffer only having the contents:

- ...                                                               1 100%
   Automatic GC                                                     1 100%

but surely there should be more in there. More generally, it doesn't
seem to ever report anything for me, no matter how long I leave it
running for. I've got no idea if the pdumper has anything to do with
this, it just seems to have been happening since about then.

Thanks,
Alex





In GNU Emacs 27.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.2)
 of 2019-01-25 built on localhost
Windowing system distributor 'The X.Org Foundation', version 11.0.11906000
System Description: NixOS 18.09.1985.749a3a0d00b (Jellyfish)

Configured using:
 'configure
 --prefix=/nix/store/dw0cpqxxrnm2khnmldp7mncn6db4779p-emacs-27.0.50
 --with-modules --with-x-toolkit=gtk3 --with-xft
 CFLAGS=-DMAC_OS_X_VERSION_MAX_ALLOWED=101200'

Configured features:
XPM JPEG TIFF GIF PNG RSVG SOUND DBUS GSETTINGS GLIB NOTIFY INOTIFY
LIBSELINUX GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB
TOOLKIT_SCROLL_BARS GTK3 X11 XDBE XIM MODULES THREADS LIBSYSTEMD JSON
CANNOT_DUMP GMP

Important settings:
  value of $LANG: en_US.UTF-8
  locale-coding-system: utf-8-unix





^ permalink raw reply	[flat|nested] 19+ messages in thread

* bug#34235: 27.0.50; lisp profiler does not work
  2019-01-28 18:34 bug#34235: 27.0.50; lisp profiler does not work Alex Branham
@ 2019-01-29 16:06 ` Eli Zaretskii
  2019-01-30 13:33   ` Alan Mackenzie
  2019-02-01 21:47 ` bug#34235: 0e334db6bb4b1fd1e2d72c1f3d8f004313cd9f94 (posix-timers: Fix division by zero bug). Problems with glibc Alan Mackenzie
  2019-02-02  2:07 ` bug#34235: 0e334db6bb4b1fd1e2d72c1f3d8f004313cd9f94 (posix-timers: Fix, " Paul Eggert
  2 siblings, 1 reply; 19+ messages in thread
From: Eli Zaretskii @ 2019-01-29 16:06 UTC (permalink / raw)
  To: Alex Branham; +Cc: 34235

> From: Alex Branham <alex.branham@gmail.com>
> Date: Mon, 28 Jan 2019 12:34:03 -0600
> 
> The lisp profiler (i.e. M-x profiler-start, M-x profiler-report, etc)
> seems to not work for me since the pdumper got merged (or sometime
> around then). I'm not using --enable-profiling when I run ./configure.
> 
> emacs -q
> M-x profiler-start (set cpu mode)
> C-x C-f ~/.emacs.d/init.el
> M-x profiler-report
> 
> results in the profiler report buffer only having the contents:
> 
> - ...                                                               1 100%
>    Automatic GC                                                     1 100%
> 
> but surely there should be more in there. More generally, it doesn't
> seem to ever report anything for me, no matter how long I leave it
> running for. I've got no idea if the pdumper has anything to do with
> this, it just seems to have been happening since about then.

I couldn't reproduce this with today's master branch.  I tried on
GNU/Linux and on 2 different MS-Windows machines, and profiling worked
for me on all of them.  I see much more than just "Automatic GC".

So I suggest that you look into possible local changes on your system
recently, and perhaps also try the emacs-26 branch (where there's no
pdumper).

For the record, after invoking profiler-start in CPU mode, I visited
xdisp.c and typed M->, then invoked profiler-report, and typed "C-u RET"
on every "+" sign in the leftmost column.  Did you do something similar?

Thanks.





^ permalink raw reply	[flat|nested] 19+ messages in thread

* bug#34235: 27.0.50; lisp profiler does not work
  2019-01-29 16:06 ` Eli Zaretskii
@ 2019-01-30 13:33   ` Alan Mackenzie
  2019-01-30 15:40     ` Alex Branham
  2019-01-30 15:48     ` Eli Zaretskii
  0 siblings, 2 replies; 19+ messages in thread
From: Alan Mackenzie @ 2019-01-30 13:33 UTC (permalink / raw)
  To: Eli Zaretskii, Alex Branham; +Cc: 34235

Hello, Eli and Alex

On Tue, Jan 29, 2019 at 18:06:05 +0200, Eli Zaretskii wrote:
> > From: Alex Branham <alex.branham@gmail.com>
> > Date: Mon, 28 Jan 2019 12:34:03 -0600

> > The lisp profiler (i.e. M-x profiler-start, M-x profiler-report, etc)
> > seems to not work for me since the pdumper got merged (or sometime
> > around then). I'm not using --enable-profiling when I run ./configure.

> > emacs -q
> > M-x profiler-start (set cpu mode)
> > C-x C-f ~/.emacs.d/init.el
> > M-x profiler-report

> > results in the profiler report buffer only having the contents:

> > - ...                                                               1 100%
> >    Automatic GC                                                     1 100%

> > but surely there should be more in there. More generally, it doesn't
> > seem to ever report anything for me, no matter how long I leave it
> > running for. I've got no idea if the pdumper has anything to do with
> > this, it just seems to have been happening since about then.

> I couldn't reproduce this with today's master branch.  I tried on
> GNU/Linux and on 2 different MS-Windows machines, and profiling worked
> for me on all of them.  I see much more than just "Automatic GC".

> So I suggest that you look into possible local changes on your system
> recently, and perhaps also try the emacs-26 branch (where there's no
> pdumper).

> For the record, after invoking profiler-start in CPU mode, I visited
> xdisp.c and typed M->, then invoked profiler-report, and typed "C-u RET"
> on every "+" sign in the leftmost column.  Did you do something similar?

For what it's worth, I see the bug in master in GNU/Linux, starting off
with emacs -Q, visiting xdisp.c, M-x profiler-start <CR> <CR>, M->, M-x
profiler-report.

I see in the report just the single entry for Automatic GC, like Alex.

I last updated my repository yesterday, just before midday UTC.

> Thanks.

-- 
Alan Mackenzie (Nuremberg, Germany).





^ permalink raw reply	[flat|nested] 19+ messages in thread

* bug#34235: 27.0.50; lisp profiler does not work
  2019-01-30 13:33   ` Alan Mackenzie
@ 2019-01-30 15:40     ` Alex Branham
  2019-01-30 16:15       ` Alan Mackenzie
  2019-01-30 15:48     ` Eli Zaretskii
  1 sibling, 1 reply; 19+ messages in thread
From: Alex Branham @ 2019-01-30 15:40 UTC (permalink / raw)
  To: Alan Mackenzie; +Cc: 34235

[-- Attachment #1: Type: text/plain, Size: 757 bytes --]


On Wed 30 Jan 2019 at 07:33, Alan Mackenzie <acm@muc.de> wrote:

> For what it's worth, I see the bug in master in GNU/Linux, starting off
> with emacs -Q, visiting xdisp.c, M-x profiler-start <CR> <CR>, M->, M-x
> profiler-report.
>
> I see in the report just the single entry for Automatic GC, like Alex.
>
> I last updated my repository yesterday, just before midday UTC.

Thanks, Alan. Good to know it's not just me.

Since submitting this bug, I've discovered that it affects previous
versions of Emacs as well. Emacs from git master that I compile myself,
Emacs 26.1 from my distro (nixOS), and Emacs 25.3 from my distro. I
haven't had time yet to dig in much more than that, but figured I'd
report that as well since it rules out the pdumper.

Alex

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 487 bytes --]

^ permalink raw reply	[flat|nested] 19+ messages in thread

* bug#34235: 27.0.50; lisp profiler does not work
  2019-01-30 13:33   ` Alan Mackenzie
  2019-01-30 15:40     ` Alex Branham
@ 2019-01-30 15:48     ` Eli Zaretskii
  1 sibling, 0 replies; 19+ messages in thread
From: Eli Zaretskii @ 2019-01-30 15:48 UTC (permalink / raw)
  To: Alan Mackenzie; +Cc: alex.branham, 34235

> Date: Wed, 30 Jan 2019 13:33:11 +0000
> Cc: 34235@debbugs.gnu.org
> From: Alan Mackenzie <acm@muc.de>
> 
> For what it's worth, I see the bug in master in GNU/Linux, starting off
> with emacs -Q, visiting xdisp.c, M-x profiler-start <CR> <CR>, M->, M-x
> profiler-report.
> 
> I see in the report just the single entry for Automatic GC, like Alex.

Thanks, I hope you (or someone else who sees this) will be able to
debug this.





^ permalink raw reply	[flat|nested] 19+ messages in thread

* bug#34235: 27.0.50; lisp profiler does not work
  2019-01-30 15:40     ` Alex Branham
@ 2019-01-30 16:15       ` Alan Mackenzie
  2019-01-30 16:23         ` Alex Branham
  2019-01-30 16:41         ` Eli Zaretskii
  0 siblings, 2 replies; 19+ messages in thread
From: Alan Mackenzie @ 2019-01-30 16:15 UTC (permalink / raw)
  To: Alex Branham, Eli Zaretskii; +Cc: 34235

Hello, Alex and Eli.

On Wed, Jan 30, 2019 at 09:40:02 -0600, Alex Branham wrote:

> On Wed 30 Jan 2019 at 07:33, Alan Mackenzie <acm@muc.de> wrote:

> > For what it's worth, I see the bug in master in GNU/Linux, starting off
> > with emacs -Q, visiting xdisp.c, M-x profiler-start <CR> <CR>, M->, M-x
> > profiler-report.

> > I see in the report just the single entry for Automatic GC, like Alex.

> > I last updated my repository yesterday, just before midday UTC.

> Thanks, Alan. Good to know it's not just me.

> Since submitting this bug, I've discovered that it affects previous
> versions of Emacs as well. Emacs from git master that I compile myself,
> Emacs 26.1 from my distro (nixOS), and Emacs 25.3 from my distro. I
> haven't had time yet to dig in much more than that, but figured I'd
> report that as well since it rules out the pdumper.

It seems to be a Linux problem, at least at my end.

I see the bug with kernel versions 4.19.17 and 4.19.13.
I don't see the bug with versions 4.18.19 and 4.19.10.

It seems some incompatibility between Emacs and Linux was introduced in
one of the kernels 4.19.1[123].

I don't know how to debug this any further.

> Alex

-- 
Alan Mackenzie (Nuremberg, Germany).





^ permalink raw reply	[flat|nested] 19+ messages in thread

* bug#34235: 27.0.50; lisp profiler does not work
  2019-01-30 16:15       ` Alan Mackenzie
@ 2019-01-30 16:23         ` Alex Branham
  2019-01-30 16:43           ` Eli Zaretskii
  2019-01-30 16:41         ` Eli Zaretskii
  1 sibling, 1 reply; 19+ messages in thread
From: Alex Branham @ 2019-01-30 16:23 UTC (permalink / raw)
  To: Alan Mackenzie; +Cc: 34235

[-- Attachment #1: Type: text/plain, Size: 421 bytes --]


On Wed 30 Jan 2019 at 10:15, Alan Mackenzie <acm@muc.de> wrote:

> It seems to be a Linux problem, at least at my end.
>
> I see the bug with kernel versions 4.19.17 and 4.19.13.
> I don't see the bug with versions 4.18.19 and 4.19.10.
>
> It seems some incompatibility between Emacs and Linux was introduced in
> one of the kernels 4.19.1[123].

I'm on kernel 4.14.95, so if it is a Linux issue, it's been backported.


[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 487 bytes --]

^ permalink raw reply	[flat|nested] 19+ messages in thread

* bug#34235: 27.0.50; lisp profiler does not work
  2019-01-30 16:15       ` Alan Mackenzie
  2019-01-30 16:23         ` Alex Branham
@ 2019-01-30 16:41         ` Eli Zaretskii
  1 sibling, 0 replies; 19+ messages in thread
From: Eli Zaretskii @ 2019-01-30 16:41 UTC (permalink / raw)
  To: Alan Mackenzie; +Cc: alex.branham, 34235

> Date: Wed, 30 Jan 2019 16:15:21 +0000
> Cc: 34235@debbugs.gnu.org
> From: Alan Mackenzie <acm@muc.de>
> 
> It seems to be a Linux problem, at least at my end.
> 
> I see the bug with kernel versions 4.19.17 and 4.19.13.
> I don't see the bug with versions 4.18.19 and 4.19.10.
> 
> It seems some incompatibility between Emacs and Linux was introduced in
> one of the kernels 4.19.1[123].

Maybe some problems with the SIGPROF signal?  Does the signal handler
(handle_profiler_signal) get called at all when you are profiling?

If the signal handler does get called, maybe it's the
backtrace_top_function function that fails?





^ permalink raw reply	[flat|nested] 19+ messages in thread

* bug#34235: 27.0.50; lisp profiler does not work
  2019-01-30 16:23         ` Alex Branham
@ 2019-01-30 16:43           ` Eli Zaretskii
  2019-01-30 20:47             ` Alex Branham
  0 siblings, 1 reply; 19+ messages in thread
From: Eli Zaretskii @ 2019-01-30 16:43 UTC (permalink / raw)
  To: Alex Branham; +Cc: acm, 34235

> From: Alex Branham <alex.branham@gmail.com>
> Cc: Eli Zaretskii <eliz@gnu.org>, 34235@debbugs.gnu.org
> Date: Wed, 30 Jan 2019 10:23:10 -0600
> 
> > I see the bug with kernel versions 4.19.17 and 4.19.13.
> > I don't see the bug with versions 4.18.19 and 4.19.10.
> >
> > It seems some incompatibility between Emacs and Linux was introduced in
> > one of the kernels 4.19.1[123].
> 
> I'm on kernel 4.14.95, so if it is a Linux issue, it's been backported.

Do you keep records of your system updates?  If so, can you look there
for relevant recent updates, like glibc or some kernel modules/drivers
or libraries?





^ permalink raw reply	[flat|nested] 19+ messages in thread

* bug#34235: 27.0.50; lisp profiler does not work
  2019-01-30 16:43           ` Eli Zaretskii
@ 2019-01-30 20:47             ` Alex Branham
  0 siblings, 0 replies; 19+ messages in thread
From: Alex Branham @ 2019-01-30 20:47 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: acm, 34235

[-- Attachment #1: Type: text/plain, Size: 1231 bytes --]


On Wed 30 Jan 2019 at 10:43, Eli Zaretskii <eliz@gnu.org> wrote:

>> From: Alex Branham <alex.branham@gmail.com>
>> Cc: Eli Zaretskii <eliz@gnu.org>, 34235@debbugs.gnu.org
>> Date: Wed, 30 Jan 2019 10:23:10 -0600
>>
>> > I see the bug with kernel versions 4.19.17 and 4.19.13.
>> > I don't see the bug with versions 4.18.19 and 4.19.10.
>> >
>> > It seems some incompatibility between Emacs and Linux was introduced in
>> > one of the kernels 4.19.1[123].
>>
>> I'm on kernel 4.14.95, so if it is a Linux issue, it's been backported.
>
> Do you keep records of your system updates?  If so, can you look there
> for relevant recent updates, like glibc or some kernel modules/drivers
> or libraries?

nixOS keeps old systems laying around. I was able to go back to a system
that doesn't have this bug (back in December, nixos-version
18.09.1763.fbb7dbdb95d). The only differences in package versions
between this system and the next one (where the profiler doesn't work,
nixos-version 18.09.1829.0396345b794) is this:

- linux-4.14.89
+ linux-4.14.91
- python3-3.6.7
+ python3-3.6.8
- libjpeg-turbo-1.5.3
+ libjpeg-turbo-2.0.1
- cpupower-4.14.89
+ cpupower-4.14.91

If there's any other info I can share, let me know.

Thanks,
Alex

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 487 bytes --]

^ permalink raw reply	[flat|nested] 19+ messages in thread

* bug#34235: 0e334db6bb4b1fd1e2d72c1f3d8f004313cd9f94 (posix-timers: Fix division by zero bug). Problems with glibc.
  2019-01-28 18:34 bug#34235: 27.0.50; lisp profiler does not work Alex Branham
  2019-01-29 16:06 ` Eli Zaretskii
@ 2019-02-01 21:47 ` Alan Mackenzie
  2019-02-01 22:04   ` Thomas Gleixner
       [not found]   ` <alpine.DEB.2.21.1902012301310.8200@nanos.tec.linutronix.de>
  2019-02-02  2:07 ` bug#34235: 0e334db6bb4b1fd1e2d72c1f3d8f004313cd9f94 (posix-timers: Fix, " Paul Eggert
  2 siblings, 2 replies; 19+ messages in thread
From: Alan Mackenzie @ 2019-02-01 21:47 UTC (permalink / raw)
  To: Thomas Gleixner, linux-kernel; +Cc: Alex Branham, 34235

Hello, Thomas, Hello Linux.

0e334db6bb4b1fd1e2d72c1f3d8f004313cd9f94
posix-timers: Fix division by zero bug
Committed: 2018-12-17 17:35:45 +0100

With this patch in place I am seeing problems with glibc's function
timer_create.  I am an Emacs maintainer, and saw these problems whilst
investigating Emacs bug #34235 "27.0.50; lisp profiler does not work".
Full details of this bug are at
https://debbugs.gnu.org/cgi/bugreport.cgi?bug=34235.

Emacs's profiler fails in kernel 4.19.13, but works in a version of
4.19.13 with the patch reversed, otherwise unchanged.  My current version
of glibc is 2.27-r6 (I think the "-r6" comes from Gentoo, my distro).

The Emacs profiler works by a signal handler being repeatedly triggered
by the SIGPROF signal every 1 millisecond.  In the bug scenario, this
signal gets triggered precisely once each time the Emacs profiler is
started, rather than continually.

The core of the code in Emacs which initialises the glibc timer is:

      int i;
      struct sigevent sigev;
      sigev.sigev_value.sival_ptr = &profiler_timer;
      sigev.sigev_signo = SIGPROF;
      sigev.sigev_notify = SIGEV_SIGNAL;

      for (i = 0; i < ARRAYELTS (system_clock); i++)
        if (timer_create (system_clock[i], &sigev, &profiler_timer) == 0)
          {
            profiler_timer_ok = 1;
            break;
          }
    }

  if (profiler_timer_ok)
    {
      struct itimerspec ispec;
      ispec.it_value = ispec.it_interval = interval;
      if (timer_settime (profiler_timer, 0, &ispec, 0) == 0)
        return TIMER_SETTIME_RUNNING;
    }

The variable `interval' has been checked as non-zero.  This code is in
.../emacs/src/profiler.c

It seems either that the patch has uncovered some invalid call between
Emacs and glibc, or between glibc and Linux, or that there is some
intrinsic problem with the patch.

I have very little familiarity with glibc and Linux source code, so I
would be greatful if you could help me investigate the bug scenario.
Naturally, I will help as I can in this process.

Thanks in advance!

-- 
Alan Mackenzie (Nuremberg, Germany).





^ permalink raw reply	[flat|nested] 19+ messages in thread

* bug#34235: 0e334db6bb4b1fd1e2d72c1f3d8f004313cd9f94 (posix-timers: Fix division by zero bug). Problems with glibc.
  2019-02-01 21:47 ` bug#34235: 0e334db6bb4b1fd1e2d72c1f3d8f004313cd9f94 (posix-timers: Fix division by zero bug). Problems with glibc Alan Mackenzie
@ 2019-02-01 22:04   ` Thomas Gleixner
       [not found]   ` <alpine.DEB.2.21.1902012301310.8200@nanos.tec.linutronix.de>
  1 sibling, 0 replies; 19+ messages in thread
From: Thomas Gleixner @ 2019-02-01 22:04 UTC (permalink / raw)
  To: Alan Mackenzie; +Cc: Alex Branham, 34235, linux-kernel

Hello Alan,

On Fri, 1 Feb 2019, Alan Mackenzie wrote:
> 0e334db6bb4b1fd1e2d72c1f3d8f004313cd9f94
> posix-timers: Fix division by zero bug
> Committed: 2018-12-17 17:35:45 +0100
> 
> With this patch in place I am seeing problems with glibc's function
> timer_create.  I am an Emacs maintainer, and saw these problems whilst
> investigating Emacs bug #34235 "27.0.50; lisp profiler does not work".

> Emacs's profiler fails in kernel 4.19.13, but works in a version of
> 4.19.13 with the patch reversed, otherwise unchanged.  My current version
> of glibc is 2.27-r6 (I think the "-r6" comes from Gentoo, my distro).

Please upgrade to 4.19.19. The issue should be fixed there with the
backported variant of

   93ad0fc088c5 ("posix-cpu-timers: Unbreak timer rearming")

Commit 21c0d1621b8d4b in 4.19.19

Thanks,

	tglx





^ permalink raw reply	[flat|nested] 19+ messages in thread

* bug#34235: 0e334db6bb4b1fd1e2d72c1f3d8f004313cd9f94 (posix-timers: Fix, division by zero bug). Problems with glibc.
  2019-01-28 18:34 bug#34235: 27.0.50; lisp profiler does not work Alex Branham
  2019-01-29 16:06 ` Eli Zaretskii
  2019-02-01 21:47 ` bug#34235: 0e334db6bb4b1fd1e2d72c1f3d8f004313cd9f94 (posix-timers: Fix division by zero bug). Problems with glibc Alan Mackenzie
@ 2019-02-02  2:07 ` Paul Eggert
  2019-02-02  9:21   ` Thomas Gleixner
                     ` (2 more replies)
  2 siblings, 3 replies; 19+ messages in thread
From: Paul Eggert @ 2019-02-02  2:07 UTC (permalink / raw)
  To: Thomas Gleixner; +Cc: Alan Mackenzie, Alex Branham, 34235, linux-kernel

[-- Attachment #1: Type: text/plain, Size: 381 bytes --]

Thanks for helping to track down this bug. Since the problem occurs only 
with a few Linux kernel versions and affects Emacs only when doing CPU 
profiling, it doesn't seem worth spending time to try to patch Emacs to 
work around the bug. So I installed the attached patch into emacs-26's 
etc/PROBLEMS file to warn users about the problem, and am closing the 
Emacs bug report.


[-- Attachment #2: 0001-etc-PROBLEMS-Mention-profiler-report-bug-Bug-34235.patch --]
[-- Type: text/x-patch, Size: 826 bytes --]

From 1243188bc4f722abf16518bf73924ce5f17750cf Mon Sep 17 00:00:00 2001
From: Paul Eggert <eggert@cs.ucla.edu>
Date: Fri, 1 Feb 2019 17:58:05 -0800
Subject: [PATCH] * etc/PROBLEMS: Mention profiler-report bug (Bug#34235).

---
 etc/PROBLEMS | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/etc/PROBLEMS b/etc/PROBLEMS
index cab087631c..00583f016d 100644
--- a/etc/PROBLEMS
+++ b/etc/PROBLEMS
@@ -1850,6 +1850,12 @@ term/xterm.el) for more details.
 
 ** GNU/Linux
 
+*** GNU/Linux: profiler-report outputs nothing.
+
+A few versions of the Linux kernel have timer bugs that break CPU
+profiling; see Bug#34235.  To fix the problem, upgrade to kernel
+versions 4.19.19 or 4.20.6, or later.
+
 *** GNU/Linux: Process output is corrupted.
 
 There is a bug in Linux kernel 2.6.10 PTYs that can cause emacs to
-- 
2.20.1


^ permalink raw reply related	[flat|nested] 19+ messages in thread

* bug#34235: 0e334db6bb4b1fd1e2d72c1f3d8f004313cd9f94 (posix-timers: Fix, division by zero bug). Problems with glibc.
  2019-02-02  2:07 ` bug#34235: 0e334db6bb4b1fd1e2d72c1f3d8f004313cd9f94 (posix-timers: Fix, " Paul Eggert
@ 2019-02-02  9:21   ` Thomas Gleixner
  2019-02-02 14:02   ` Alex Branham
       [not found]   ` <alpine.DEB.2.21.1902021020020.8200@nanos.tec.linutronix.de>
  2 siblings, 0 replies; 19+ messages in thread
From: Thomas Gleixner @ 2019-02-02  9:21 UTC (permalink / raw)
  To: Paul Eggert; +Cc: Alan Mackenzie, Alex Branham, 34235, linux-kernel

On Fri, 1 Feb 2019, Paul Eggert wrote:

> Thanks for helping to track down this bug. Since the problem occurs only with
> a few Linux kernel versions and affects Emacs only when doing CPU profiling,
> it doesn't seem worth spending time to try to patch Emacs to work around the
> bug. So I installed the attached patch into emacs-26's etc/PROBLEMS file to
> warn users about the problem, and am closing the Emacs bug report.

Can you please verify whether the issue is fixed with 4.19.19? The commit
in question broke posix CPU timers as a unintended side effect and a follow
up patch unbreaks them again.

Thanks,

	tglx





^ permalink raw reply	[flat|nested] 19+ messages in thread

* bug#34235: 0e334db6bb4b1fd1e2d72c1f3d8f004313cd9f94 (posix-timers: Fix division by zero bug). Problems with glibc.
       [not found]   ` <alpine.DEB.2.21.1902012301310.8200@nanos.tec.linutronix.de>
@ 2019-02-02 10:44     ` Alan Mackenzie
       [not found]     ` <20190202104404.GA1067@ACM>
  1 sibling, 0 replies; 19+ messages in thread
From: Alan Mackenzie @ 2019-02-02 10:44 UTC (permalink / raw)
  To: Thomas Gleixner; +Cc: Alex Branham, Paul Eggert, 34235, linux-kernel

Hello, Thomas.

Thanks for such a rapid reply!

On Fri, Feb 01, 2019 at 23:04:48 +0100, Thomas Gleixner wrote:
> Hello Alan,

> On Fri, 1 Feb 2019, Alan Mackenzie wrote:
> > 0e334db6bb4b1fd1e2d72c1f3d8f004313cd9f94
> > posix-timers: Fix division by zero bug
> > Committed: 2018-12-17 17:35:45 +0100

> > With this patch in place I am seeing problems with glibc's function
> > timer_create.  I am an Emacs maintainer, and saw these problems whilst
> > investigating Emacs bug #34235 "27.0.50; lisp profiler does not work".

> > Emacs's profiler fails in kernel 4.19.13, but works in a version of
> > 4.19.13 with the patch reversed, otherwise unchanged.  My current version
> > of glibc is 2.27-r6 (I think the "-r6" comes from Gentoo, my distro).

> Please upgrade to 4.19.19. The issue should be fixed there with the
> backported variant of

>    93ad0fc088c5 ("posix-cpu-timers: Unbreak timer rearming")

> Commit 21c0d1621b8d4b in 4.19.19

I've just built and installed Linux 4.19.19, and it does indeed solve
the Emacs profiler bug, #34235.  :-)

I see that the patch has been installed in 4.20.6, 4.19.19, and 4.14.97.
Are there any plans to install it into 4.9.x, the other live long term
support branch?  The reason I ask is to make an entry into Emacs's
PROBLEMS file, telling users and distributions which kernel versions to
upgrade to.

> Thanks,

> 	tglx

-- 
Alan Mackenzie (Nuremberg, Germany).





^ permalink raw reply	[flat|nested] 19+ messages in thread

* bug#34235: 0e334db6bb4b1fd1e2d72c1f3d8f004313cd9f94 (posix-timers: Fix, division by zero bug). Problems with glibc.
  2019-02-02  2:07 ` bug#34235: 0e334db6bb4b1fd1e2d72c1f3d8f004313cd9f94 (posix-timers: Fix, " Paul Eggert
  2019-02-02  9:21   ` Thomas Gleixner
@ 2019-02-02 14:02   ` Alex Branham
       [not found]   ` <alpine.DEB.2.21.1902021020020.8200@nanos.tec.linutronix.de>
  2 siblings, 0 replies; 19+ messages in thread
From: Alex Branham @ 2019-02-02 14:02 UTC (permalink / raw)
  To: Paul Eggert; +Cc: Alan Mackenzie, 34235

[-- Attachment #1: Type: text/plain, Size: 521 bytes --]

On Fri 01 Feb 2019 at 20:07, Paul Eggert <eggert@cs.ucla.edu> wrote:

> +A few versions of the Linux kernel have timer bugs that break CPU
> +profiling; see Bug#34235.  To fix the problem, upgrade to kernel
> +versions 4.19.19 or 4.20.6, or later.
> +
>  *** GNU/Linux: Process output is corrupted.
>
>  There is a bug in Linux kernel 2.6.10 PTYs that can cause emacs to

Hi all - 

Thanks for all the work uncovering this one! I upgraded to
linux-4.14.97, which did solve the issue.

Thanks again!
Alex

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 487 bytes --]

^ permalink raw reply	[flat|nested] 19+ messages in thread

* bug#34235: 0e334db6bb4b1fd1e2d72c1f3d8f004313cd9f94 (posix-timers: Fix, division by zero bug). Problems with glibc.
       [not found]   ` <alpine.DEB.2.21.1902021020020.8200@nanos.tec.linutronix.de>
@ 2019-02-03  6:28     ` Paul Eggert
  0 siblings, 0 replies; 19+ messages in thread
From: Paul Eggert @ 2019-02-03  6:28 UTC (permalink / raw)
  To: Thomas Gleixner; +Cc: Alan Mackenzie, Alex Branham, 34235, linux-kernel

Thomas Gleixner wrote:
> Can you please verify whether the issue is fixed with 4.19.19?

It depends on what you mean by "verify". I looked at the Linux kernel source 
code and checked that the "posix-cpu-timers: Unbreak timer rearming" patch is in 
4.19.19 (but not 4.19.18) and in 4.20.6 (but not 4.20.5). I did not test Emacs's 
CPU profiler on these kernels, as I don't have them installed. I expect to 
upgrade soon to 4.20.6 (whenever Fedora 29 release does - 4.20.6 was submitted 
for testing a couple of days ago) and plan to give it a try then.





^ permalink raw reply	[flat|nested] 19+ messages in thread

* bug#34235: 0e334db6bb4b1fd1e2d72c1f3d8f004313cd9f94 (posix-timers: Fix division by zero bug). Problems with glibc.
       [not found]     ` <20190202104404.GA1067@ACM>
@ 2019-02-04 17:25       ` Thomas Gleixner
       [not found]       ` <alpine.DEB.2.21.1902041724200.3006@nanos.tec.linutronix.de>
  1 sibling, 0 replies; 19+ messages in thread
From: Thomas Gleixner @ 2019-02-04 17:25 UTC (permalink / raw)
  To: Alan Mackenzie; +Cc: Alex Branham, Paul Eggert, Greg KH, LKML, 34235

On Sat, 2 Feb 2019, Alan Mackenzie wrote:
> Hello, Thomas.
> 
> Thanks for such a rapid reply!
> 
> On Fri, Feb 01, 2019 at 23:04:48 +0100, Thomas Gleixner wrote:
> > Hello Alan,
> 
> > On Fri, 1 Feb 2019, Alan Mackenzie wrote:
> > > 0e334db6bb4b1fd1e2d72c1f3d8f004313cd9f94
> > > posix-timers: Fix division by zero bug
> > > Committed: 2018-12-17 17:35:45 +0100
> 
> > > With this patch in place I am seeing problems with glibc's function
> > > timer_create.  I am an Emacs maintainer, and saw these problems whilst
> > > investigating Emacs bug #34235 "27.0.50; lisp profiler does not work".
> 
> > > Emacs's profiler fails in kernel 4.19.13, but works in a version of
> > > 4.19.13 with the patch reversed, otherwise unchanged.  My current version
> > > of glibc is 2.27-r6 (I think the "-r6" comes from Gentoo, my distro).
> 
> > Please upgrade to 4.19.19. The issue should be fixed there with the
> > backported variant of
> 
> >    93ad0fc088c5 ("posix-cpu-timers: Unbreak timer rearming")
> 
> > Commit 21c0d1621b8d4b in 4.19.19
> 
> I've just built and installed Linux 4.19.19, and it does indeed solve
> the Emacs profiler bug, #34235.  :-)
> 
> I see that the patch has been installed in 4.20.6, 4.19.19, and 4.14.97.
> Are there any plans to install it into 4.9.x, the other live long term
> support branch?  The reason I ask is to make an entry into Emacs's
> PROBLEMS file, telling users and distributions which kernel versions to
> upgrade to.

4.9 doesn't have the offending commit AFAICT.

Thanks,

	tglx





^ permalink raw reply	[flat|nested] 19+ messages in thread

* bug#34235: 0e334db6bb4b1fd1e2d72c1f3d8f004313cd9f94 (posix-timers: Fix division by zero bug). Problems with glibc.
       [not found]       ` <alpine.DEB.2.21.1902041724200.3006@nanos.tec.linutronix.de>
@ 2019-02-05 13:54         ` Alan Mackenzie
  0 siblings, 0 replies; 19+ messages in thread
From: Alan Mackenzie @ 2019-02-05 13:54 UTC (permalink / raw)
  To: Thomas Gleixner; +Cc: Alex Branham, Paul Eggert, Greg KH, LKML, 34235

Hello, Thomas.

On Mon, Feb 04, 2019 at 17:25:11 +0000, Thomas Gleixner wrote:
> On Sat, 2 Feb 2019, Alan Mackenzie wrote:

[ .... ]

> > I've just built and installed Linux 4.19.19, and it does indeed solve
> > the Emacs profiler bug, #34235.  :-)

> > I see that the patch has been installed in 4.20.6, 4.19.19, and 4.14.97.
> > Are there any plans to install it into 4.9.x, the other live long term
> > support branch?  The reason I ask is to make an entry into Emacs's
> > PROBLEMS file, telling users and distributions which kernel versions to
> > upgrade to.

> 4.9 doesn't have the offending commit AFAICT.

OK, thanks very much!  I've put these three version numbers into the
message in Emacs's PROBLEMS file.

I think we're finished, now.

> Thanks,

> 	tglx

-- 
Alan Mackenzie (Nuremberg, Germany).





^ permalink raw reply	[flat|nested] 19+ messages in thread

end of thread, other threads:[~2019-02-05 13:54 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-01-28 18:34 bug#34235: 27.0.50; lisp profiler does not work Alex Branham
2019-01-29 16:06 ` Eli Zaretskii
2019-01-30 13:33   ` Alan Mackenzie
2019-01-30 15:40     ` Alex Branham
2019-01-30 16:15       ` Alan Mackenzie
2019-01-30 16:23         ` Alex Branham
2019-01-30 16:43           ` Eli Zaretskii
2019-01-30 20:47             ` Alex Branham
2019-01-30 16:41         ` Eli Zaretskii
2019-01-30 15:48     ` Eli Zaretskii
2019-02-01 21:47 ` bug#34235: 0e334db6bb4b1fd1e2d72c1f3d8f004313cd9f94 (posix-timers: Fix division by zero bug). Problems with glibc Alan Mackenzie
2019-02-01 22:04   ` Thomas Gleixner
     [not found]   ` <alpine.DEB.2.21.1902012301310.8200@nanos.tec.linutronix.de>
2019-02-02 10:44     ` Alan Mackenzie
     [not found]     ` <20190202104404.GA1067@ACM>
2019-02-04 17:25       ` Thomas Gleixner
     [not found]       ` <alpine.DEB.2.21.1902041724200.3006@nanos.tec.linutronix.de>
2019-02-05 13:54         ` Alan Mackenzie
2019-02-02  2:07 ` bug#34235: 0e334db6bb4b1fd1e2d72c1f3d8f004313cd9f94 (posix-timers: Fix, " Paul Eggert
2019-02-02  9:21   ` Thomas Gleixner
2019-02-02 14:02   ` Alex Branham
     [not found]   ` <alpine.DEB.2.21.1902021020020.8200@nanos.tec.linutronix.de>
2019-02-03  6:28     ` Paul Eggert

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).