unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: "Simen Endsjø" <simendsjo@gmail.com>
To: Hannes Domani <ssbssa@yahoo.de>
Cc: Eli Zaretskii <eliz@gnu.org>, "corwin@bru.st" <corwin@bru.st>,
	"70914@debbugs.gnu.org" <70914@debbugs.gnu.org>
Subject: bug#70914: 29.3; Crashes often on Windows
Date: Tue, 21 May 2024 22:31:52 +0200	[thread overview]
Message-ID: <CAHkVV6E3_1VwY=iiBL6cxySw-oXF2R3VzxQjDuWKhMV4i2Jusw@mail.gmail.com> (raw)
In-Reply-To: <554078779.3957737.1716318331280@mail.yahoo.com>

Look at that! I tried running it twice, and it reported the same location both
times.

This is when opening my "system.org" file. My D: is a VHD DevDrive
(ReFs), but I have experiencing crashes since way before I migrated to a
DevDrive.

I have some symlinked folders further down the tree too. And Developer Mode
enabled which allows me to register symlinks without admin rights.

I have LongPathsEnabled, ref
https://learn.microsoft.com/en-us/windows/win32/fileio/maximum-file-path-limitation?tabs=registry

    Reading symbols from
D:\tmp\emacs-bug-70914\emacs-extra-checks-no-ucrt\simendsjo-build\bin\emacs.exe...
    (gdb) start --init-directory=d:/.emacs.d
    warning: could not convert 'main' from the host encoding (CP65001)
to UTF-32.
    This normally should not happen, please file a bug report.
    Temporary breakpoint 1 at 0x40015d096: file emacs.c, line 1242, column 8.
    Starting program:
D:\tmp\emacs-bug-70914\emacs-extra-checks-no-ucrt\simendsjo-build\bin\emacs.exe
--init-directory=d:/.emacs.d
    [New Thread 6960.0x77ec]
    [New Thread 6960.0x7634]
    [New Thread 6960.0x22c8]

    Thread 1 hit Temporary breakpoint 1, main (argc=2, argv=0x1d4930)
at emacs.c:1242
    1242      bool no_loadup = false;
                   ^
    (gdb) record btrace pt
    (gdb) c
    Continuing.
    [New Thread 6960.0x5b54]
    [New Thread 6960.0x531c]
    [New Thread 6960.0x6934]
    [Thread 6960.0x6934 exited with code 1]
    [New Thread 6960.0x1a5c]
    [Thread 6960.0x1a5c exited with code 1]
    [New Thread 6960.0x4d10]
    [Thread 6960.0x4d10 exited with code 1]
    [New Thread 6960.0x4148]
    [Thread 6960.0x4148 exited with code 1]
    [New Thread 6960.0x715c]
    [Thread 6960.0x715c exited with code 1]
    [New Thread 6960.0x8a0]
    [New Thread 6960.0x4874]
    [Thread 6960.0x4874 exited with code 1]
    [New Thread 6960.0x6fbc]
    [Thread 6960.0x6fbc exited with code 1]
    [New Thread 6960.0x240]
    [Thread 6960.0x240 exited with code 1]
    [New Thread 6960.0x158c]
    [Thread 6960.0x158c exited with code 1]
    [New Thread 6960.0x212c]
    [New Thread 6960.0x14e4]
    [New Thread 6960.0x6558]
    [New Thread 6960.0x5614]
    [New Thread 6960.0x2010]
    [New Thread 6960.0x234]
    [Thread 6960.0x234 exited with code 1]
    [New Thread 6960.0x7258]
    [Thread 6960.0x7258 exited with code 1]
    [New Thread 6960.0x4db0]
    [Thread 6960.0x4db0 exited with code 1]
    [New Thread 6960.0x29cc]
    [Thread 6960.0x29cc exited with code 1]

    Thread 1 received signal SIGSEGV, Segmentation fault.
    0x0000000000000000 in ?? ()
    (gdb) bt
    #0  0x0000000000000000 in ?? ()
    #1  0x0000000000000000 in ?? ()
    (gdb) reverse-stepi
    0x00007ff7beeabe9d in get_volume_info (name=<unavailable>,
pPath=<unavailable>) at w32.c:3502
    3502    }
            ^
    (gdb) bt
    #0  0x00007ff7beeabe9d in get_volume_info (name=<unavailable>,
pPath=<unavailable>) at w32.c:3502
    #1  0x0000000000000000 in ?? ()
    Backtrace stopped: not enough registers or memory available to
unwind further

