On 7 February 2013 16:08, Stefan Hajnoczi <stefa...@gmail.com> wrote: > On Thu, Feb 7, 2013 at 3:12 PM, harryxiyou <harryxi...@gmail.com> wrote: >> The above debug info show jni will be used in coroutine. I do not >> familay with coroutine, however I guess if coroutine not allow to >> spawn a new thread? ,or it's stack corrupte with java jvm stack ? , >> For when I modify bdrv_create out of coroutine , it can work - connect >> to hdfs without any probleme. > > Coroutines are allowed to create new threads. > > Coroutine stacks do not grow automatically but they have 1 MB, which > should be enough. > > There are a number of other things that could be wrong here - > missing/incorrect thread synchronization, the shared libraries you are > importing messing with the environment (signal masks, signal > handlers), etc.
I would suggest that trying to start an entire JVM from within QEMU is likely to be brittle at best even if you do get it to work, because you've got two big complicated codebases which will probably squabble over threads, signal handling, etc etc, because they weren't intended to work as part of some other large process. -- PMM