UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

cancel
Showing results for 
Search instead for 
Did you mean: 
Visitor ugface
Visitor
1,512 Views
Registered: ‎04-18-2018

Vivado 2018.1 Abnormal program termination (EXCEPTION_ACCESS_VIOLATION) during routing

I just tried to implement an old project with the new Vivado 2018.1 and got "Abnormal program termination (EXCEPTION_ACCESS_VIOLATION)" during routing every time. The error happened after routing was completed, when executing "report_methodology". With Vivado 2017.3, everything was fine.

 

I tried to analyze Vivado's crash dump file with WinDbg and found the following info. It seemed like a bug in  librdi_psta.dll at librdi_psta!sta::VertexInEdgeIterator::VertexInEdgeIterator+d.

 

====================================

DUMP_CLASS: 2

DUMP_QUALIFIER: 400

CONTEXT: (.ecxr)
rax=000007fed90e9c18 rbx=0000000000000000 rcx=0000000003d27e60
rdx=0000000000000000 rsi=00000000af03ebd0 rdi=00000000c6251c90
rip=000007fed8dd0b9d rsp=0000000003d27db8 rbp=0000000003d27ec0
r8=0000000059dabc90 r9=00000000c6e1b360 r10=0000000003d27e60
r11=0001dfb904e00762 r12=0000000059dabc90 r13=000000003c182e10
r14=0000000000000038 r15=0000000000000038
iopl=0 nv up ei pl nz na pe nc
cs=0033 ss=002b ds=002b es=002b fs=0053 gs=002b efl=00010202
librdi_psta!sta::VertexInEdgeIterator::VertexInEdgeIterator+0xd:
000007fe`d8dd0b9d 8b4210 mov eax,dword ptr [rdx+10h] ds:00000000`00000010=????????
Resetting default scope

FAULTING_IP:
librdi_psta!sta::VertexInEdgeIterator::VertexInEdgeIterator+d
000007fe`d8dd0b9d 8b4210 mov eax,dword ptr [rdx+10h]

EXCEPTION_RECORD: (.exr -1)
ExceptionAddress: 000007fed8dd0b9d (librdi_psta!sta::VertexInEdgeIterator::VertexInEdgeIterator+0x000000000000000d)
ExceptionCode: c0000005 (Access violation)
ExceptionFlags: 00000000
NumberParameters: 2
Parameter[0]: 0000000000000000
Parameter[1]: 0000000000000010
Attempt to read from address 0000000000000010

DEFAULT_BUCKET_ID: NULL_CLASS_PTR_READ

PROCESS_NAME: vivado.exe

ERROR_CODE: (NTSTATUS) 0xc0000005 - The instruction at 0x%08lx referenced memory at 0x%08lx. The memory could not be %s.

EXCEPTION_CODE: (NTSTATUS) 0xc0000005 - The instruction at 0x%08lx referenced memory at 0x%08lx. The memory could not be %s.

EXCEPTION_CODE_STR: c0000005

EXCEPTION_PARAMETER1: 0000000000000000

EXCEPTION_PARAMETER2: 0000000000000010

FOLLOWUP_IP:
librdi_psta!sta::VertexInEdgeIterator::VertexInEdgeIterator+d
000007fe`d8dd0b9d 8b4210 mov eax,dword ptr [rdx+10h]

READ_ADDRESS: 0000000000000010

BUGCHECK_STR: NULL_CLASS_PTR_READ

WATSON_BKT_PROCSTAMP: 5a87f001

WATSON_BKT_MODULE: librdi_psta.dll

WATSON_BKT_MODSTAMP: 5aa2edb0

WATSON_BKT_MODOFFSET: f0b9d

BUILD_VERSION_STRING: 6.1.7601.23915 (win7sp1_ldr.170913-0600)

MODLIST_WITH_TSCHKSUM_HASH: 1110367a7a21f844a46ac594b7750da6823b0c3f

MODLIST_SHA1_HASH: b4fb8637a5b347e9e0265b357a23083e314ee265

DUMP_FLAGS: 0

DUMP_TYPE: 2

ANALYSIS_SESSION_HOST: TECHSERVER

ANALYSIS_SESSION_TIME: 04-18-2018 17:45:16.0167

