[Sablevm-bugs] [ sablevm-Bugs-688936 ] Missing call to _svmf_set_current_env
Brought to you by:
egagnon
From: SourceForge.net <no...@so...> - 2003-03-16 03:29:44
|
Bugs item #688936, was opened at 2003-02-18 14:22 You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=105523&aid=688936&group_id=5523 Category: Execution Problem Group: SableVM >Status: Closed >Resolution: Fixed Priority: 5 Submitted By: Etienne M. Gagnon (egagnon) Assigned to: Etienne M. Gagnon (egagnon) Summary: Missing call to _svmf_set_current_env Initial Comment: While starting a new thread (in _svmf_thread_start), _svmf_set_current_env should be called to store the _svmt_JNIEnv pointer in the a thread-specific global variable. As it stands, now, when a signal handler is activated on any thread other than the main thread, SableVM aborts complaining about an unhandled signal in error.c line 170. ---------------------------------------------------------------------- Comment By: Chris Pickett (ihatemcgill) Date: 2003-02-25 00:14 Message: Logged In: YES user_id=630752 Suggested fix: change _svmf_thread_start in thread.c from containing: env->thread.pthread = pthread_self (); _svmm_invoke_static_virtualmachine_runthread (env); to env->thread.pthread = pthread_self (); + _svmf_set_current_env (env); _svmm_invoke_static_virtualmachine_runthread (env); This needs testing. The point is to fix multiprocessor support but I can't currently get SableVM working on a multiprocessor. P.S. My id / general online alias is just an old stand-by from when I was an undergraduate at McGill in biochemistry ;) ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=105523&aid=688936&group_id=5523 |