From: Markus H. <ma...@ti...> - 2011-07-14 20:50:27
|
Setting GC_finalize_on_demand to 1 does not change the behavior. Anything other I can try? Thanks, Markus Am 14.07.2011 um 22:24 schrieb Paul Poley: > My first inclination was to say this is something we're working on, but I was expecting to see pthread_mutex_lock in at least one of the stack traces. It could still be that issue, but it's not as apparent. > > As a TEMPORARY HACK (both of those words are important), you could try setting GC_finalize_on_demand to 1 as your program is starting up, but I must stress that is temporary. That by itself will give you a memory leak on any Objects with finalizers, but will garbage collect the rest. > > We are working on an issue where the garbage collector currently runs the finalizers in the same thread in which a new Object was allocated. That in turn allocates other Objects, causing either a blocking thread or an infinite loop, depending on the setup. > > Thanks, > Paul > > On Thu, Jul 14, 2011 at 2:52 PM, Markus Heberling <ma...@ti...> wrote: > Hi, > > My application triggers the BoehmGC stop the world collection, and the application hangs after that. If I am in debug mode I can see that a SIGUSR1 signal is received, but resuming the program doesn't do anything. I have attached all stack traces of all running threads at the moment the SUGUSR1 comes in. I am totally clueless here, since I don't have any knowledge of the threading and BoehmGC internals. This occurs while downloading a big file via the java socket API. After disabling the GC, the download works, but downloading with GC on, always hangs. > > Thread 7 is the download Thread. Thread 5 is a blocking UDP Socket that waits for incoming data. I tried to implement UDP support and reused stuff from apache harmony. Maybe I'm doing something wrong there, too... > > Would be great if anyone could poke me in the right direction, where to look for a solution... > > Anyway here are my stacktraces: > > Thread 1 > #0 0x906fcafa in mach_msg_trap () > #1 0x906fd267 in mach_msg () > #2 0x025e3d86 in __CFRunLoopServiceMachPort () > #3 0x02540e74 in __CFRunLoopRun () > #4 0x02540840 in CFRunLoopRunSpecific () > #5 0x02540761 in CFRunLoopRunInMode () > #6 0x02ca91c4 in GSEventRunModal () > #7 0x02ca9289 in GSEventRun () > #8 0x01396c93 in UIApplicationMain () > #9 0x00113ff5 in org_xmlvm_iphone_UIApplication_main___java_lang_String_1ARRAY_java_lang_Class_java_lang_Class (n1=0x0, n2=0x0, n3=0x7595de0) at /Users/markus/Documents/workspace/com.arindal/client/mobile/iphone/target/dist/../build/xcode/src/app/org_xmlvm_iphone_UIApplication.m:636 > #10 0x003719ca in com_arindal_client_mobile_iphone_ArindalMain_main___java_lang_String_1ARRAY (n1=0x0) at /Users/markus/Documents/workspace/com.arindal/client/mobile/iphone/target/dist/../build/xcode/src/app/com_arindal_client_mobile_iphone_ArindalMain.m:213 > #11 0x00371a0e in main (argc=1, argv=0xbffff0a0) at /Users/markus/Documents/workspace/com.arindal/client/mobile/iphone/target/dist/../build/xcode/src/app/com_arindal_client_mobile_iphone_ArindalMain.m:231 > > Thread 3 > #0 0x90723382 in kevent () > #1 0x0283df36 in _dispatch_mgr_invoke () > #2 0x0283e333 in _dispatch_queue_invoke () > #3 0x0283e593 in _dispatch_worker_thread2 () > #4 0x90722781 in _pthread_wqthread () > #5 0x907225c6 in start_wqthread () > > Thread 4 WebThread > #0 0x906fcafa in mach_msg_trap () > #1 0x906fd267 in mach_msg () > #2 0x025e3d86 in __CFRunLoopServiceMachPort () > #3 0x02540e74 in __CFRunLoopRun () > #4 0x02540840 in CFRunLoopRunSpecific () > #5 0x02540761 in CFRunLoopRunInMode () > #6 0x04505903 in RunWebThread () > #7 0x9072a259 in _pthread_start () > #8 0x9072a0de in thread_start () > > Thread 5 > #0 0x0041dc7c in selectRead (hysocketP=0x756a9d8, uSecTime=-1, accept=1) at /Users/markus/Documents/workspace/com.arindal/client/mobile/iphone/target/dist/../build/xcode/src/app/native_org_apache_harmony_luni_platform_OSNetworkSystem.m:206 > #1 0x0041eb6b in org_apache_harmony_luni_platform_OSNetworkSystem_receiveDatagramDirect___java_io_FileDescriptor_java_net_DatagramPacket_long_int_int_int_boolean (me=0x755fd10, n1=0xcfea2b8, n2=0xcec4760, n3=217455616, n4=0, n5=1024, n6=0, n7=0) at /Users/markus/Documents/workspace/com.arindal/client/mobile/iphone/target/dist/../build/xcode/src/app/native_org_apache_harmony_luni_platform_OSNetworkSystem.m:738 > #2 0x0041ea1f in org_apache_harmony_luni_platform_OSNetworkSystem_receiveDatagram___java_io_FileDescriptor_java_net_DatagramPacket_byte_1ARRAY_int_int_int_boolean (me=0x755fd10, n1=0xcfea2b8, n2=0xcec4760, n3=0xcfea108, n4=0, n5=1024, n6=0, n7=0) at /Users/markus/Documents/workspace/com.arindal/client/mobile/iphone/target/dist/../build/xcode/src/app/native_org_apache_harmony_luni_platform_OSNetworkSystem.m:708 > #3 0x0035e8d2 in org_apache_harmony_luni_net_PlainDatagramSocketImpl_receive___java_net_DatagramPacket (me=0xcebdc80, n1=0xcec4760) at /Users/markus/Documents/workspace/com.arindal/client/mobile/iphone/target/dist/../build/xcode/src/app/org_apache_harmony_luni_net_PlainDatagramSocketImpl.m:1436 > #4 0x003e8957 in java_net_DatagramSocket_receive___java_net_DatagramPacket (me=0xcfc3370, n1=0xcec4760) at /Users/markus/Documents/workspace/com.arindal/client/mobile/iphone/target/dist/../build/xcode/src/app/java_net_DatagramSocket.m:1869 > #5 0x000b48e4 in com_arindal_client_net_UDPHandler_1_run__ (me=0xcf1e940) at /Users/markus/Documents/workspace/com.arindal/client/mobile/iphone/target/dist/../build/xcode/src/app/com_arindal_client_net_UDPHandler_1.m:286 > #6 0x000611aa in java_lang_Thread_run0___long (me=0x7593ea0, n1=-1339224064) at /Users/markus/Documents/workspace/com.arindal/client/mobile/iphone/target/dist/../build/xcode/src/app/java_lang_Thread.m:2451 > #7 0x0041c8cc in threadRunner (me=0x7593ea0) at /Users/markus/Documents/workspace/com.arindal/client/mobile/iphone/target/dist/../build/xcode/src/app/native_java_lang_Thread.m:27 > #8 0x0043b62d in GC_inner_start_routine (sb=0xb02d0f58, arg=0xcf1e920) at /Users/markus/Documents/workspace/com.arindal/client/mobile/iphone/target/dist/../build/xcode/src/lib/boehmgc/pthread_start.c:59 > #9 0x00439eb9 in GC_call_with_stack_base (fn=0x43b5c6 <GC_inner_start_routine>, arg=0xcf1e920) at /Users/markus/Documents/workspace/com.arindal/client/mobile/iphone/target/dist/../build/xcode/src/lib/boehmgc/misc.c:1491 > #10 0x0043cd24 in GC_start_routine (arg=0xcf1e920) at /Users/markus/Documents/workspace/com.arindal/client/mobile/iphone/target/dist/../build/xcode/src/lib/boehmgc/pthread_support.c:1415 > #11 0x9072a259 in _pthread_start () > #12 0x9072a0de in thread_start () > > Thread 6 > #0 0x000b3f86 in com_arindal_client_net_UDPHandler_2_run__ (me=0xcf1e5c0) at /Users/markus/Documents/workspace/com.arindal/client/mobile/iphone/target/dist/../build/xcode/src/app/com_arindal_client_net_UDPHandler_2.m:239 > #1 0x000611aa in java_lang_Thread_run0___long (me=0x7593e58, n1=-1338691584) at /Users/markus/Documents/workspace/com.arindal/client/mobile/iphone/target/dist/../build/xcode/src/app/java_lang_Thread.m:2451 > #2 0x0041c8cc in threadRunner (me=0x7593e58) at /Users/markus/Documents/workspace/com.arindal/client/mobile/iphone/target/dist/../build/xcode/src/app/native_java_lang_Thread.m:27 > #3 0x0043b62d in GC_inner_start_routine (sb=0xb0352f58, arg=0xcf1e5a0) at /Users/markus/Documents/workspace/com.arindal/client/mobile/iphone/target/dist/../build/xcode/src/lib/boehmgc/pthread_start.c:59 > #4 0x00439eb9 in GC_call_with_stack_base (fn=0x43b5c6 <GC_inner_start_routine>, arg=0xcf1e5a0) at /Users/markus/Documents/workspace/com.arindal/client/mobile/iphone/target/dist/../build/xcode/src/lib/boehmgc/misc.c:1491 > #5 0x0043cd24 in GC_start_routine (arg=0xcf1e5a0) at /Users/markus/Documents/workspace/com.arindal/client/mobile/iphone/target/dist/../build/xcode/src/lib/boehmgc/pthread_support.c:1415 > #6 0x9072a259 in _pthread_start () > #7 0x9072a0de in thread_start () > > Thread 7 > #0 0x907c343a in sem_wait$UNIX2003 () > #1 0x0043bcb8 in GC_stop_world () at /Users/markus/Documents/workspace/com.arindal/client/mobile/iphone/target/dist/../build/xcode/src/lib/boehmgc/pthread_stop_world.c:505 > #2 0x004286c8 in GC_stopped_mark (stop_func=0x427b1d <GC_never_stop_func>) at /Users/markus/Documents/workspace/com.arindal/client/mobile/iphone/target/dist/../build/xcode/src/lib/boehmgc/alloc.c:606 > #3 0x0042839f in GC_try_to_collect_inner (stop_func=0x427b1d <GC_never_stop_func>) at /Users/markus/Documents/workspace/com.arindal/client/mobile/iphone/target/dist/../build/xcode/src/lib/boehmgc/alloc.c:458 > #4 0x0042985d in GC_collect_or_expand (needed_blocks=1, ignore_off_page=0, retry=0) at /Users/markus/Documents/workspace/com.arindal/client/mobile/iphone/target/dist/../build/xcode/src/lib/boehmgc/alloc.c:1234 > #5 0x00429b5e in GC_allocobj (gran=3, kind=1) at /Users/markus/Documents/workspace/com.arindal/client/mobile/iphone/target/dist/../build/xcode/src/lib/boehmgc/alloc.c:1321 > #6 0x00433a98 in GC_generic_malloc_inner (lb=20, k=1) at /Users/markus/Documents/workspace/com.arindal/client/mobile/iphone/target/dist/../build/xcode/src/lib/boehmgc/malloc.c:126 > #7 0x00433c35 in GC_generic_malloc (lb=20, k=1) at /Users/markus/Documents/workspace/com.arindal/client/mobile/iphone/target/dist/../build/xcode/src/lib/boehmgc/malloc.c:166 > #8 0x00434164 in GC_malloc (lb=20) at /Users/markus/Documents/workspace/com.arindal/client/mobile/iphone/target/dist/../build/xcode/src/lib/boehmgc/malloc.c:276 > #9 0x0000f5f8 in __NEW_org_xmlvm_runtime_XMLVMArray () at /Users/markus/Documents/workspace/com.arindal/client/mobile/iphone/target/dist/../build/xcode/src/app/org_xmlvm_runtime_XMLVMArray.m:305 > #10 0x0041c427 in org_xmlvm_runtime_XMLVMArray_createSingleDimensionWithData___java_lang_Class_int_java_lang_Object (n1=0x7561d70, n2=11, n3=0xce695a0) at /Users/markus/Documents/workspace/com.arindal/client/mobile/iphone/target/dist/../build/xcode/src/app/native_org_xmlvm_runtime_XMLVMArray.m:111 > #11 0x0041c3e9 in org_xmlvm_runtime_XMLVMArray_createSingleDimension___java_lang_Class_int (n1=0x7561d70, n2=11) at /Users/markus/Documents/workspace/com.arindal/client/mobile/iphone/target/dist/../build/xcode/src/app/native_org_xmlvm_runtime_XMLVMArray.m:104 > #12 0x00426579 in XMLVMArray_createSingleDimension (type=0x7561d70, size=11) at /Users/markus/Documents/workspace/com.arindal/client/mobile/iphone/target/dist/../build/xcode/src/lib/iphone/xmlvm.m:267 > #13 0x003ef484 in java_lang_Integer_toString___int (n1=2695203) at /Users/markus/Documents/workspace/com.arindal/client/mobile/iphone/target/dist/../build/xcode/src/app/java_lang_Integer.m:1742 > #14 0x000bbfdf in java_lang_String_valueOf___int (n1=2695203) at /Users/markus/Documents/workspace/com.arindal/client/mobile/iphone/target/dist/../build/xcode/src/app/java_lang_String.m:4377 > #15 0x0037a8cb in java_io_PrintStream_println___int (me=0x7590fe0, n1=2695203) at /Users/markus/Documents/workspace/com.arindal/client/mobile/iphone/target/dist/../build/xcode/src/app/java_io_PrintStream.m:1707 > #16 0x0007aed5 in com_arindal_client_gui_GameView_2_setSubTaskValue___int (me=0xcfc3050, n1=2695203) at /Users/markus/Documents/workspace/com.arindal/client/mobile/iphone/target/dist/../build/xcode/src/app/com_arindal_client_gui_GameView_2.m:428 > #17 0x001e0f55 in com_arindal_client_controller_UpdateController_DownloadThread_run__ (me=0xcf34d20) at /Users/markus/Documents/workspace/com.arindal/client/mobile/iphone/target/dist/../build/xcode/src/app/com_arindal_client_controller_UpdateController_DownloadThread.m:604 > #18 0x003df4c8 in com_arindal_client_controller_UpdateController_fetchAndDecodeFile___java_lang_String_java_lang_String_com_arindal_client_share_dtsfile_KeyFile (me=0xcf56540, n1=0xce18570, n2=0xce18420, n3=0xcf0cc10) at /Users/markus/Documents/workspace/com.arindal/client/mobile/iphone/target/dist/../build/xcode/src/app/com_arindal_client_controller_UpdateController.m:617 > #19 0x003defcd in com_arindal_client_controller_UpdateController_updateFull___java_lang_String_com_arindal_client_share_dtsfile_KeyFile_java_lang_String_int (me=0xcf56540, n1=0xd029618, n2=0xcf0cc10, n3=0xd05fae0, n4=711) at /Users/markus/Documents/workspace/com.arindal/client/mobile/iphone/target/dist/../build/xcode/src/app/com_arindal_client_controller_UpdateController.m:484 > #20 0x003decba in com_arindal_client_controller_UpdateController_updateFile___java_lang_String_com_arindal_client_share_dtsfile_KeyFile_java_lang_String_int_int (me=0xcf56540, n1=0xd029618, n2=0xcf0cc10, n3=0xd05fae0, n4=0, n5=711) at /Users/markus/Documents/workspace/com.arindal/client/mobile/iphone/target/dist/../build/xcode/src/app/com_arindal_client_controller_UpdateController.m:400 > #21 0x00086b8a in com_arindal_client_gui_GameView_3_run__ (me=0xd053330) at /Users/markus/Documents/workspace/com.arindal/client/mobile/iphone/target/dist/../build/xcode/src/app/com_arindal_client_gui_GameView_3.m:298 > #22 0x000611aa in java_lang_Thread_run0___long (me=0x7593c60, n1=-1341648896) at /Users/markus/Documents/workspace/com.arindal/client/mobile/iphone/target/dist/../build/xcode/src/app/java_lang_Thread.m:2451 > #23 0x0041c8cc in threadRunner (me=0x7593c60) at /Users/markus/Documents/workspace/com.arindal/client/mobile/iphone/target/dist/../build/xcode/src/app/native_java_lang_Thread.m:27 > #24 0x0043b62d in GC_inner_start_routine (sb=0xb0080f58, arg=0xcf56650) at /Users/markus/Documents/workspace/com.arindal/client/mobile/iphone/target/dist/../build/xcode/src/lib/boehmgc/pthread_start.c:59 > #25 0x00439eb9 in GC_call_with_stack_base (fn=0x43b5c6 <GC_inner_start_routine>, arg=0xcf56650) at /Users/markus/Documents/workspace/com.arindal/client/mobile/iphone/target/dist/../build/xcode/src/lib/boehmgc/misc.c:1491 > #26 0x0043cd24 in GC_start_routine (arg=0xcf56650) at /Users/markus/Documents/workspace/com.arindal/client/mobile/iphone/target/dist/../build/xcode/src/lib/boehmgc/pthread_support.c:1415 > #27 0x9072a259 in _pthread_start () > #28 0x9072a0de in thread_start () > > > ------------------------------------------------------------------------------ > AppSumo Presents a FREE Video for the SourceForge Community by Eric > Ries, the creator of the Lean Startup Methodology on "Lean Startup > Secrets Revealed." This video shows you how to validate your ideas, > optimize your ideas and identify your business strategy. > http://p.sf.net/sfu/appsumosfdev2dev > _______________________________________________ > xmlvm-users mailing list > xml...@li... > https://lists.sourceforge.net/lists/listinfo/xmlvm-users > > |