RFR: 8036128 Remove deprecated VM flag UseVMInterruptibleIO

frederic parain frederic.parain at oracle.com
Fri Mar 14 12:05:55 UTC 2014


Dan, Coleen,

Thank you for the review.

Fred

On 07/03/2014 18:40, Coleen Phillimore wrote:
>
> I agree.  This looks great.   Thank you for doing this!
> Coleen
>
> On 3/7/14 12:29 PM, Daniel D. Daugherty wrote:
>> > http://cr.openjdk.java.net/~fparain/8036128/webrev.00/
>>
>> src/share/vm/runtime/globals.hpp
>>     No comments.
>>
>> src/share/vm/runtime/arguments.cpp
>>     No comments.
>>
>> src/os/solaris/vm/os_solaris.hpp
>>     No comments.
>>
>> src/os/solaris/vm/os_solaris.inline.hpp
>>     No comments.
>>
>> src/os/solaris/vm/osThread_solaris.hpp
>>     No comments.
>>
>> src/os/solaris/vm/os_solaris.cpp
>>     No comments other than it looks so much cleaner now!
>>
>> src/os/solaris/vm/osThread_solaris.cpp
>>     No comments.
>>
>> src/share/vm/services/runtimeService.hpp
>>     No comments.
>>
>> src/share/vm/services/runtimeService.cpp
>>     No comments.
>>
>> Nicely done! Thumbs up!
>>
>> Dan
>>
>>
>> On 3/6/14 9:12 AM, frederic parain wrote:
>>> Greetings,
>>>
>>> The UseVMInterruptibleIO flag removal has been
>>> scheduled a long time ago:
>>> https://bugs.openjdk.java.net/browse/JDK-4385444
>>>
>>> Now, it's time to effectively remove this flag and
>>> its associated code.
>>>
>>> Removing this feature includes removing all the
>>> macros used to deal with interruptible I/Os, which
>>> could make the reading of the webrev hard and painful.
>>> I conservatively preserved the asserts that were
>>> inserted by the INTERRUPTIBLE macros, with one
>>> notable exception for os::read(). The original
>>> asserts checked that the current ThreadState
>>> was not _thread_in_native nor _thread_blocked.
>>> I changed it into an assert checking that the
>>> current thread state is _thread_in_vm. The
>>> rational for that is that the only real usage
>>> of os::read() on Solaris is in the
>>> ClassPathDirEntry::open_stream() method, which
>>> is always called with ThreadState ==_thread_in_vm.
>>> This change makes the TreadStateTransition simpler
>>> and avoid having to store the previous ThreadState.
>>>
>>> This choice could be revisited once the rules
>>> for ThreadStateTransition around system calls
>>> when ThreadState is _thread_in_vm are clarified
>>> (Solaris is currently the only platform doing
>>> this kind of transition for os::read()).
>>>
>>> The CR:
>>> https://bugs.openjdk.java.net/browse/JDK-8036128
>>>
>>> The webrev:
>>> http://cr.openjdk.java.net/~fparain/8036128/webrev.00/
>>>
>>> Tested with vm.quick.testlist and JPRT hotspot job.
>>>
>>> Thanks,
>>>
>>> Fred
>>>
>>
>

-- 
Frederic Parain - Oracle
Grenoble Engineering Center - France
Phone: +33 4 76 18 81 17
Email: Frederic.Parain at oracle.com


More information about the hotspot-runtime-dev mailing list