RFR 8191278: MappedByteBuffer bulk access memory failures are not handled gracefully

Tobias Hartmann tobias.hartmann at oracle.com
Fri Mar 15 07:44:46 UTC 2019


Hi Jamsheed,

okay, that looks reasonable to me!

Best regards,
Tobias

On 15.03.19 01:07, Jamsheed wrote:
> Hi Tobias,
> 
> as a fix, for handling  the bugs in hand written assembly stubs, i will put checks like.[1]  instead
> of StubRoutines::contains(pc).
> 
> Best regards,
> 
> Jamsheed
> 
> [1]
> 
> bool StubRoutines::is_unsafe_copy(address pc) {
>     if ((pc > StubRoutines::_jbyte_disjoint_arraycopy && pc <
> StubRoutines::_arrayof_jbyte_disjoint_arraycopy) ||
>         (pc > StubRoutines::_jshort_disjoint_arraycopy && pc <
> StubRoutines::_arrayof_jshort_disjoint_arraycopy) ||
>         (pc > StubRoutines::_jint_disjoint_arraycopy && pc <
> StubRoutines::_arrayof_oop_disjoint_arraycopy)) {
>       return true;
>     }
>     return false;
>   }
> 
> PS: these code ranges are shared by others too.
> 
> On 14/03/19 8:46 PM, Jamsheed wrote:
>> Hi Tobias,
>>
>> On 14/03/19 1:58 PM, Tobias Hartmann wrote:
>>> Hi Jamsheed,
>>>
>>> On 14.03.19 02:29, Jamsheed wrote:
>>>> i will try to limit my checks to array copy stubs. will make changes and send it for review.
>>> Okay, if there's a simple way to do that. Otherwise, I'm fine with the current version of the fix.
>> either i should have separate code generated for unsafe copy. or setting/resetting
>> doing_unsafe_access before after unsafe_copy should do.
>>
>> Best regards,
>>
>> Jamsheed
>>>
>>> Best regards,
>>> Tobias


More information about the hotspot-dev mailing list