GNU bug report logs -
#19776
25.0.50; HTML rendering is very slow
Previous Next
Reported by: rms <at> gnu.org
Date: Wed, 4 Feb 2015 23:04:02 UTC
Severity: minor
Merged with 22846
Found in versions 25.0.50, 25.0.91
Fixed in version 29.1
Done: Lars Ingebrigtsen <larsi <at> gnus.org>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
> From: Lars Ingebrigtsen <larsi <at> gnus.org>
> Cc: Eli Zaretskii <eliz <at> gnu.org>, stefan <at> marxist.se, rms <at> gnu.org,
> 19776 <at> debbugs.gnu.org
> Date: Mon, 25 Oct 2021 00:28:12 +0200
>
> Stefan Monnier <monnier <at> iro.umontreal.ca> writes:
>
> > Basically all loops should call `maybe_quit`, so the issue is probably
> > not that `maybe_quit` is not called often enough, but that for some
> > reason we don't set the vars that it checks or something like that.
>
> I've been trying to follow the logic in how the atimer stuff is supposed
> to work. It registers a special timer fd that sets a timeout, and it's
> supposed to be called back in timerfd_callback. And that happens if I'm
> (for instance) idling in a `sleep-for'.
>
> When Emacs is busy looping, we never get a callback -- presumably
> because we're not reading any file descriptors in that case? But...
> was the idea that this would work in a busy Emacs? I mean, events from
> the keyboard/mouse are able to poke Emacs in a way that it realises that
> it has a pending event to handle, but not the timerfd?
Input events work via SIGIO on X, and SIGIO sets pending_signals, and
then we check the atimers.
I guess this means timerfd is only good for when Emacs is calling
thread_select, i.e. either it's idling or waiting for process output.
So timerfd, if available, should be used together with interval
timers, so that we get SIGALRM when we aren't idle, I guess. Not
either timerfd or interval timers, but both.
This bug report was last modified 3 years and 206 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.