RR, S: 7162400 Intermittent java.io.IOException: Bad file number during HotSpotVirtualMachine.executeCommand

Dmitry Samersoff Dmitry.Samersoff at oracle.com
Wed Aug 22 00:03:03 PDT 2012


David,

> In this case as I understand it between checking the fd for the door
> call and making the door call, someone can call detach, and so we get
> EBADF. The detach is synchronized on this, so the fix moves the
> enqueue inside the sync block so that it has to complete before
> anyone can call detach.

Exactly! Thank you very much.
-Dmitry

On 2012-08-22 05:26, David Holmes wrote:
> On 22/08/2012 5:23 AM, Alan Bateman wrote:
>> On 21/08/2012 20:05, Dmitry Samersoff wrote:
>>> Hi Everybody,
>>>
>>> Please review small fix.
>>>
>>> http://cr.openjdk.java.net/~dsamersoff/7162400/webrev.02/
>>>
>>> -Dmitry
>>>
>> Can you explain the issue a bit further? Looking at the code I can see
>> there may be an issue with asynchronous detach (my default, I didn't get
>> that right in the original implementation) but I can't tell if this is
>> what you are trying to address now.
> 
> I was going to make a similar request. Some context for the problem and
> solution makes reviewing a lot easier.
> 
> In this case as I understand it between checking the fd for the door
> call and making the door call, someone can call detach, and so we get
> EBADF. The detach is synchronized on this, so the fix moves the enqueue
> inside the sync block so that it has to complete before anyone can call
> detach.
> 
> David
> -----


-- 
Dmitry Samersoff
Java Hotspot development team, SPB04
* There will come soft rains ...




More information about the serviceability-dev mailing list