unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* Hang in make check
@ 2021-03-27 22:14 Jeffrey Walton
  2021-03-28  8:27 ` Michael Albinus
  0 siblings, 1 reply; 20+ messages in thread
From: Jeffrey Walton @ 2021-03-27 22:14 UTC (permalink / raw)
  To: Emacs developers

Hi Everyone,

I'm testing Emacs 27.2 on both Linux and Apple. 'make check' is
hanging somewhere around this test:

HOME=/nonexistent EMACSLOADPATH= LC_ALL=C
EMACS_TEST_DIRECTORY=/home/jwalton/Build-Scripts/emacs-27.2/test
"../src/emacs"  --no-init-file --no-site-file --no-site-lisp -L ":."
\
  -l ert  -l lisp/autorevert-tests \
  --batch --eval '(ert-run-tests-batch-and-exit (quote (not (or (tag
:expensive-test) (tag :unstable)))))' > lisp/autorevert-tests.log 2>&1
|| { STAT=$?; cat lisp/autorevert-tests.log; exit $STAT; }
<hang here>

CTRL+C is needed to break into the test.

Jeff



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

* Re: Hang in make check
  2021-03-27 22:14 Hang in make check Jeffrey Walton
@ 2021-03-28  8:27 ` Michael Albinus
  2021-03-28  9:02   ` Jeffrey Walton
  0 siblings, 1 reply; 20+ messages in thread
From: Michael Albinus @ 2021-03-28  8:27 UTC (permalink / raw)
  To: Jeffrey Walton; +Cc: Emacs developers

Jeffrey Walton <noloader@gmail.com> writes:

> Hi Everyone,

Hi Jeff,

> I'm testing Emacs 27.2 on both Linux and Apple. 'make check' is
> hanging somewhere around this test:
>
> HOME=/nonexistent EMACSLOADPATH= LC_ALL=C
> EMACS_TEST_DIRECTORY=/home/jwalton/Build-Scripts/emacs-27.2/test
> "../src/emacs"  --no-init-file --no-site-file --no-site-lisp -L ":."
> \
>   -l ert  -l lisp/autorevert-tests \
>   --batch --eval '(ert-run-tests-batch-and-exit (quote (not (or (tag
> :expensive-test) (tag :unstable)))))' > lisp/autorevert-tests.log 2>&1
> || { STAT=$?; cat lisp/autorevert-tests.log; exit $STAT; }
> <hang here>
>
> CTRL+C is needed to break into the test.

Does there exist the file test/lisp/autorevert-tests.log? Could you pls
show it?

Is Emacs compiled with file notifications? Which one? You can determine
it with

--8<---------------cut here---------------start------------->8---
# emacs -Q --batch -l filenotify --eval '(message "%s" file-notify--library)'
--8<---------------cut here---------------end--------------->8---

> Jeff

Best regards, Michael.



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

* Re: Hang in make check
  2021-03-28  8:27 ` Michael Albinus
@ 2021-03-28  9:02   ` Jeffrey Walton
  2021-03-28 12:14     ` Michael Albinus
  0 siblings, 1 reply; 20+ messages in thread
From: Jeffrey Walton @ 2021-03-28  9:02 UTC (permalink / raw)
  To: Michael Albinus; +Cc: Emacs developers

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

On Sun, Mar 28, 2021 at 4:27 AM Michael Albinus <michael.albinus@gmx.de> wrote:
>
> Jeffrey Walton <noloader@gmail.com> writes:
>
> > I'm testing Emacs 27.2 on both Linux and Apple. 'make check' is
> > hanging somewhere around this test:
> >
> > HOME=/nonexistent EMACSLOADPATH= LC_ALL=C
> > EMACS_TEST_DIRECTORY=/home/jwalton/Build-Scripts/emacs-27.2/test
> > "../src/emacs"  --no-init-file --no-site-file --no-site-lisp -L ":."
> > \
> >   -l ert  -l lisp/autorevert-tests \
> >   --batch --eval '(ert-run-tests-batch-and-exit (quote (not (or (tag
> > :expensive-test) (tag :unstable)))))' > lisp/autorevert-tests.log 2>&1
> > || { STAT=$?; cat lisp/autorevert-tests.log; exit $STAT; }
> > <hang here>
> >
> > CTRL+C is needed to break into the test.
>
> Does there exist the file test/lisp/autorevert-tests.log? Could you pls
> show it?

