[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: MPS: Forwording symbols
From: |
Gerd Möllmann |
Subject: |
Re: MPS: Forwording symbols |
Date: |
Tue, 18 Jun 2024 20:23:37 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) |
Eli Zaretskii <eliz@gnu.org> writes:
>> From: Gerd Möllmann <gerd.moellmann@gmail.com>
>> Cc: eller.helmut@gmail.com, emacs-devel@gnu.org
>> Date: Tue, 18 Jun 2024 20:11:16 +0200
>>
>> Eli Zaretskii <eliz@gnu.org> writes:
>>
>> >> IOW, the call to igc_postmortem itself hits assertion violation.
>> >
>> > Btw, the "unreachable" code in this case is this:
>> >
>> > void ProtSet(Addr base, Addr limit, AccessSet mode)
>> > {
>> > DWORD newProtect;
>> > DWORD oldProtect;
>> >
>> > AVER(base < limit);
>> > AVER(base != 0);
>> > AVERT(AccessSet, mode);
>> >
>> > newProtect = PAGE_EXECUTE_READWRITE;
>> > if((mode & AccessWRITE) != 0)
>> > newProtect = PAGE_EXECUTE_READ;
>> > if((mode & AccessREAD) != 0)
>> > newProtect = PAGE_NOACCESS;
>> >
>> > if(VirtualProtect((LPVOID)base, (SIZE_T)AddrOffset(base, limit),
>> > newProtect, &oldProtect) == 0)
>> > NOTREACHED; <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
>> > }
>> >
>> > It means that VirtualProtect failed. Since 'mode' is zero, it means
>> > the function was called to remove protection from the mmemory block,
>> > and it failed, probably because the specified memory region was out of
>> > the program's address space?
>>
>> FWIW, I don't think one can usefully continue execution after calling
>> igc_postmorten, one can only look around in memory and such. Here's what
>> the docs say:
>
> Maybe I'm misunderstanding something, but the above is not an attempt
> to continue execution, it is part of the call to igc_postmortem
> itself. That call is the one which crashes, not the code that runs
> after that call returns.
Sorry, then I interpreted this wrong:
> (gdb) call igc_postmortem()
>
> Thread 5 received signal SIGTRAP, Trace/breakpoint trap.
> [Switching to Thread 60368.0xb908]
> 0x77c79031 in ntdll!DbgBreakPoint () from C:\WINDOWS\SysWOW64\ntdll.dll
> The program received a signal in another thread while
> making a function call from GDB.
> Evaluation of the expression containing the function
> (igc_postmortem) will be abandoned.
> When the function is done executing, GDB will silently stop.
> (gdb) c
> Continuing.
Too long no GDB for me :-)
- Re: MPS: Forwording symbols, (continued)
- Re: MPS: Forwording symbols, Helmut Eller, 2024/06/18
- Re: MPS: Forwording symbols, Eli Zaretskii, 2024/06/18
- Re: MPS: Forwording symbols, Gerd Möllmann, 2024/06/18
- Re: MPS: Forwording symbols, Helmut Eller, 2024/06/18
- Re: MPS: Forwording symbols, Eli Zaretskii, 2024/06/18
- Re: MPS: Forwording symbols, Helmut Eller, 2024/06/18
- Re: MPS: Forwording symbols, Eli Zaretskii, 2024/06/18
- Re: MPS: Forwording symbols, Eli Zaretskii, 2024/06/18
- Re: MPS: Forwording symbols, Gerd Möllmann, 2024/06/18
- Re: MPS: Forwording symbols, Eli Zaretskii, 2024/06/18
- Re: MPS: Forwording symbols,
Gerd Möllmann <=
- Re: MPS: Forwording symbols, Helmut Eller, 2024/06/18
- Re: MPS: Forwording symbols, Eli Zaretskii, 2024/06/18
- Re: MPS: Forwording symbols, Helmut Eller, 2024/06/18
- Re: MPS: Forwording symbols, Gerd Möllmann, 2024/06/18
- Re: MPS: Forwording symbols, Eli Zaretskii, 2024/06/19
- Re: MPS: Forwording symbols, Gerd Möllmann, 2024/06/17
- Re: MPS: Forwording symbols, Helmut Eller, 2024/06/21