Operating System - OpenVMS
cancel
Showing results for 
Search instead for 
Did you mean: 

debugger reports %DEBUG-I-PRETHRDEVNTFAIL (OpenVMS Alpha 8.2)

SOLVED
Go to solution
H_Bachner
Regular Advisor

debugger reports %DEBUG-I-PRETHRDEVNTFAIL (OpenVMS Alpha 8.2)

After upgrading an OpenVMS Alpha V8.2 system from VMS82A_UPDATE V2.0 to V9.0, I get the following error messages when trying to analyze a process dump of a program using pthreads (written in C++):

%DEBUG-I-PRETHRDEVNTFAIL, setting a predefined thread event failed
%SYSTEM-F-IMGDMP, dynamic image dump signal at PC=FFFFFFFF80150768, PS=00000018
%SYSTEM-F-ACCVIO, access violation, reason mask=00, virtual address=A725C0F7D9018B78, PC=A725C0F7D9018B78, PS=0000001B
break on unhandled exception preceding 18446744071563446120 in THREAD -2
[...]
%DEBUG-E-INTERR, debugger error in DBGMAIN\SUB_CALL_KERNEL_RPC - error in kernel routine DBGEXT_CALL or session corruption
DBG>

I suspect this problem was introduced with the DEBUG V1.0 patch which is part of UPDATE V9.0.

Are there any workarounds available, or even a fix in the works?

Second question:
DBG> SHOW CALLS
only lists calls in the PTHREAD RTL. How can I examine the call stack of an individual thread in the process dump?

BTW, the dump was created with
$ SET PROC /DUMP=NOW
followed by
$ STOP /ID
because the process hang.

Thanks for your help,
Hans.
4 REPLIES
Volker Halle
Honored Contributor

Re: debugger reports %DEBUG-I-PRETHRDEVNTFAIL (OpenVMS Alpha 8.2)

Hans,

DBG> help message PRETHRDEVNTFAIL

suggests to write a SPR against ADARTL ;-)

You should be able to use SET THREAD to set context to another thread, use DBG> SHOW THREAD to show the available threads.

Volker.
H_Bachner
Regular Advisor

Re: debugger reports %DEBUG-I-PRETHRDEVNTFAIL (OpenVMS Alpha 8.2)

Hi Volker,

> DBG> help message PRETHRDEVNTFAIL
>
> suggests to write a SPR against ADARTL ;-)

I found this message mentioned in ECO VMS821I_DEBUG in the Ada support section *but* this is a C++ application, with no Ada modules around.

> You should be able to use SET THREAD to set context to
> another thread, use DBG> SHOW THREAD to show the
> available threads.

This works in the "live" debugger, but not with
$ ANALYZE /PROCESS ! :-(

Thanks anyway,
Hans.

PS: see you tomorrow?
Volker Halle
Honored Contributor
Solution

Re: debugger reports %DEBUG-I-PRETHRDEVNTFAIL (OpenVMS Alpha 8.2)

Volker,

you can use the PTHREADS extension in a process dump:

DBG> threads -af

You can also switch to SDA (using the DBG> SDA command) and then use the PTHREADS extension.

SDA> pthread threads -f

will show SP addresses, then you can use SHOW STACK address;100 or even SHOW CALL address/SUMM

Volker.

PS: See you tomorrow at the OpenVMS TUDs
H_Bachner
Regular Advisor

Re: debugger reports %DEBUG-I-PRETHRDEVNTFAIL (OpenVMS Alpha 8.2)

Volker,

thanks so much - this is exactly what I was missing...

Best regards,
Hans.