Re: Frame-based exception handling problem on Server 2008



Hi Ivan,

Ivan Brugiolo [MSFT] wrote:
Can you elaborate on the NX options of the bcdedit configuration ?

Per the output of bcdedit, the NX option is set to OptOut.

My take is that the server SKU has NX enabled by default, that implies
strict validation of the SEH-Handler against the table generated by the
compiler,
while the client SKU has a looser validation, and your code gets by.

The compiler (GCC) does not generate SEH handlers, except if you use c++
exception handling. This is not the case here. The code is plain C.

The second problem is that our approach works as expected on 2003
Server, as well as on earlier Server versions, so it shouldn't have
anything to do with server vs. client.

Anyway, I switched the 2008 Server to OptIn as in Vista and rebooted.
I verified that the setting was still OptIn after the reboot. The
problem that 2008 Server hangs persists even wit NX=OptIn.

Then, could you use a ntsd/cdb/windbg based debugger to report the stack ?
Those debuggers have the ability to use public PDBs to give meaningful stack
traces.

I haven't windbg installed. If it's necessary, I can do that, but I
never used it so I'd need some instructions. For the time being, I have
pasted the backtrace from ProcessExplorer in the hanging example code
from my reply to Jeffrey on a 2008 Server:

0 ntdll.dll!RtlTimeToElapsedTimeFields+0x12225
1 ntdll.dll!KiUserExceptionDispatcher+0xf
2 exceptionhandler_example.exe+0x13e9
3 exceptionhandler_example.exe+0x124b
4 exceptionhandler_example.exe+0x1298
5 kernel32.dll!BaseThreadInitThunk+0x12
6 ntdll.dll!RtlInitializeExceptionChain+0x63
7 ntdll.dll!RtlInitializeExceptionChain+0x36

Does that help?


Corinna

--
Corinna Vinschen
Cygwin Project Co-Leader
Red Hat
.



Relevant Pages

  • Another disaster recovery exercise (but not yet)...
    ... I updated a client's Server. ... indeed, I reboot before updating, and after ). ... Chkdsk is all good on all drives. ... Enabling boot logging option at boot - well, ...
    (microsoft.public.backoffice.smallbiz2000)
  • RE: Event 19011: SBS Monitoring services wont auto-start
    ... automatically start when rebooting the SBS server. ... Let us ensure the MSSQL$SBSMONITORING service and the Microsoft Exchange ... Please clean the Event logs in event viewer and then reboot the server, ... This newsgroup only focuses on SBS technical issues. ...
    (microsoft.public.windows.server.sbs)
  • Re: Another disaster recovery exercise (but not yet)...
    ... Do the full system state restore. ... I updated a client's Server. ... > indeed, I reboot before updating, and after ). ... Still very slow boot time and many ...
    (microsoft.public.backoffice.smallbiz2000)
  • Re: IIS Messed UP... must reboot?
    ... SBS and after reboot, the IIS works again. ... Can you see in IIS the websites or server shows stop status? ... Click Services tab and select Hide All Microsoft Services and Disable ... After reboot, check whether the problem still occurs. ...
    (microsoft.public.windows.server.sbs)
  • Re: MS Critical Patches - Reboot - Did not reboot.
    ... Generally the 7036 event pops up after a reboot, ... the install of critical patches. ... down and it comes up using PING SERVER -t. ... I tried connecting through RDP and could not connect. ...
    (microsoft.public.windows.server.general)

Loading