I'm on Linux and experiencing the hang.

$ cat test/lisp/autorevert-tests.log
Running 3 tests (2021-03-28 04:55:00-0400, selector `(not (or (tag
:expensive-test) (tag :unstable)))')

> Is Emacs compiled with file notifications? Which one? You can determine
> it with
>
> --8<---------------cut here---------------start------------->8---
> # emacs -Q --batch -l filenotify --eval '(message "%s" file-notify--library)'
> --8<---------------cut here---------------end--------------->8---

It appears there are no notifications:

emacs-27.2$ src/emacs -Q --batch -l filenotify --eval '(message "%s"
file-notify--library)'
nil

I also attached config.log. I was trying to configure an 'emacs-nox'.

Jeff

[-- Attachment #2: emacs-config.log.zip --]
[-- Type: application/zip, Size: 45191 bytes --]

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

* Re: Hang in make check
  2021-03-28  9:02   ` Jeffrey Walton
@ 2021-03-28 12:14     ` Michael Albinus
  2021-03-28 17:28       ` Jeffrey Walton
  0 siblings, 1 reply; 20+ messages in thread
From: Michael Albinus @ 2021-03-28 12:14 UTC (permalink / raw)
  To: Jeffrey Walton; +Cc: Emacs developers

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

Jeffrey Walton <noloader@gmail.com> writes:

Hi Jeff,

> It was created by GNU Emacs configure 27.2, which was
> generated by GNU Autoconf 2.69.  Invocation command line was
>
>   $ ./configure --build=x86_64-pc-linux-gnu --prefix=/usr/local --libdir=/usr/local/lib --without-all --with-xml2 --with-json --with-libgmp --with-zlib --without-gnutls --with-selinux

With this configuration, I could reproduce the problem. The appended
patch fixes this for me, could you pls check?

(There's no need to panic about Emacs 27.2, the patch is in
autorevert-tests.el)

> Jeff

Best regards, Michael.


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: Type: text/x-patch, Size: 932 bytes --]

*** /tmp/ediffv7q1Ft	2021-03-28 14:10:16.784777579 +0200
--- /home/albinus/src/emacs-27/test/lisp/autorevert-tests.el	2021-03-28 14:07:52.481983870 +0200
***************
*** 131,137 ****
                         (format-message
                          "Reverting buffer `%s'\\." (buffer-name buffer))
                         auto-revert--messages)))
!       (if (with-current-buffer buffer auto-revert-use-notify)
            (read-event nil nil 0.1)
          (sleep-for 0.1)))))

--- 131,139 ----
                         (format-message
                          "Reverting buffer `%s'\\." (buffer-name buffer))
                         auto-revert--messages)))
!       (if (and (or file-notify--library
!                    (file-remote-p temporary-file-directory))
!                (with-current-buffer buffer auto-revert-use-notify))
            (read-event nil nil 0.1)
          (sleep-for 0.1)))))


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

* Re: Hang in make check
  2021-03-28 12:14     ` Michael Albinus
@ 2021-03-28 17:28       ` Jeffrey Walton
  2021-03-28 19:11         ` Michael Albinus
  2021-03-28 19:20         ` Lars Ingebrigtsen
  0 siblings, 2 replies; 20+ messages in thread
From: Jeffrey Walton @ 2021-03-28 17:28 UTC (permalink / raw)
  To: Michael Albinus; +Cc: Emacs developers

On Sun, Mar 28, 2021 at 8:14 AM Michael Albinus <michael.albinus@gmx.de> wrote:
>
> Jeffrey Walton <noloader@gmail.com> writes:
>
> Hi Jeff,
>
> > It was created by GNU Emacs configure 27.2, which was
> > generated by GNU Autoconf 2.69.  Invocation command line was
> >
> >   $ ./configure --build=x86_64-pc-linux-gnu --prefix=/usr/local --libdir=/usr/local/lib --without-all --with-xml2 --with-json --with-libgmp --with-zlib --without-gnutls --with-selinux
>
> With this configuration, I could reproduce the problem. The appended
> patch fixes this for me, could you pls check?
>
> (There's no need to panic about Emacs 27.2, the patch is in
> autorevert-tests.el)

