On Jul 5, 4:53 am, Stephen Kell <sr...@srcf.ucam.org> wrote:
> If I break the dalvikvm in gdb before it does
> Check_CallStaticVoidMethodV,
> then attach jdb and resume both, I get the following.
>
> E/dalvikvm(26824): ASSERT FAILED (dalvik/vm/Thread.c:3160): oldStatus !
> = THREAD_RUNNING

You may be able to just remove the assertion for your purposes.

For some reason a thread in the "running" state is trying to change to
"running", i.e. it's a do-nothing operation that just wastes time.  It
also represents a potential problem in that a bit of code that was
assuming it was in some other state has made incorrect assumptions,
which could lead to a hang or correctness problems (e.g. it thought it
was in "vmwait" so blocking synchronization ops are okay).  The gdb
backtrace at the point of failure might be interesting, to see which
bit of code is doing the redundant update.

-- 
unsubscribe: android-porting+unsubscr...@googlegroups.com
website: http://groups.google.com/group/android-porting

Reply via email to