NPE when rewriting stack trace

Maurizio Cimadamore maurizio.cimadamore at oracle.com
Wed Nov 27 13:19:42 UTC 2019


Actually, is this a dupe of

https://bugs.openjdk.java.net/browse/JDK-8210527

?

The fix looks identical in spirit.

Maurizio

On 27/11/2019 13:12, Maurizio Cimadamore wrote:
> Hi,
> I was experimenting with the Panama memory access API in jshell and I 
> got this:
>
>
> jshell> arr_elem_h.set(segment.baseAddress(), 4, 3);
> |  Exception java.lang.IndexOutOfBoundsException: Out of bound access 
> on segment MemorySegment{ id=0x60ec3cd3 limit: 40 }; new offset = 40; 
> new length = 8
> |        at MemorySegmentImpl.checkBounds (MemorySegmentImpl.java:201)
> |        at MemorySegmentImpl.checkRange (MemorySegmentImpl.java:180)
> |        at MemoryAddressImpl.checkAccess (MemoryAddressImpl.java:86)
> |        at VarHandleMemoryAddressAsDoubles.checkAddress 
> (VarHandleMemoryAddressAsDoubles.java:55)
> |        at VarHandleMemoryAddressAsDoubles.set0 
> (VarHandleMemoryAddressAsDoubles.java:80)
> |        at VarHandleMemoryAddressAsDoubles1/0x0000000800b9f440.set 
> (Unknown Source)
> |        at VarHandleGuards.guard_LII_V (VarHandleGuards.java:719)
> |        at (#9:1)
>
>
> The following patch (discussed with Jan) fixes it:
>
> http://cr.openjdk.java.net/~mcimadamore/panama/8234814_v3/src/jdk.jshell/share/classes/jdk/jshell/Eval.java.udiff.html 
>
>
> For now I've refrained from fixing this in Panama directly - as it 
> will probably be better to fix it more generally in the upstream JDK 
> (after all, we can have VarHandle or MethodHandle throwing exceptions 
> w/o Panama as well).
>
>
> If you want I can go ahead an file a bug for this
>
> Maurizio
>


More information about the kulla-dev mailing list