Thanks Michael. The patch clears the hang.

Here's one more hang. It happens on both Linux and Apple over SSH. (I
SSH into most of my machines).

  --batch --eval '(ert-run-tests-batch-and-exit (quote (not (or (tag
:expensive-test) (tag :unstable)))))' > src/keyboard-tests.log 2>&1 ||
{ STAT=$?; cat src/keyboard-tests.log; exit $STAT; }

Jeff



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

* Re: Hang in make check
  2021-03-28 17:28       ` Jeffrey Walton
@ 2021-03-28 19:11         ` Michael Albinus
  2021-03-28 19:20         ` Lars Ingebrigtsen
  1 sibling, 0 replies; 20+ messages in thread
From: Michael Albinus @ 2021-03-28 19:11 UTC (permalink / raw)
  To: Jeffrey Walton; +Cc: Emacs developers

Jeffrey Walton <noloader@gmail.com> writes:

Hi Jeff,

>> With this configuration, I could reproduce the problem. The appended
>> patch fixes this for me, could you pls check?
>
> Thanks Michael. The patch clears the hang.

Thanks for the confirmation. I've pushed the patch to the emacs-27
branch; will appear with Emacs 27.3 (if this happens to be released) or 28.1.

> Here's one more hang. It happens on both Linux and Apple over SSH. (I
> SSH into most of my machines).
>
>   --batch --eval '(ert-run-tests-batch-and-exit (quote (not (or (tag
> :expensive-test) (tag :unstable)))))' > src/keyboard-tests.log 2>&1 ||
> { STAT=$?; cat src/keyboard-tests.log; exit $STAT; }

I'll take a look on it tomorrow. I cannot promise too much 'cos this is
not my area; hopefully somebody beats me in fixing this.

> Jeff

Best regards, Michael.



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

* Re: Hang in make check
  2021-03-28 17:28       ` Jeffrey Walton
  2021-03-28 19:11         ` Michael Albinus
@ 2021-03-28 19:20         ` Lars Ingebrigtsen
  2021-03-28 19:33           ` Jeffrey Walton
  1 sibling, 1 reply; 20+ messages in thread
From: Lars Ingebrigtsen @ 2021-03-28 19:20 UTC (permalink / raw)
  To: Jeffrey Walton; +Cc: Michael Albinus, Emacs developers

Jeffrey Walton <noloader@gmail.com> writes:

> Here's one more hang. It happens on both Linux and Apple over SSH. (I
> SSH into most of my machines).
>
>   --batch --eval '(ert-run-tests-batch-and-exit (quote (not (or (tag
> :expensive-test) (tag :unstable)))))' > src/keyboard-tests.log 2>&1 ||
> { STAT=$?; cat src/keyboard-tests.log; exit $STAT; }

If this is the same as "cd test; make keyboard-tests" I'm unable to
reproduce it on either Debian/bulleseye or Macos/catalina (via ssh):

[larsi@stories ~/src/emacs/emacs-27/test]$ make keyboard-tests
make[1]: Entering directory '/home/larsi/src/emacs/emacs-27/test'
  GEN      src/keyboard-tests.log
Running 1 tests (2021-03-28 21:19:28+0200, selector `(not (tag :unstable))')
   passed  1/1  keyboard-unread-command-events (1.001370 sec)

Ran 1 tests, 1 results as expected, 0 unexpected (2021-03-28 21:19:29+0200, 1.001741 sec)

make[1]: Leaving directory '/home/larsi/src/emacs/emacs-27/test'


-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no



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

