GNU bug report logs - #61667
29.0.60; Failure to redisplay

Previous Next

Package: emacs;

Reported by: Dmitry Gutov <dgutov <at> yandex.ru>

Date: Tue, 21 Feb 2023 02:55:01 UTC

Severity: normal

Found in version 29.0.60

Full log


Message #386 received at 61667 <at> debbugs.gnu.org (full text, mbox):

From: Dmitry Gutov <dgutov <at> yandex.ru>
To: Po Lu <luangruo <at> yahoo.com>
Cc: 61667 <at> debbugs.gnu.org, Gregory Heytings <gregory <at> heytings.org>,
 Eli Zaretskii <eliz <at> gnu.org>
Subject: Re: bug#61667: 29.0.60; Failure to redisplay
Date: Wed, 1 Mar 2023 13:15:30 +0200
[Message part 1 (text/plain, inline)]
On 01/03/2023 06:50, Po Lu wrote:
> OK, I have to be 100% sure we're not missing something here.  With
> stderr redirected to a file, and the following instrumentation applied::
> 
> diff --git a/src/xfns.c b/src/xfns.c
> index 9e004f6a678..b4bef7f38fd 100644
> --- a/src/xfns.c
> +++ b/src/xfns.c
> @@ -2232,6 +2232,18 @@ x_set_name_internal (struct frame *f, Lisp_Object name)
>   			 SDATA (encoded_icon_name),
>   			 SBYTES (encoded_icon_name));
>   
> +	long long
> +        current_ust (void)
> +	{
> +	  struct timespec ts;
> +
> +	  clock_gettime (CLOCK_MONOTONIC, &ts);
> +	  return ts.tv_sec * 1000000 + ts.tv_nsec / 1000;
> +	}
> +
> +	fprintf (stderr, "x_set_title: %s, %lld\n",
> +		 SSDATA (name), current_ust ());
> +
>   	if (do_free_icon_value)
>   	  xfree (icon.value);
>   	if (do_free_text_value)
> diff --git a/src/xterm.c b/src/xterm.c
> index 70bcb67d80d..c7ad1bbb722 100644
> --- a/src/xterm.c
> +++ b/src/xterm.c
> @@ -7439,6 +7439,18 @@ show_back_buffer (struct frame *f)
>         swap_info.swap_action = XdbeCopied;
>         XdbeSwapBuffers (FRAME_X_DISPLAY (f), &swap_info, 1);
>   
> +	long long
> +        current_ust (void)
> +	{
> +	  struct timespec ts;
> +
> +	  clock_gettime (CLOCK_MONOTONIC, &ts);
> +	  return ts.tv_sec * 1000000 + ts.tv_nsec / 1000;
> +	}
> +
> +	fprintf (stderr, "show_back_buffer: %lld\n",
> +		 current_ust ());
> +
>   #if defined HAVE_XSYNC && !defined USE_GTK && defined HAVE_CLOCK_GETTIME
>         /* Finish the frame here.  */
>         x_sync_update_finish (f);
> 
> do you see a significant amount of time taken between setting the title
> and swapping buffers?

It seemed more difficult to reproduce with this patch, but still I 
managed to hit that twice over a couple of dozen tries.

Attached are three logs: two when the problem was hit, and one "normal" 
for comparison.
[err.log (text/x-log, attachment)]
[err-2.log (text/x-log, attachment)]
[err-okay.log (text/x-log, attachment)]

This bug report was last modified 1 year and 63 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.