On Tue, May 21, 2024 at 9:05 PM Hannes Domani <ssbssa@yahoo.de> wrote:
>
>  Am Dienstag, 21. Mai 2024 um 20:31:37 MESZ hat Eli Zaretskii <eliz@gnu.org> Folgendes geschrieben:
>
> > > From: Simen Endsjø <simendsjo@gmail.com>
> > > Date: Tue, 21 May 2024 19:39:13 +0200
> > > Cc: 70914@debbugs.gnu.org, corwin@bru.st
> > >
> > > > Could you please show the last few
> > > > DLLs loaded by thread 1?
> > >
> > > Heres only Thread 1:
> >
> > Thanks.
> >
> > I'm sorry, I'm out of ideas.  Maybe someone else will have
> > suggestions.  Or maybe we are lucky and someone else reports similar
> > crashes with additional info.  I can only say that Emacs works
> > flawlessly for me on Windows 11 (but it's Emacs I build myself with
> > optional libraries most of which I also built myself).
> >
> > I asked on the GDB list for suggestions how to debug such crashes,
> > maybe someone there will come up with a useful suggestion.
>
> I'm saw it on the GDB list, and tried to reproduce a similar backtrace
> with just zeros.
>
> I came up with this:
> ```
> // compile with -g -O1 -foptimize-sibling-calls
>
> #include <string.h>
>
> int other_function(int x)
> {
>   return x + 3;
> }
>
> int some_function(int size)
> {
>   int (*function_ptr)(int) = &other_function;
>   memset(&function_ptr, 0, size);
>   return function_ptr(5);
> }
>
> int main()
> {
>   int y = some_function(100);
>   return y;
> }
> ```
>
> So when i intentionally break the stack, and make it 'jump' there with
> a sibling call, I get this result in GDB:
> ```
> C:\src\test>gcc -o no-bt.exe no-bt.c -g -O1 -foptimize-sibling-calls
>
> C:\src\test>gdb -q no-bt.exe
> Reading symbols from no-bt.exe...
> (gdb) r
> Starting program: C:\src\test\no-bt.exe
> [New Thread 7632.0x4328]
>
> Thread 1 received signal SIGSEGV, Segmentation fault.
> 0x0000000000000000 in ?? ()
> (gdb) bt
> #0  0x0000000000000000 in ?? ()
> #1  0x0000000000000000 in ?? ()
> (gdb)
> ```
>
> Usually I would say it's not possible to find out anything from here,
> but if you have a recent Win10, and a recent enough Intel CPU (which I
> think you do from what I saw in this ticket), then you could try
> out my GDB build [1] which includes some extra stuff that I haven't
> upstreamed (yet).
>
> In particular I ported 'record btrace pt' [2] to Windows.
>
> With the same example I can do this:
> ```
> C:\src\test>gdb -q no-bt.exe
> Reading symbols from no-bt.exe...
> (gdb) start
> Temporary breakpoint 1 at 0x7ff7a2d2163a: file no-bt.c, line 18.
> Starting program: C:\src\test\no-bt.exe
> [New Thread 3924.0x3afc]
>
> Thread 1 hit Temporary breakpoint 1, main () at no-bt.c:18
> 18      {
> (gdb) record btrace pt
> (gdb) c
> Continuing.
>
> Thread 1 received signal SIGSEGV, Segmentation fault.
> 0x0000000000000000 in ?? ()
> (gdb) bt
> #0  0x0000000000000000 in ?? ()
> #1  0x0000000000000000 in ?? ()
> (gdb) reverse-stepi
> 0x00007ff7a2d21637 in some_function (size=<optimized out>) at no-bt.c:14
> 14        return function_ptr(5);
> (gdb) bt
> #0  0x00007ff7a2d21637 in some_function (size=<optimized out>) at no-bt.c:14
> #1  0x00007ff7a2d2164e in main () at no-bt.c:19
> Backtrace stopped: not enough registers or memory available to unwind further
> (gdb)
> ```
>
> So with the recording it's possible to go back one instruction from the
> crash, and it shows me the location it jumped from.
>
> Note that this is not a 'full' recording, so the amount of steps
> to go back is limited (though the buffer-size for that can be changed
> with e.g.  'set record btrace pt buffer-size 65536'), and you
> can NOT inspect variables while replaying the execution.
>
> But for this kind of problem it's hopefully enough to see what the
> previous instructions were.
>
>
> Hannes
>
>
> [1] https://github.com/ssbssa/gdb/releases
> [2] https://sourceware.org/gdb/current/onlinedocs/gdb.html/Process-Record-and-Replay.html





  parent reply	other threads:[~2024-05-21 20:31 UTC|newest]

