Grr. It appears the code in working_classlib\modules\portlib\src\main\native\thread\unix\x86_64\thrspinlock.s is a complete bogus, it is copy-pasted from x86 almost verbatim and never worked. The tests PASS with drlvm's libhythr.so.
So we face again glorified hythr dilemma ;). -- Alexey 2007/1/22, Alexey Varlamov <[EMAIL PROTECTED]>:
Reproduced 100%. The problem is inside hythread_spinlock_acquire() impl, it spins forever on free "Thread global" monitor; I'm trying to grok asm impl for x64 now... 0 0x0000002a957a5cf8 in hythread_spinlock_acquire () from ./deploy/jdk/jre/bin/libhythr.so #1 0x0000002a957a7cef in monitor_enter_three_tier (self=0x503a88, monitor=0x501020) at hythread.c:2213 #2 0x0000002a957a7cc9 in monitor_enter (self=0x503a88, monitor=0x501020) at hythread.c:2187 #3 0x0000002a957a668d in hythread_monitor_enter (monitor=0x501020) at hythread.c:635 #4 0x0000002a95691ec3 in hysig_startup (portLibrary=0x7fbfffcc00) at hysignal.c:416 #5 0x0000002a95686f03 in hyport_startup_library (portLibrary=0x7fbfffcc00) at hyport.c:331 #6 0x0000002a95686a27 in hyport_init_library (portLibrary=0x7fbfffcc00, version=0x7fbfffcbf0, size=1840) at hyport.c:52 #7 0x00000000004006b4 in main (argc=1, argv=0x7fbfffd448, envp=0x7fbfffd458) at init.c:3 -- Alexey 2007/1/22, Vladimir Ivanov <[EMAIL PROTECTED]>: > The native tests of portlib module are hangs up on the em64t Linux and test > run killed by timeout. > > Could somebody reproduce/ fix it? > > > > thanks, Vladimir > > > Execution log: > [exec] -o ../init -lc -lm -ldl \ > [exec] -Xlinker -z -Xlinker origin \ > [exec] -Xlinker -rpath -Xlinker \$ORIGIN/ \ > [exec] -Xlinker -rpath-link -Xlinker > /export/cruise/trunk/cc/projects/classlib/trunk/deploy/jdk/jre/bin > [exec] cc -DLINUX -DLINUX_X86_64 -DHYX86_64 -D_REENTRANT > -DIPv6_FUNCTION_SUPPORT > -I/export/cruise/trunk/cc/projects/classlib/trunk/deploy/include > -I/export/cruise/trunk/cc/projects/classlib/trunk/deploy/jdk/include -I. > -I../shared/ -fpic -g -c -o ../shared/hyerror.o ../shared/hyerror.c > [exec] cc \ > [exec] ../shared/hyerror.o \ > [exec] -Xlinker --start-group > /export/cruise/trunk/cc/projects/classlib/trunk/deploy/lib/libhycommon.a > /export/cruise/trunk/cc/projects/classlib/trunk/deploy/jdk/jre/bin/libhyprt.so > /export/cruise/trunk/cc/projects/classlib/trunk/deploy/jdk/jre/bin/libhythr.so > /export/cruise/trunk/cc/projects/classlib/trunk/deploy/jdk/jre/bin/libhysig.so > -Xlinker --end-group \ > [exec] -o ../hyerror -lc -lm -ldl \ > [exec] -Xlinker -z -Xlinker origin \ > [exec] -Xlinker -rpath -Xlinker \$ORIGIN/ \ > [exec] -Xlinker -rpath-link -Xlinker > /export/cruise/trunk/cc/projects/classlib/trunk/deploy/jdk/jre/bin > [exec] cc -DLINUX -DLINUX_X86_64 -DHYX86_64 -D_REENTRANT > -DIPv6_FUNCTION_SUPPORT > -I/export/cruise/trunk/cc/projects/classlib/trunk/deploy/include > -I/export/cruise/trunk/cc/projects/classlib/trunk/deploy/jdk/include -I. > -I../shared/ -fpic -g -c -o ../shared/hytime.o ../shared/hytime.c > [exec] cc \ > [exec] ../shared/hytime.o \ > [exec] -Xlinker --start-group > /export/cruise/trunk/cc/projects/classlib/trunk/deploy/lib/libhycommon.a > /export/cruise/trunk/cc/projects/classlib/trunk/deploy/jdk/jre/bin/libhyprt.so > /export/cruise/trunk/cc/projects/classlib/trunk/deploy/jdk/jre/bin/libhythr.so > /export/cruise/trunk/cc/projects/classlib/trunk/deploy/jdk/jre/bin/libhysig.so > -Xlinker --end-group \ > [exec] -o ../hytime -lc -lm -ldl \ > [exec] -Xlinker -z -Xlinker origin \ > [exec] -Xlinker -rpath -Xlinker \$ORIGIN/ \ > [exec] -Xlinker -rpath-link -Xlinker > /export/cruise/trunk/cc/projects/classlib/trunk/deploy/jdk/jre/bin > > -run-native-tests: > <Nothing was printed at least for 30 minute> > >