* Re: Hang in make check
  2021-03-28 19:20         ` Lars Ingebrigtsen
@ 2021-03-28 19:33           ` Jeffrey Walton
  2021-03-28 19:42             ` Lars Ingebrigtsen
  0 siblings, 1 reply; 20+ messages in thread
From: Jeffrey Walton @ 2021-03-28 19:33 UTC (permalink / raw)
  To: Lars Ingebrigtsen; +Cc: Emacs developers

On Sun, Mar 28, 2021 at 3:20 PM Lars Ingebrigtsen <larsi@gnus.org> wrote:
>
> Jeffrey Walton <noloader@gmail.com> writes:
>
> > Here's one more hang. It happens on both Linux and Apple over SSH. (I
> > SSH into most of my machines).
> >
> >   --batch --eval '(ert-run-tests-batch-and-exit (quote (not (or (tag
> > :expensive-test) (tag :unstable)))))' > src/keyboard-tests.log 2>&1 ||
> > { STAT=$?; cat src/keyboard-tests.log; exit $STAT; }
>
> If this is the same as "cd test; make keyboard-tests" I'm unable to
> reproduce it on either Debian/bulleseye or Macos/catalina (via ssh):
>
> [larsi@stories ~/src/emacs/emacs-27/test]$ make keyboard-tests
> make[1]: Entering directory '/home/larsi/src/emacs/emacs-27/test'
>   GEN      src/keyboard-tests.log
> Running 1 tests (2021-03-28 21:19:28+0200, selector `(not (tag :unstable))')
>    passed  1/1  keyboard-unread-command-events (1.001370 sec)
>
> Ran 1 tests, 1 results as expected, 0 unexpected (2021-03-28 21:19:29+0200, 1.001741 sec)

Thanks Lars.

In case it matters, here's what I configure with:

  --without-all
  --with-xml2
  --with-json
  --with-libgmp
  --with-zlib

Jeff



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

* Re: Hang in make check
  2021-03-28 19:33           ` Jeffrey Walton
@ 2021-03-28 19:42             ` Lars Ingebrigtsen
  2021-03-28 19:51               ` Lars Ingebrigtsen
  0 siblings, 1 reply; 20+ messages in thread
From: Lars Ingebrigtsen @ 2021-03-28 19:42 UTC (permalink / raw)
  To: Jeffrey Walton; +Cc: Emacs developers

Jeffrey Walton <noloader@gmail.com> writes:

> In case it matters, here's what I configure with:
>
>   --without-all
>   --with-xml2
>   --with-json
>   --with-libgmp
>   --with-zlib

Ah; "make keyboard-tests" with those options does indeed hang (when
testing on Debian/bullseye).

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no



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

* Re: Hang in make check
  2021-03-28 19:42             ` Lars Ingebrigtsen
@ 2021-03-28 19:51               ` Lars Ingebrigtsen
  2021-03-29  4:48                 ` Eli Zaretskii
  0 siblings, 1 reply; 20+ messages in thread
From: Lars Ingebrigtsen @ 2021-03-28 19:51 UTC (permalink / raw)
  To: Jeffrey Walton; +Cc: Emacs developers

Lars Ingebrigtsen <larsi@gnus.org> writes:

> Ah; "make keyboard-tests" with those options does indeed hang (when
> testing on Debian/bullseye).

Seems to have something to do with timers and timeouts.  This hangs:

(read-event nil nil 1)

when run in batch mode, apparently (instead of timing out after one
second).

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no



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

* Re: Hang in make check
  2021-03-28 19:51               ` Lars Ingebrigtsen
@ 2021-03-29  4:48                 ` Eli Zaretskii
  2021-03-29 11:00                   ` Lars Ingebrigtsen
  0 siblings, 1 reply; 20+ messages in thread
From: Eli Zaretskii @ 2021-03-29  4:48 UTC (permalink / raw)
  To: Lars Ingebrigtsen; +Cc: noloader, emacs-devel

> From: Lars Ingebrigtsen <larsi@gnus.org>
> Date: Sun, 28 Mar 2021 21:51:29 +0200
> Cc: Emacs developers <emacs-devel@gnu.org>
> 
> Lars Ingebrigtsen <larsi@gnus.org> writes:
> 
> > Ah; "make keyboard-tests" with those options does indeed hang (when
> > testing on Debian/bullseye).
> 
> Seems to have something to do with timers and timeouts.  This hangs:
> 
> (read-event nil nil 1)
> 
> when run in batch mode, apparently (instead of timing out after one
> second).

But that's not what the test does (if it did, it would have hanged for
everyone, regardless of the build details).  The test does:

  (let ((unread-command-events nil))
    (should (equal (progn (push ?\C-a unread-command-events)
                          (read-event nil nil 1))
                   ?\C-a))

When there's some stuff in unread-command-events, read-event should
return immediately with the first element of what's in
unread-command-events.  Why doesn't it happen in that build?  Can you
step through the code and tell why not?



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

* Re: Hang in make check
  2021-03-29  4:48                 ` Eli Zaretskii
