bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#61667: 29.0.60; Failure to redisplay


From: Dmitry Gutov
Subject: bug#61667: 29.0.60; Failure to redisplay
Date: Wed, 1 Mar 2023 13:15:30 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.7.1

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.

Attachment: err.log
Description: Text Data

Attachment: err-2.log
Description: Text Data

Attachment: err-okay.log
Description: Text Data


reply via email to

[Prev in Thread] Current Thread [Next in Thread]