RFR 8191278: MappedByteBuffer bulk access memory failures are not handled gracefully
Jamsheed
jamsheed.c.m at oracle.com
Fri Mar 15 00:07:42 UTC 2019
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