@ 2021-03-29 11:00                   ` Lars Ingebrigtsen
  2021-03-29 11:04                     ` Eli Zaretskii
  0 siblings, 1 reply; 20+ messages in thread
From: Lars Ingebrigtsen @ 2021-03-29 11:00 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: noloader, emacs-devel

Eli Zaretskii <eliz@gnu.org> writes:

>> Seems to have something to do with timers and timeouts.  This hangs:
>> 
>> (read-event nil nil 1)
>> 
>> when run in batch mode, apparently (instead of timing out after one
>> second).
>
> But that's not what the test does (if it did, it would have hanged for
> everyone, regardless of the build details).

It's not what the test does -- I was stating that this form hangs (when
in batch mode in this Emacs configuration).

I have not debugged further.

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no



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

* Re: Hang in make check
  2021-03-29 11:00                   ` Lars Ingebrigtsen
@ 2021-03-29 11:04                     ` Eli Zaretskii
  2021-03-29 11:24                       ` Eli Zaretskii
  0 siblings, 1 reply; 20+ messages in thread
From: Eli Zaretskii @ 2021-03-29 11:04 UTC (permalink / raw)
  To: Lars Ingebrigtsen; +Cc: noloader, emacs-devel

> From: Lars Ingebrigtsen <larsi@gnus.org>
> Cc: noloader@gmail.com,  emacs-devel@gnu.org
> Date: Mon, 29 Mar 2021 13:00:39 +0200
> 
> Eli Zaretskii <eliz@gnu.org> writes:
> 
> >> Seems to have something to do with timers and timeouts.  This hangs:
> >> 
> >> (read-event nil nil 1)
> >> 
> >> when run in batch mode, apparently (instead of timing out after one
> >> second).
> >
> > But that's not what the test does (if it did, it would have hanged for
> > everyone, regardless of the build details).
> 
> It's not what the test does -- I was stating that this form hangs (when
> in batch mode in this Emacs configuration).

Sorry for my misunderstanding.



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

* Re: Hang in make check
  2021-03-29 11:04                     ` Eli Zaretskii
@ 2021-03-29 11:24                       ` Eli Zaretskii
  2021-03-30 13:29                         ` Lars Ingebrigtsen
  0 siblings, 1 reply; 20+ messages in thread
From: Eli Zaretskii @ 2021-03-29 11:24 UTC (permalink / raw)
  To: larsi; +Cc: noloader, emacs-devel

> Date: Mon, 29 Mar 2021 14:04:47 +0300
> From: Eli Zaretskii <eliz@gnu.org>
> Cc: noloader@gmail.com, emacs-devel@gnu.org
> 
> > >> Seems to have something to do with timers and timeouts.  This hangs:
> > >> 
> > >> (read-event nil nil 1)
> > >> 
> > >> when run in batch mode, apparently (instead of timing out after one
> > >> second).
> > >
> > > But that's not what the test does (if it did, it would have hanged for
> > > everyone, regardless of the build details).
> > 
> > It's not what the test does -- I was stating that this form hangs (when
> > in batch mode in this Emacs configuration).
> 
> Sorry for my misunderstanding.

I think the place where read-event hangs in that configuration is in
this fragment from keyboard.c:kbd_buffer_get_event:

 #if !defined HAVE_DBUS && !defined USE_FILE_NOTIFY && !defined THREADS_ENABLED
   if (noninteractive
       /* In case we are running as a daemon, only do this before
	  detaching from the terminal.  */
       || (IS_DAEMON && DAEMON_RUNNING))
     {
       int c = getchar ();  <<<<<<<<<<<<<<<<<<<<<<<<<<
       XSETINT (obj, c);
       *kbp = current_kboard;
       return obj;
     }
 #endif	/* !defined HAVE_DBUS && !defined USE_FILE_NOTIFY && !defined THREADS_ENABLED  */

But we still need to understand why this happens (if that's what
happens) in the real test, because AFAIU when unread-command-events is
non-nil, we were not supposed to get to this place, but instead return
the event in unread-command-events.



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

