Thanks very much Allan for the debugging and the patch!<div><br></div><div>Thinking about it, I think we should get rid of these variables in the JavaClass class. I plan on doing this soon.</div><div><br></div><div>Cheers,</div>
<div>Nicolas<br><br><div class="gmail_quote">On Thu, Sep 23, 2010 at 3:09 AM, Allan Tong <span dir="ltr"><<a href="mailto:actong88@gmail.com">actong88@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
Revision 111399 breaks AOT compiled code. The thin lock was removed<br>
from the LLVM class structure, but the new lock and condition variable<br>
were not added. When loading the AOT compiled class, the lock and<br>
condition members would access memory outside of the object. Trying<br>
to run a hello world with a precompiled libvmjc.so resulted in an<br>
assertion in the pthread library since the mutex contained garbage<br>
data:<br>
<br>
j3: tpp.c:63: __pthread_tpp_change_priority: Assertion `new_prio == -1<br>
|| (new_prio >= __sched_fifo_min_prio && new_prio <=<br>
__sched_fifo_max_prio)' failed.<br>
<br>
The attached patch should fix the issue. I modeled the pthread<br>
structures as byte arrays, and while I believe the alignment should be<br>
correct, I'm not sure if there isn't some better way of doing this.<br>
<br>
Also note that the patch does not include the regenerated configure<br>
script. Only the changes to <a href="http://configure.ac" target="_blank">configure.ac</a> are included.<br>
<font color="#888888"><br>
- Allan<br>
</font><br>_______________________________________________<br>
vmkit-commits mailing list<br>
<a href="mailto:vmkit-commits@cs.uiuc.edu">vmkit-commits@cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/vmkit-commits" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/vmkit-commits</a><br>
<br></blockquote></div><br></div>