<div dir="ltr">Great. Thanks!</div><div class="gmail_extra"><br><br><div class="gmail_quote">On Fri, Jun 28, 2013 at 12:02 AM, Jon Masamitsu <span dir="ltr"><<a href="mailto:jon.masamitsu@oracle.com" target="_blank">jon.masamitsu@oracle.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hiroshi,<br>
<br>
I've imported the patches and started some testing.<br>
We've got it from here.<br>
<br>
Thanks.<br>
<br>
Jon<div class="im"><br>
<br>
On 6/27/2013 4:06 PM, Hiroshi Yamauchi wrote:<br>
</div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">
OK. Here are updated webrevs that have been rebased to the latest<br>
hotspot-gc:<br>
<br>
<a href="http://cr.openjdk.java.net/~hiroshi/webrevs/cmsparinitmark/webrev.03/" target="_blank">http://cr.openjdk.java.net/~<u></u>hiroshi/webrevs/<u></u>cmsparinitmark/webrev.03/</a><br>
<a href="http://cr.openjdk.java.net/~hiroshi/webrevs/edenchunks/webrev.02/" target="_blank">http://cr.openjdk.java.net/~<u></u>hiroshi/webrevs/edenchunks/<u></u>webrev.02/</a><br>
<br>
These were created from uncommitted changes in my local repositories.<br>
<br>
With regard to the order to apply these patches, I think they can go in<br>
either order, but applying cmsparinitmark first and edenchunks second<br>
worked for me.<br>
<br>
Let me know if there's more to do.<br>
<br>
Thanks.<br>
<br>
<br>
<br>
On Wed, Jun 26, 2013 at 1:02 PM, Jon Masamitsu <<a href="mailto:jon.masamitsu@oracle.com" target="_blank">jon.masamitsu@oracle.com</a>><u></u>wrote:<br>
<br>
</div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">
Hiroshi,<br>
<br>
Could you update your repositories to the latest hotspot-gc and<br>
send me the patches? I'll import them into a repository and<br>
push it (if I don't see any further comments).<br>
<br>
Thanks.<br>
<br>
Jon<br>
<br>
<br>
On 6/25/2013 7:05 PM, Hiroshi Yamauchi wrote:<br>
<br>
</div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">
Here's an updated webrev:<br>
</div><a href="http://cr.openjdk.java.net/~**hiroshi/webrevs/edenchunks/**webrev.01/" target="_blank">http://cr.openjdk.java.net/~**<u></u>hiroshi/webrevs/edenchunks/**<u></u>webrev.01/</a><<a href="http://cr.openjdk.java.net/~hiroshi/webrevs/edenchunks/webrev.01/" target="_blank">http://cr.openjdk.<u></u>java.net/~hiroshi/webrevs/<u></u>edenchunks/webrev.01/</a>><div class="im">
<br>
<br>
Let me know if there are more comments.<br>
<br>
<br>
On Fri, Jun 21, 2013 at 3:50 PM, Jon Masamitsu <<a href="mailto:jon.masamitsu@oracle.com" target="_blank">jon.masamitsu@oracle.com</a>><br></div>
**wrote:<div class="im"><br>
<br>
Yes, remove the assert.<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Jon<br>
<br>
<br>
On 6/19/2013 10:39 AM, Hiroshi Yamauchi wrote:<br>
<br>
Now, if I comment out the assert, it seems to work (though I haven't<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
tested it very long.) This may be good if in fact sneak won't happen<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
with try_lock()/unlock() only.<br>
<br>
I haven't tried this, but another potential approach might be to give<br>
up sampling (just return) if it's called by the VM thread at a<br>
safepoint, though the VM thread might allocate a large object, and the<br>
evenness of the sample distribution could suffer to some extent.<br>
<br>
I'd just remove the assert :)<br>
</blockquote>
As already mentioned multiple times, try_lock() does never actually<br>
block the thread, so the vm thread cannot actually sneak, as you<br>
already<br>
noticed in your question to David, and he confirmed. The guarded code<br>
can also never block, it's just a few assignments.<br>
<br>
Removing the assert sounds good to me.<br>
<br>
</blockquote>
Jon, what do you think?<br>
<br>
<br>
<br>
</blockquote></blockquote></div></blockquote></blockquote></blockquote>
<br>
</blockquote></div><br></div>