Thread overview: 141+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-05-13  8:47 bug#70914: 29.3; Crashes often on Windows Simen Endsjø
2024-05-13 10:35 ` Eli Zaretskii
2024-05-14 10:14   ` Simen Endsjø
2024-05-14 11:23     ` Eli Zaretskii
2024-05-14 12:08       ` Simen Endsjø
2024-05-14 12:30         ` Eli Zaretskii
2024-05-14 13:58           ` Simen Endsjø
2024-05-14 14:18             ` Eli Zaretskii
2024-05-15 10:25               ` Simen Endsjø
2024-05-15 11:19                 ` Simen Endsjø
2024-05-15 11:24                   ` Simen Endsjø
2024-05-15 12:20                     ` Eli Zaretskii
2024-05-15 12:15                   ` Eli Zaretskii
2024-05-15 13:50                     ` Simen Endsjø
2024-05-15 12:04                 ` Eli Zaretskii
2024-05-15 13:45                   ` Simen Endsjø
2024-05-16  7:05           ` Simen Endsjø
2024-05-16 10:11             ` Eli Zaretskii
2024-05-24 10:13         ` Simen Endsjø
2024-05-15 10:53       ` Simen Endsjø
2024-05-15 12:11         ` Eli Zaretskii
2024-05-15 13:00           ` Simen Endsjø
2024-05-15 13:36             ` Simen Endsjø
2024-05-15 13:58               ` Simen Endsjø
2024-05-15 15:25               ` Eli Zaretskii
2024-05-15 18:13                 ` Simen Endsjø
2024-05-15 18:21                   ` Simen Endsjø
2024-05-15 18:53                     ` Eli Zaretskii
2024-05-15 20:03                       ` Simen Endsjø
2024-05-16  8:07                         ` Eli Zaretskii
2024-05-16 10:50                           ` Simen Endsjø
2024-05-16 11:44                             ` Simen Endsjø
2024-05-16 12:15                               ` Eli Zaretskii
2024-05-18 18:47                           ` Simen Endsjø
2024-05-18 19:46                             ` Eli Zaretskii
2024-05-18 21:45                               ` Simen Endsjø
2024-05-19  5:50                                 ` Eli Zaretskii
2024-05-19  9:03                                   ` Eli Zaretskii
2024-05-19 17:41                                     ` Simen Endsjø
2024-05-19 18:31                                       ` Eli Zaretskii
2024-05-19 18:38                                         ` Simen Endsjø
2024-05-20 13:47                                           ` Eli Zaretskii
2024-05-20 17:54                                             ` Simen Endsjø
2024-05-20 18:20                                               ` Eli Zaretskii
2024-05-20 18:41                                                 ` Simen Endsjø
2024-05-20 19:00                                                   ` Eli Zaretskii
2024-05-20 19:22                                                     ` Eli Zaretskii
2024-05-20 20:28                                                       ` Simen Endsjø
2024-05-21 14:06                                                         ` Eli Zaretskii
2024-05-21 17:39                                                           ` Simen Endsjø
2024-05-21 18:29                                                             ` Eli Zaretskii
2024-05-21 19:05                                                               ` Hannes Domani via Bug reports for GNU Emacs, the Swiss army knife of text editors
2024-05-21 19:24                                                                 ` Eli Zaretskii
2024-05-21 20:31                                                                 ` Simen Endsjø [this message]
2024-05-22  4:32                                                                   ` Hannes Domani via Bug reports for GNU Emacs, the Swiss army knife of text editors
2024-05-22  4:35                                                                     ` Simen Endsjø
2024-05-22  5:08                                                                       ` Hannes Domani via Bug reports for GNU Emacs, the Swiss army knife of text editors
2024-05-22  5:57                                                                         ` Simen Endsjø
2024-05-22  6:12                                                                           ` Hannes Domani via Bug reports for GNU Emacs, the Swiss army knife of text editors
2024-05-22  8:16                                                                             ` Simen Endsjø
2024-05-22  8:23                                                                               ` Hannes Domani via Bug reports for GNU Emacs, the Swiss army knife of text editors
2024-05-22  8:41                                                                                 ` Simen Endsjø
2024-05-22  8:50                                                                                   ` Hannes Domani via Bug reports for GNU Emacs, the Swiss army knife of text editors
2024-05-22 11:09                                                                                     ` Simen Endsjø
2024-05-22 11:21                                                                                       ` Simen Endsjø
2024-05-22 11:24                                                                                         ` Simen Endsjø
2024-05-22 13:26                                                                                         ` Eli Zaretskii
2024-05-22 13:35                                                                                           ` Simen Endsjø
2024-05-22 14:07                                                                                             ` Eli Zaretskii
2024-05-22 11:40                                                                                     ` Eli Zaretskii
2024-05-22 11:36                                                                                   ` Eli Zaretskii
2024-05-22 11:24                                                                             ` Eli Zaretskii
2024-05-22 13:14                                                                               ` Simen Endsjø
2024-05-22 14:03                                                                                 ` Eli Zaretskii
2024-05-22 16:54                                                                                   ` Simen Endsjø
2024-05-22 18:19                                                                                     ` Eli Zaretskii
2024-05-22 19:21                                                                                       ` Simen Endsjø
2024-05-22 20:28                                                                                         ` Simen Endsjø
2024-05-23  5:19                                                                                           ` Eli Zaretskii
2024-05-23  7:31                                                                                             ` Simen Endsjø
2024-05-23  8:18                                                                                               ` Eli Zaretskii
2024-05-23 10:05                                                                                                 ` Simen Endsjø
2024-05-23 10:30                                                                                             ` Ihor Radchenko
2024-05-23 10:39                                                                                               ` Eli Zaretskii
2024-05-23 10:48                                                                                                 ` Ihor Radchenko
2024-05-23 11:31                                                                                                   ` Eli Zaretskii
2024-05-23 11:51                                                                                                     ` Ihor Radchenko
2024-05-23 13:33                                                                                                       ` Eli Zaretskii
2024-05-23 13:52                                                                                                         ` Ihor Radchenko
2024-05-23 14:05                                                                                                           ` Eli Zaretskii
2024-05-23 14:23                                                                                                             ` Ihor Radchenko
2024-05-23 16:02                                                                                                               ` Eli Zaretskii
2024-05-23 18:33                                                                                                                 ` Simen Endsjø
2024-05-23 18:46                                                                                                                   ` Eli Zaretskii
2024-05-22 12:26                                                                   ` Eli Zaretskii
2024-05-22 13:34                                                                     ` Simen Endsjø
2024-05-22 14:05                                                                       ` Eli Zaretskii
2024-05-22 14:28                                                                         ` Hannes Domani via Bug reports for GNU Emacs, the Swiss army knife of text editors
2024-05-22 14:58                                                                           ` Eli Zaretskii
2024-05-22 18:12                                                                             ` Hannes Domani via Bug reports for GNU Emacs, the Swiss army knife of text editors
2024-05-22 18:32                                                                               ` Eli Zaretskii
2024-05-21 20:01                                                               ` Simen Endsjø
2024-05-16  6:42                       ` Simen Endsjø
2024-05-16 10:03                         ` Eli Zaretskii
2024-05-16 11:00                           ` Simen Endsjø
2024-05-16 12:13                             ` Eli Zaretskii
2024-05-16 12:11                           ` Andrea Corallo
2024-05-16 12:22                             ` Eli Zaretskii
2024-05-16 15:26                               ` Andrea Corallo
2024-05-16 16:03                                 ` Eli Zaretskii
2024-05-16 17:04                                   ` Andrea Corallo
2024-05-16 18:24                                     ` Eli Zaretskii
2024-05-24  7:59                                 ` Andrea Corallo
2024-05-24 10:48                                   ` Eli Zaretskii
2024-05-27  9:53                                     ` Andrea Corallo
2024-05-27 11:55                                       ` Eli Zaretskii
2024-05-16 18:40                             ` Simen Endsjø
2024-05-16 19:28                               ` Eli Zaretskii
2024-05-16 20:13                                 ` Simen Endsjø
2024-05-16 21:03                                   ` Simen Endsjø
2024-05-17  6:51                                     ` Eli Zaretskii
2024-05-17 18:05                                       ` Simen Endsjø
2024-05-17 18:38                                         ` Eli Zaretskii
2024-05-17 20:39                                           ` Simen Endsjø
2024-05-18 11:18                                           ` Simen Endsjø
2024-05-18 11:49                                             ` Eli Zaretskii
2024-05-18 18:36                                               ` Simen Endsjø
2024-05-18 19:35                                                 ` Eli Zaretskii
2024-05-18 19:43                                                   ` Simen Endsjø
2024-05-18 11:55                                             ` Eli Zaretskii
2024-05-18 18:42                                               ` Simen Endsjø
2024-05-18 19:40                                                 ` Eli Zaretskii
2024-05-17  6:16                                   ` Eli Zaretskii
2024-05-15 18:35                   ` Eli Zaretskii
2024-05-15 15:18             ` Eli Zaretskii
2024-05-24 10:07       ` Simen Endsjø
2024-05-24 10:47         ` Eli Zaretskii
2024-05-24 13:08           ` Simen Endsjø
2024-05-27 12:54             ` Simen Endsjø
2024-05-27 13:22               ` Eli Zaretskii
     [not found]                 ` <87sey1g5dg.fsf@simendsjo.me>
2024-05-28 18:40                   ` Eli Zaretskii

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAHkVV6E3_1VwY=iiBL6cxySw-oXF2R3VzxQjDuWKhMV4i2Jusw@mail.gmail.com' \
    --to=simendsjo@gmail.com \
    --cc=70914@debbugs.gnu.org \
    --cc=corwin@bru.st \
    --cc=eliz@gnu.org \
    --cc=ssbssa@yahoo.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).