ANALYSIS_VERSION: 10.0.14321.1024 amd64fre

THREAD_ATTRIBUTES:
PROBLEM_CLASSES:

 

NULL_CLASS_PTR_READ
Tid [0x230c]
Frame [0x00]: librdi_psta!sta::VertexInEdgeIterator::VertexInEdgeIterator


LAST_CONTROL_TRANSFER: from 000007feb52cb0d2 to 000007fed8dd0b9d

STACK_TEXT:
00000000`03d27db8 000007fe`b52cb0d2 : 00000000`00000000 00000000`af03ebd0 00000000`c6e21b10 00000000`c6e1b360 : librdi_psta!sta::VertexInEdgeIterator::VertexInEdgeIterator+0xd
00000000`03d27dc0 000007fe`b52c89fd : 00000000`b52b6900 00000000`00000000 00000000`67fc6af8 00000000`67fc6ae0 : librdi_timing!HASTDRCMgr::~HASTDRCMgr+0xc972
00000000`03d28010 000007fe`b568baae : 00000000`01000002 00000000`36be5020 00000000`36be5020 00000000`03d284e0 : librdi_timing!HASTDRCMgr::~HASTDRCMgr+0xa29d
00000000`03d28200 000007fe`d7b80023 : 00000000`0000002b 00000000`03d28839 00000000`0b21bf40 00000000`00000000 : librdi_timing!HASTUtil::ensureTimingForDRC+0x8e
00000000`03d28260 000007fe`d7b760ad : 00000000`67fc6e88 00000000`03d28978 00000000`03d289d0 00000000`03d289d0 : librdi_drc!HARCMgr::registerUserChecker+0x1293
00000000`03d28790 000007fe`a4b3db6c : 00000000`00000000 00000000`03d28990 00000000`00000000 00000000`00000000 : librdi_drc!HARCMgr::createResults+0x55d
00000000`03d28890 000007fe`a4b37e81 : 00000000`b6561170 00000000`025bf6b0 00000000`b6561170 00000000`b6561170 : librdi_coretasks!Java_ui_frmwork_bplacecmds_HTCBPlaceCommands_1placePblocks+0x24a1c
00000000`03d2bbc0 000007fe`a4b3659c : 00000000`00000000 00000000`025bf6b0 00000000`025bf6b0 00004c8b`36805d37 : librdi_coretasks!Java_ui_frmwork_bplacecmds_HTCBPlaceCommands_1placePblocks+0x1ed31
00000000`03d2bca0 000007fe`de5ce331 : 00000000`03d2c048 00000000`025bf6b0 00000000`b8547800 00000000`0024c280 : librdi_coretasks!Java_ui_frmwork_bplacecmds_HTCBPlaceCommands_1placePblocks+0x1d44c
00000000`03d2bcd0 000007fe`de5d10f6 : 00000000`025bf6b0 00000000`03d2c048 ffffffff`ffffffff 000007fe`f3e542cb : librdi_common!hdi::tcltasks::task_manager::eval_in_tcl_throw+0x261
00000000`03d2c020 00000000`6a5d11fc : 00000000`00000001 000007fe`a4c9273f 00000000`00000002 00000000`03d2c368 : librdi_common!hdi::tcltasks::task_manager::retrieve_except_msg_instance+0x4c6
00000000`03d2c210 00000000`6a616238 : 00000000`00000000 00000000`00000007 00000000`025e4018 ffffffff`ffffffff : tcl85t!Tcl_ListMathFuncs+0x58c
00000000`03d2c2c0 00000000`6a614fec : 00000000`025bf6b0 00000000`0bbd9190 00000000`00000000 00000000`00000000 : tcl85t!Tcl_ExprObj+0x1868
00000000`03d2c8c0 00000000`6a5d2e8d : 00000000`0a31c8c0 00000000`025bf6b0 00000000`0bcd11b0 00000000`03d2c980 : tcl85t!Tcl_ExprObj+0x61c
00000000`03d2c910 00000000`6a5d2acd : 00000000`03d2c988 00000000`00000003 00000000`025bf6b0 00000000`a237b140 : tcl85t!TclEvalObjEx+0x3ad
00000000`03d2c980 000007fe`e495fddb : 00000000`02620800 00000000`00312e80 00000000`0a31c8c0 00000000`0bcd11b0 : tcl85t!Tcl_EvalObjEx+0x1d
00000000`03d2c9c0 00000000`6a5d11fc : 00000000`025bf6b0 00000000`025bf6b0 00000000`88f8dc90 00000000`6a69ac3c : librdi_commontasks+0x1fddb
00000000`03d2ca40 00000000`6a5d218e : 00000000`00000000 00000000`00000003 00000000`025e3e60 00000000`88f8dc90 : tcl85t!Tcl_ListMathFuncs+0x58c
00000000`03d2caf0 00000000`6a5d2d1e : 00000000`025bf6b0 00000000`88f8dc90 00000000`00000003 00000000`00000003 : tcl85t!Tcl_EvalEx+0x99e
00000000`03d2cc20 00000000`6a5dadff : 00000000`00000000 00000000`025e3b98 00000000`025d2ce0 00000000`00000004 : tcl85t!TclEvalObjEx+0x23e
00000000`03d2cc90 00000000`6a5d11fc : 00000000`025bf6b0 00000000`00000004 00000000`025bf6b0 00000000`00000000 : tcl85t!TclDumpMemoryInfo+0x342f
00000000`03d2ccd0 00000000`6a616238 : 00000000`00000000 00000000`00000004 00000000`025e3b98 ffffffff`ffffffff : tcl85t!Tcl_ListMathFuncs+0x58c
00000000`03d2cd80 00000000`6a6612f4 : 00000000`025bf6b0 00000000`0bca4b70 00000000`025e3a48 00000000`00000000 : tcl85t!Tcl_ExprObj+0x1868
00000000`03d2d380 00000000`6a5d11fc : 00000000`00000000 00000000`025bf6b0 00000000`025e3a48 00000000`0b9e4c68 : tcl85t!TclObjInterpProcCore+0x74
00000000`03d2d3d0 00000000`6a616238 : 00000000`00000000 00000000`00000003 00000000`025e3a48 ffffffff`ffffffff : tcl85t!Tcl_ListMathFuncs+0x58c
00000000`03d2d480 00000000`6a614fec : 00000000`025bf6b0 00000000`0b7cfd50 00000000`00000000 00000000`00000000 : tcl85t!Tcl_ExprObj+0x1868
00000000`03d2da80 00000000`6a5d2e8d : 00000000`00312e80 00000000`025bf6b0 ffffffff`fffffffe 00000000`03d2db40 : tcl85t!Tcl_ExprObj+0x61c
00000000`03d2dad0 00000000`6a5d2acd : 00000000`03d2dc08 00000000`00000003 00000000`025bf6b0 00000000`0b7c3540 : tcl85t!TclEvalObjEx+0x3ad
00000000`03d2db40 000007fe`e495fddb : 00000000`0a31c8c0 00000000`00312e80 00000000`00312e80 00000000`025fd230 : tcl85t!Tcl_EvalObjEx+0x1d
00000000`03d2db80 00000000`6a5d11fc : 00000000`025bf6b0 00000000`025bf6b0 00000000`0bd8e850 00000000`6a69ac3c : librdi_commontasks+0x1fddb
00000000`03d2dc00 00000000`6a5d218e : 00000000`00000000 00000000`00000003 00000000`025e3890 00000000`0bd8eebe : tcl85t!Tcl_ListMathFuncs+0x58c
00000000`03d2dcb0 00000000`6a656a82 : 00000000`025bf6b0 00000000`0bd8eebe 00000000`00000003 00000000`00000003 : tcl85t!Tcl_EvalEx+0x99e
00000000`03d2dde0 00000000`6a5d1d94 : 00000000`025bf6b0 00000000`00000002 00000000`00000001 00000000`00000000 : tcl85t!Tcl_SubstObj+0x832
00000000`03d2de90 00000000`6a63b660 : 00000000`025bf6b0 00000000`0bd8e850 00000000`00000002 00000000`00000002 : tcl85t!Tcl_EvalEx+0x5a4
00000000`03d2dfc0 000007fe`e4980383 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : tcl85t!Tcl_FSEvalFileEx+0x250
00000000`03d2e070 000007fe`e497f83c : 000007fe`de9e6618 00000000`0977e328 00000000`025bf6b0 00004c8b`36800327 : librdi_commontasks+0x40383
00000000`03d2e290 000007fe`de5ce331 : 00000000`03d2e638 00000000`00240000 00000000`03d2e638 00000000`0024c280 : librdi_commontasks+0x3f83c
00000000`03d2e2c0 000007fe`de5d10f6 : 00000000`025bf6b0 00000000`03d2e638 ffffffff`ffffffff 00000000`00240000 : librdi_common!hdi::tcltasks::task_manager::eval_in_tcl_throw+0x261
00000000`03d2e610 00000000`6a5d11fc : 00000000`00000000 00000000`03d2ea49 00000000`00000000 00000000`025bf6b0 : librdi_common!hdi::tcltasks::task_manager::retrieve_except_msg_instance+0x4c6
00000000`03d2e800 00000000`6a5d1681 : 00005918`00000000 00000000`00000003 00000000`0b7dbd90 00000000`00000000 : tcl85t!Tcl_ListMathFuncs+0x58c
00000000`03d2e8b0 00000000`6a5d2c37 : 00000000`025bb590 00000000`00000003 00000000`00000002 00000000`03d2ea49 : tcl85t!Tcl_EvalObjv+0x51
00000000`03d2e900 00000000`6a5d2acd : 00000000`025bb590 00000000`03d2ea49 00000000`025bf6b0 00000000`00000001 : tcl85t!TclEvalObjEx+0x157
00000000`03d2e970 000007fe`e49b299f : 00000000`025bb590 00000000`00000000 00000000`03d2ead8 00000000`03d2ea01 : tcl85t!Tcl_EvalObjEx+0x1d
00000000`03d2e9b0 000007fe`e49b2b3e : 00000000`0a31bc00 00000000`0a31c590 00000000`0a31bc00 00000000`00000000 : librdi_commontasks!Java_ui_frmwork_commandi_undo+0x2259f
00000000`03d2eab0 000007fe`e49a86ea : 000007fe`e4d4e318 00000000`00000000 00000000`0a31bc00 00000000`00000000 : librdi_commontasks!Java_ui_frmwork_commandi_undo+0x2273e
00000000`03d2eb60 000007fe`e49a8ab7 : 00000000`00000002 00000000`00000008 00000000`00000008 00000000`0000000d : librdi_commontasks!Java_ui_frmwork_commandi_undo+0x182ea
00000000`03d2eda0 000007fe`de5ce331 : 00000000`02671fa0 00000000`00240000 00000000`03d2f1b8 00000000`0024c280 : librdi_commontasks!Java_ui_frmwork_commandi_undo+0x186b7
00000000`03d2ee40 000007fe`de5d10f6 : 00000000`025bf6b0 00000000`03d2f1b8 ffffffff`ffffffff 5f736b73`61746e6f : librdi_common!hdi::tcltasks::task_manager::eval_in_tcl_throw+0x261
00000000`03d2f190 00000000`6a5d11fc : 00000000`006c6374 00000000`03d2f3e0 00005d35`3691900d 00000000`00000001 : librdi_common!hdi::tcltasks::task_manager::retrieve_except_msg_instance+0x4c6
00000000`03d2f380 00000000`6a5d1681 : 00000000`00000000 00000000`0000000d 00000000`025f4660 00000000`00000000 : tcl85t!Tcl_ListMathFuncs+0x58c
00000000`03d2f430 00000000`6a5d2c37 : 00000000`025bc190 00000000`0000000d 00000000`00000001 00000000`03d2f5c9 : tcl85t!Tcl_EvalObjv+0x51
00000000`03d2f480 00000000`6a5d2acd : 00000000`002f90c0 00000000`03d2f5c9 00000000`002f90c0 00000000`025bf6b0 : tcl85t!TclEvalObjEx+0x157
00000000`03d2f4f0 000007fe`ed5946aa : 00000000`0000000c 00000000`00000000 00000000`00000060 00000000`025b82c0 : tcl85t!Tcl_EvalObjEx+0x1d
00000000`03d2f530 00000000`6a646be1 : 00000000`025bb650 00000000`025bb650 00000000`025bf6b0 00000000`00000000 : librdi_commonmain+0x46aa
00000000`03d2f630 000007fe`de5fc0c9 : 00000000`00325b40 00000000`00000000 00000000`00000000 00000000`00000000 : tcl85t!Tcl_Main+0x471
00000000`03d2f890 000007fe`f3eabeed : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`002fca20 : librdi_common!HCTNativeThread::join+0x39
00000000`03d2f8c0 00000000`774c59cd : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : ucrtbase!thread_start<unsigned int (__cdecl*)(void * __ptr64)>+0x5d
00000000`03d2f8f0 00000000`775fa561 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : kernel32!BaseThreadInitThunk+0xd
00000000`03d2f920 00000000`00000000 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : ntdll!RtlUserThreadStart+0x1d

 

0 Kudos
6 Replies
Moderator
Moderator
1,507 Views
Registered: ‎02-07-2008

Re: Vivado 2018.1 Abnormal program termination (EXCEPTION_ACCESS_VIOLATION) during routing

@ugface, the tools should never fail in this manner. Are you able to submit a test case that would enabled me to investigate this issue internally?

-------------------------------------------------------------------------
Don’t forget to reply, kudo, and accept as solution.
-------------------------------------------------------------------------
0 Kudos
Visitor ugface
Visitor
1,476 Views
Registered: ‎04-18-2018

Re: Vivado 2018.1 Abnormal program termination (EXCEPTION_ACCESS_VIOLATION) during routing

Since a routed checkpoint was written, I could even write a bit file from it. But the tool indeed failed during final DRC or STA analysis after routing.

 

I can not provide you the project file. But I will show you the last few lines of log before crash.

 

=====================================================

INFO: [Timing 38-35] Done setting XDC timing constraints.
WARNING: [Timing 38-3] User defined clock exists on pin XXXXXXXXXXXXX/bufg_rxclk/O and will prevent any subsequent automatic derivation of generated clocks on that pin. If the user defined clock specifies '-add', any existing auto-derived clocks on that pin are retained.
WARNING: [Timing 38-3] User defined clock exists on pin XXXXXXXXX/bufg_txclk/O and will prevent any subsequent automatic derivation of generated clocks on that pin. If the user defined clock specifies '-add', any existing auto-derived clocks on that pin are retained.
Abnormal program termination (EXCEPTION_ACCESS_VIOLATION)
Please check '....../impl_2/hs_err_pid6344.log' for details

0 Kudos
Moderator
Moderator
1,469 Views
Registered: ‎02-07-2008

Re: Vivado 2018.1 Abnormal program termination (EXCEPTION_ACCESS_VIOLATION) during routing

@ugface, without being able to reproduce the issue locally, there's not a lot that can be done. Can you upload hs_err_pid6344.log and the corresponding .dmp file?

 

With regards to Abnormal program terminations, see AR# 55854.

-------------------------------------------------------------------------
Don’t forget to reply, kudo, and accept as solution.
-------------------------------------------------------------------------
0 Kudos
Visitor ugface
Visitor
1,460 Views
Registered: ‎04-18-2018

Re: Vivado 2018.1 Abnormal program termination (EXCEPTION_ACCESS_VIOLATION) during routing

FYI, here're the log and dump files.

 

0 Kudos
Moderator
Moderator
1,447 Views
Registered: ‎02-07-2008

Re: Vivado 2018.1 Abnormal program termination (EXCEPTION_ACCESS_VIOLATION) during routing

Thanks @ugface, I'll see if any information can be extracted from the .dmp file. Can you also upload the runme.log from impl_2 directory which shows exactly where in the flow the issue occurs?

-------------------------------------------------------------------------
Don’t forget to reply, kudo, and accept as solution.
-------------------------------------------------------------------------
0 Kudos
Visitor ugface
Visitor
1,411 Views
Registered: ‎04-18-2018

Re: Vivado 2018.1 Abnormal program termination (EXCEPTION_ACCESS_VIOLATION) during routing

Hi, peadard, I don't have the rume.log file now, since I reverted the project to Vivado 2017.3. I think you can locate source file locations of the bug from the dmp file. It's obviously a problem of referencing a NULL pointer.

0 Kudos