Ha On 09/10/2015 02:17 AM, David Holmes wrote: > On 10/09/2015 12:01 AM, Andrew Haley wrote: >> On 09/09/2015 02:55 PM, David M. Lloyd wrote: >>> On 09/09/2015 08:17 AM, Andrew Haley wrote: >>>> On 09/09/2015 02:13 PM, David M. Lloyd wrote: >>>>> How would you hook into the safepoint to perform the unmapping? You'd >>>>> have to wait for all threads to arrive at safepoints, wouldn't you? >>>> >>>> Yes. That happens in the VM already, e.g. when we need to revoke the >>>> bias of a lock. It's a well-established mechanism. >>> >>> Could you extend the technique to other native resources as well? >> >> Yes, but of course there will be some back-pressure from HotSpot >> developers: it requires changes to the VM, and you have to be >> extremely careful not to cause a deadlock. > > Adding a new JVM_* function that requests a safepoint VM operation be > executed is not a major concern in my opinion**. Of more of a concern is > the cost of doing a stop-the-world safepoint in the kinds of > environments being described. How frequently are these unmap operations > needed?
That's an interesting point. I wonder if it might make sense to piggyback on a safepoint which would have happened anyway. But having said that, we seem to be quite happy to safepoint for biased lock revocation and all manner of other things. Andrew.