* Re: Hang in make check
  2021-03-29 11:24                       ` Eli Zaretskii
@ 2021-03-30 13:29                         ` Lars Ingebrigtsen
  2021-03-30 13:46                           ` Eli Zaretskii
  0 siblings, 1 reply; 20+ messages in thread
From: Lars Ingebrigtsen @ 2021-03-30 13:29 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: noloader, emacs-devel

Eli Zaretskii <eliz@gnu.org> writes:

> I think the place where read-event hangs in that configuration is in
> this fragment from keyboard.c:kbd_buffer_get_event:

Yup; looks likely.

> But we still need to understand why this happens (if that's what
> happens) in the real test, because AFAIU when unread-command-events is
> non-nil, we were not supposed to get to this place, but instead return
> the event in unread-command-events.

The test code snippet that's actually hanging is this:

(should (equal (progn (run-with-timer
                       1 nil
                       (lambda () (push '(t . ?\C-b) unread-command-events)))
                      (read-event nil nil 2))
               ?\C-b))

So the `read-event' hangs indefinitely, and then apparently never
discovers that the run-with-timer has pushed something unto
unread-command-events (because it's in that getchar?), I think.

I haven't had time to actually try to debug this; hopefully I'll find
some more time later this week...

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no



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

* Re: Hang in make check
  2021-03-30 13:29                         ` Lars Ingebrigtsen
@ 2021-03-30 13:46                           ` Eli Zaretskii
  2021-03-30 14:14                             ` Andreas Schwab
  0 siblings, 1 reply; 20+ messages in thread
From: Eli Zaretskii @ 2021-03-30 13:46 UTC (permalink / raw)
  To: Lars Ingebrigtsen; +Cc: noloader, emacs-devel

> From: Lars Ingebrigtsen <larsi@gnus.org>
> Cc: noloader@gmail.com,  emacs-devel@gnu.org
> Date: Tue, 30 Mar 2021 15:29:33 +0200
> 
> The test code snippet that's actually hanging is this:
> 
> (should (equal (progn (run-with-timer
>                        1 nil
>                        (lambda () (push '(t . ?\C-b) unread-command-events)))
>                       (read-event nil nil 2))
>                ?\C-b))
> 
> So the `read-event' hangs indefinitely, and then apparently never
> discovers that the run-with-timer has pushed something unto
> unread-command-events (because it's in that getchar?), I think.

Yes.  It's actually worse: _because_ the getchar call hangs, Emacs
doesn't get to running the timer function at all.

So I think the code needs to be modified, or maybe simply disabled
when system-configuration-features includes neither DBUS nor NOTIFY
nor THREADS.



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

* Re: Hang in make check
  2021-03-30 13:46                           ` Eli Zaretskii
@ 2021-03-30 14:14                             ` Andreas Schwab
  2021-03-30 14:33                               ` Eli Zaretskii
  0 siblings, 1 reply; 20+ messages in thread
From: Andreas Schwab @ 2021-03-30 14:14 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: noloader, Lars Ingebrigtsen, emacs-devel

On Mär 30 2021, Eli Zaretskii wrote:

> Yes.  It's actually worse: _because_ the getchar call hangs, Emacs
> doesn't get to running the timer function at all.
>
> So I think the code needs to be modified, or maybe simply disabled
> when system-configuration-features includes neither DBUS nor NOTIFY
> nor THREADS.

Perhaps that getchar call should be removed altogether?

Andreas.

-- 
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 7578 EB47 D4E5 4D69 2510  2552 DF73 E780 A9DA AEC1
"And now for something completely different."



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

* Re: Hang in make check
  2021-03-30 14:14                             ` Andreas Schwab
@ 2021-03-30 14:33                               ` Eli Zaretskii
  2021-03-30 15:16                                 ` Andreas Schwab
  0 siblings, 1 reply; 20+ messages in thread
From: Eli Zaretskii @ 2021-03-30 14:33 UTC (permalink / raw)
  To: Andreas Schwab; +Cc: noloader, larsi, emacs-devel

> From: Andreas Schwab <schwab@linux-m68k.org>
> Cc: Lars Ingebrigtsen <larsi@gnus.org>,  noloader@gmail.com,
>   emacs-devel@gnu.org
> Date: Tue, 30 Mar 2021 16:14:18 +0200
> 
> On Mär 30 2021, Eli Zaretskii wrote:
> 
> > Yes.  It's actually worse: _because_ the getchar call hangs, Emacs
> > doesn't get to running the timer function at all.
> >
> > So I think the code needs to be modified, or maybe simply disabled
> > when system-configuration-features includes neither DBUS nor NOTIFY
> > nor THREADS.
> 
> Perhaps that getchar call should be removed altogether?

How will keyboard input be received then in those configurations?

This is a corner use case -- why would someone build Emacs with all
those features disabled, and then want to run the test suite?  I'm not
sure we should bother too much about that case.



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

* Re: Hang in make check
  2021-03-30 14:33                               ` Eli Zaretskii
@ 2021-03-30 15:16                                 ` Andreas Schwab
  2021-03-30 15:33                                   ` Eli Zaretskii
  0 siblings, 1 reply; 20+ messages in thread
From: Andreas Schwab @ 2021-03-30 15:16 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: noloader, larsi, emacs-devel

On Mär 30 2021, Eli Zaretskii wrote:

>> From: Andreas Schwab <schwab@linux-m68k.org>
>> Cc: Lars Ingebrigtsen <larsi@gnus.org>,  noloader@gmail.com,
>>   emacs-devel@gnu.org
>> Date: Tue, 30 Mar 2021 16:14:18 +0200
>> 
>> On Mär 30 2021, Eli Zaretskii wrote:
>> 
>> > Yes.  It's actually worse: _because_ the getchar call hangs, Emacs
>> > doesn't get to running the timer function at all.
>> >
>> > So I think the code needs to be modified, or maybe simply disabled
>> > when system-configuration-features includes neither DBUS nor NOTIFY
>> > nor THREADS.
>> 
>> Perhaps that getchar call should be removed altogether?
>
> How will keyboard input be received then in those configurations?

The same way as in all other configurations?  After all, the majority of
the emacs installations don't include that block of code anyway.

Andreas.

-- 
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 7578 EB47 D4E5 4D69 2510  2552 DF73 E780 A9DA AEC1
"And now for something completely different."



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

* Re: Hang in make check
  2021-03-30 15:16                                 ` Andreas Schwab
@ 2021-03-30 15:33                                   ` Eli Zaretskii
  0 siblings, 0 replies; 20+ messages in thread
From: Eli Zaretskii @ 2021-03-30 15:33 UTC (permalink / raw)
  To: Andreas Schwab; +Cc: noloader, larsi, emacs-devel

> From: Andreas Schwab <schwab@linux-m68k.org>
> Cc: larsi@gnus.org,  noloader@gmail.com,  emacs-devel@gnu.org
> Date: Tue, 30 Mar 2021 17:16:35 +0200
> 
> >> Perhaps that getchar call should be removed altogether?
> >
> > How will keyboard input be received then in those configurations?
> 
> The same way as in all other configurations?  After all, the majority of
> the emacs installations don't include that block of code anyway.

If tty_read_avail_input is universally supported without blocking,
maybe we should.



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

end of thread, other threads:[~2021-03-30 15:33 UTC | newest]

Thread overview: 20+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-03-27 22:14 Hang in make check Jeffrey Walton
2021-03-28  8:27 ` Michael Albinus
2021-03-28  9:02   ` Jeffrey Walton
2021-03-28 12:14     ` Michael Albinus
2021-03-28 17:28       ` Jeffrey Walton
2021-03-28 19:11         ` Michael Albinus
2021-03-28 19:20         ` Lars Ingebrigtsen
2021-03-28 19:33           ` Jeffrey Walton
2021-03-28 19:42             ` Lars Ingebrigtsen
2021-03-28 19:51               ` Lars Ingebrigtsen
2021-03-29  4:48                 ` Eli Zaretskii
2021-03-29 11:00                   ` Lars Ingebrigtsen
2021-03-29 11:04                     ` Eli Zaretskii
2021-03-29 11:24                       ` Eli Zaretskii
2021-03-30 13:29                         ` Lars Ingebrigtsen
2021-03-30 13:46                           ` Eli Zaretskii
2021-03-30 14:14                             ` Andreas Schwab
2021-03-30 14:33                               ` Eli Zaretskii
2021-03-30 15:16                                 ` Andreas Schwab
2021-03-30 15:33                                   ` Eli Zaretskii

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).