JVM crash by creating VarHandle
Ty Young
youngty1997 at gmail.com
Sat Feb 1 23:26:53 UTC 2020
On 2/1/20 5:09 PM, Maurizio Cimadamore wrote:
>
> On 01/02/2020 23:01, Ty Young wrote:
>>
>> On 2/1/20 4:49 PM, Maurizio Cimadamore wrote:
>>>
>>> On 01/02/2020 12:31, Ty Young wrote:
>>>> MemoryHandles.varHandle(long.class, ByteOrder.nativeOrder());
>>> Hi Ty,
>>> thanks for reaching out - I assume you are on the foreign-jextract
>>> branch?
>>
>>
>> Yep. The build is right after the name() method was added to SystemABI.
>>
>>
>>> And also, is the above snippet enough to reproduce the crash for
>>> you? Or does it only happen sometimes, but not others?
>>
>>
>> It seems to only happen when accessing the struct field from a struct
>> that resides in memory. Never outside of an array.
>>
>>
>> Here is a Github Gist, if it helps any:
>> https://gist.github.com/BlueGoliath/307f60856afee04e218b759420a53fb7
>
> The stack trace you showed seems to point at a constructor somewhere:
>
> org.goliath.crosspoint.fields.NumberField.<init>
>
> so, the crash seems to happen outside of memory access - e.g. it
> happens on actual var handle creation. So I assume that the thing
> which actually fails is this?
>
> https://github.com/BlueGoliath/Crosspoint/blob/master/src/main/java/org/goliath/crosspoint/fields/NumberField.java#L29
>
Yep.
>
> Is there a repeatable way to call the NumberField constructor which
> will lead to the crash?
Got a Linux machine that has an Nvidia GPU? I've pushed local code to
Github. The bindings I'm working on right now are here:
https://github.com/BlueGoliath/GoliathBindings
I have a test class for testing the bindings within it, which shows the
problem:
https://github.com/BlueGoliath/GoliathBindings/blob/master/modules/org.goliath.bindings.nvml/src/main/java/org/goliath/bindings/nvml/main/Test.java
You can get the bindings to work on Windows(since NVML is
cross-platform) but you'll have to add the library to the path and
change the name string in nvml_h.java. I think it's just nvml.dll in
Windows.
>
> Maurizio
>
>>
>>
>>
>>>
>>> Thanks
>>> Maurizio
>>>
More information about the panama-dev
mailing list